:root{--bg:#f4f2f9;--surface:#ffffff9e;--surface-2:#ece8f58c;--border:#ddd7ea;--text:#211f2e;--text-muted:#6d6880;--violet:#6d54d6;--violet-soft:#efeafb;--blue:#4f8ef7;--gradient:linear-gradient(135deg, var(--violet), var(--blue));--shadow-sm:0 1px 2px #1e143c0f;--shadow-md:0 10px 30px #1e143c1a;--glass-blur:20px;--glass-border:#fff9;--glass-focus-border:#6d54d68c;--glass-shadow:0 8px 32px #1e143c24;--glass-blob-1:#6d54d647;--glass-blob-2:#4f8ef73d;--scrollbar-thumb:#6d54d647;--scrollbar-thumb-hover:#6d54d680;--danger:#b83227;--danger-bg:#fbe2dd;--danger-strong:#d1453a;--safe:#2f7a4f;--safe-bg:#e0f2e6;--warn:#8a590f;--warn-bg:#f5e6c8;--on-color:#fff;--amber:#f2b705;--amber-light:#fd6;--fs-xs:.72rem;--fs-sm:.8rem;--fs-md:.88rem;--fs-lg:1rem;--fs-xl:1.15rem;--fs-2xl:1.35rem;--r-xs:4px;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-xl:16px;--r-pill:999px;--sans:"Noto Sans KR", "Pretendard", system-ui, -apple-system, sans-serif;--display:"Rajdhani", var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#121121;--surface:#1c1a2b99;--surface-2:#2421388c;--border:#332e4a;--text:#ece9f7;--text-muted:#9992b3;--violet:#9384f2;--violet-soft:#292347;--blue:#6ea8ff;--shadow-sm:0 1px 2px #0006;--shadow-md:0 10px 30px #0006;--glass-blur:20px;--glass-border:#ffffff1a;--glass-focus-border:#9384f299;--glass-shadow:0 8px 32px #00000073;--glass-blob-1:#9384f23d;--glass-blob-2:#6ea8ff2e;--scrollbar-thumb:#9384f24d;--scrollbar-thumb-hover:#9384f28c;--danger:#ef8478;--danger-bg:#3a231f;--danger-strong:#d1453a;--safe:#7bcf9c;--safe-bg:#1f3428;--warn:#e0b656;--warn-bg:#3a2f18}}:root[data-theme=dark]{--bg:#121121;--surface:#1c1a2b99;--surface-2:#2421388c;--border:#332e4a;--text:#ece9f7;--text-muted:#9992b3;--violet:#9384f2;--violet-soft:#292347;--blue:#6ea8ff;--shadow-sm:0 1px 2px #0006;--shadow-md:0 10px 30px #0006;--glass-blur:20px;--glass-border:#ffffff1a;--glass-focus-border:#9384f299;--glass-shadow:0 8px 32px #00000073;--glass-blob-1:#9384f23d;--glass-blob-2:#6ea8ff2e;--scrollbar-thumb:#9384f24d;--scrollbar-thumb-hover:#9384f28c;--danger:#ef8478;--danger-bg:#3a231f;--danger-strong:#d1453a;--safe:#7bcf9c;--safe-bg:#1f3428}*{box-sizing:border-box}html,body{margin:0;padding:0}html{overflow-x:hidden}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.5;position:relative;overflow-x:hidden}body:before,body:after{content:"";z-index:-1;pointer-events:none;filter:blur(90px);border-radius:50%;position:fixed}body:before{background:var(--glass-blob-1);width:70vmax;height:70vmax;top:-20vmax;left:-18vmax}body:after{background:var(--glass-blob-2);width:74vmax;height:74vmax;bottom:-24vmax;right:-18vmax}#root{min-height:100svh;position:relative}#root:before{content:"";z-index:-1;pointer-events:none;filter:blur(90px);background:var(--glass-blob-1);border-radius:50%;width:60vmax;height:60vmax;position:fixed;top:30vh;right:-22vmax}h1,h2,h3{font-family:var(--display);letter-spacing:.01em;margin:0;font-weight:700}button{font-family:inherit}:focus-visible{outline:2px solid var(--violet);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}@media (width<=760px){input,select,textarea{font-size:16px!important}}:where(button,a,summary,select,input,textarea,[role=tab],[tabindex]):focus-visible{outline:2px solid var(--violet);outline-offset:2px}.toggle-pill{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);width:fit-content;max-width:100%;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;align-items:center;padding:.2rem .55rem;font-weight:600;line-height:1.35;display:flex;position:relative}.toggle-pill:hover{border-color:var(--violet);color:var(--violet)}.toggle-pill:has(input:checked){border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}.toggle-pill:has(input:disabled){opacity:.5;cursor:not-allowed;border-color:var(--border);background:var(--surface-2);color:var(--text-muted)}.toggle-pill:has(input:focus-visible){outline:2px solid var(--violet);outline-offset:1px}.toggle-pill input{opacity:0;cursor:inherit;margin:0;position:absolute;inset:0}@media (pointer:coarse){:where(.tap-target,.tap-targets button){position:relative}:where(.tap-target,.tap-targets button):before{content:"";position:absolute;inset:-8px -2px}}@media (prefers-reduced-motion:reduce){:root{--reduced-transition:80ms}*,:before,:after{transition-duration:var(--reduced-transition)!important;scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.sidebar{height:100vh;width:calc(64px + env(safe-area-inset-left,0px));background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-right:1px solid var(--glass-border);padding:1.5rem 1rem 1.5rem calc(1rem + env(safe-area-inset-left,0px));z-index:20;flex-direction:column;flex-shrink:0;gap:2rem;transition:width .22s cubic-bezier(.4,0,.2,1),box-shadow .22s;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar.is-expanded{width:calc(220px + env(safe-area-inset-left,0px));box-shadow:0 8px 28px #14102824}.sidebar-logo{align-items:center;gap:.6rem;padding:0;display:flex}.sidebar-logo-mark{border-radius:var(--r-sm);background:var(--gradient);flex-shrink:0;width:30px;height:30px}.sidebar-logo-text{font-family:var(--display);font-weight:700;font-size:var(--fs-md);letter-spacing:.04em;background:var(--gradient);color:#0000;white-space:nowrap;opacity:0;-webkit-background-clip:text;background-clip:text;flex-direction:column;max-width:0;line-height:1.2;transition:opacity .15s,max-width .22s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar.is-expanded .sidebar-logo-text{opacity:1;max-width:160px;transition:opacity .15s 80ms,max-width .22s cubic-bezier(.4,0,.2,1)}.sidebar-logo-text small{font-family:var(--sans);font-weight:500;font-size:var(--fs-xs);letter-spacing:.02em;color:var(--text-muted);-webkit-text-fill-color:var(--text-muted)}.sidebar-nav{flex-direction:column;gap:.25rem;display:flex}.sidebar-nav-item{height:2.5rem;color:var(--text-muted);font-size:var(--fs-md);border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;padding:0 .7rem;font-weight:500;transition:background .15s,color .15s,padding-left .22s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.sidebar.is-expanded .sidebar-nav-item{padding-left:2.3rem}.sidebar-nav-item:not(:disabled):hover{background:var(--violet-soft);color:var(--text)}.sidebar-nav-item.is-active{background:var(--violet-soft);color:var(--violet);font-weight:600}.sidebar-nav-icon{justify-content:center;align-items:center;width:1.2rem;height:1.2rem;display:flex;position:absolute;top:50%;left:.4rem;transform:translateY(-50%)}.sidebar-nav-icon svg{width:100%;height:100%}.sidebar-nav-label{white-space:nowrap;opacity:0;max-width:0;transition:opacity .15s,max-width .22s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar.is-expanded .sidebar-nav-label{opacity:1;max-width:160px;transition:opacity .15s 80ms,max-width .22s cubic-bezier(.4,0,.2,1)}.bottom-nav,.bottom-sheet,.bottom-sheet-backdrop{display:none}@media (width<=760px){:root{--bottom-nav-h:3.5rem;--bottom-nav-total:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom,0px))}.sidebar{display:none}.bottom-nav{z-index:30;height:var(--bottom-nav-total);padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-top:1px solid var(--glass-border);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #14102814}.bottom-nav-item{min-width:0;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;padding:0;font-weight:500;display:flex}.bottom-nav-icon{border-radius:var(--r-pill);justify-content:center;align-items:center;width:3.25rem;height:1.75rem;transition:background .15s;display:flex}.bottom-nav-icon svg{width:1.3rem;height:1.3rem}.bottom-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.2;overflow:hidden}.bottom-nav-item.is-active{color:var(--violet);font-weight:600}.bottom-nav-item.is-active .bottom-nav-icon,.bottom-nav-item:active .bottom-nav-icon{background:var(--violet-soft)}.bottom-nav-item:focus-visible,.bottom-sheet-item:focus-visible{outline:2px solid var(--violet);outline-offset:-3px;border-radius:var(--r-md)}.bottom-sheet-backdrop{z-index:28;background:#14102859;display:block;position:fixed;inset:0}.bottom-sheet{left:calc(.75rem + env(safe-area-inset-left,0px));right:calc(.75rem + env(safe-area-inset-right,0px));bottom:calc(var(--bottom-nav-total) + .5rem);z-index:29;background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);flex-direction:column;gap:.15rem;padding:.4rem;animation:.18s ease-out bottom-sheet-in;display:flex;position:fixed}.bottom-sheet-item{border-radius:var(--r-md);height:3rem;color:var(--text);font-size:var(--fs-lg);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:.7rem;padding:0 .8rem;font-weight:500;display:flex}.bottom-sheet-item.is-active,.bottom-sheet-item:active{background:var(--violet-soft)}.bottom-sheet-item.is-active{color:var(--violet);font-weight:600}.bottom-sheet-icon{width:1.3rem;height:1.3rem;display:flex}.bottom-sheet-icon svg{width:100%;height:100%}}@keyframes bottom-sheet-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.type-badge{vertical-align:middle;object-fit:contain;flex-shrink:0;width:1.15rem;height:1.15rem;display:inline-block}.pokemon-avatar{color:var(--on-color);font-family:var(--display);text-shadow:0 1px 2px #00000040;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;line-height:1;display:flex;overflow:hidden}.pokemon-avatar img{object-fit:contain;width:100%;height:100%;image-rendering:-webkit-optimize-contrast}.item-icon{object-fit:contain;image-rendering:-webkit-optimize-contrast;display:block}.avatar-with-item{flex-shrink:0;display:inline-flex;position:relative}.avatar-with-item-badge{position:absolute;bottom:-3px;right:-3px}.party-slot{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);cursor:grab;min-height:178px;padding:.7rem .8rem;transition:box-shadow .15s,border-color .15s,transform .1s,opacity .15s;position:relative}.party-slot.is-dragging{opacity:.4;cursor:grabbing}.party-slot.is-drag-over{border-color:var(--violet);box-shadow:0 0 0 2px var(--violet-soft)}.party-slot-num{font-family:var(--display);font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:.04em;font-weight:700;position:absolute;top:.55rem;left:.7rem}.party-slot-empty{background:var(--surface-2);width:100%;color:var(--text-muted);border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:flex}.party-slot-empty-main{color:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.3rem;width:100%;display:flex}.party-slot-empty-main:hover{color:var(--violet);transform:translateY(-1px)}.party-slot-plus{font-size:1.4rem;font-weight:300;line-height:1}.party-slot-empty-label{font-size:var(--fs-xs);font-weight:500}.party-slot-sample-link{color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.party-slot-sample-link:hover{color:var(--violet)}.party-slot-filled{flex-direction:column;gap:.5rem;display:flex}.party-slot-compact{min-height:auto;padding-bottom:.5rem}.party-slot-clear{background:var(--surface-2);width:20px;height:20px;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:.5rem;right:.5rem}.party-slot-clear:hover{background:var(--violet-soft);color:var(--violet)}.party-slot-save-sample{background:var(--surface-2);width:20px;height:20px;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:.5rem;right:calc(1.75rem + 5px)}.party-slot-save-sample:hover{background:var(--violet-soft);color:var(--violet)}.party-slot-swap{background:var(--surface-2);width:20px;height:20px;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:.5rem;right:calc(1.75rem + 30px)}.party-slot-swap:hover{background:var(--violet-soft);color:var(--violet)}.party-slot-main{cursor:pointer;text-align:left;border-radius:var(--r-md);background:0 0;border:none;align-items:center;gap:.6rem;padding:.9rem 0 0;display:flex}.party-slot-main:hover .party-slot-name{color:var(--violet)}.party-slot-avatar{border-radius:var(--r-md);width:36px;height:36px;color:var(--on-color);font-family:var(--display);flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.party-slot-info{flex-direction:column;gap:.25rem;min-width:0;display:flex}.party-slot-name{font-weight:600;font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;transition:color .15s;display:inline-flex;overflow:hidden}.party-slot-mega-tag{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:.03em;color:var(--on-color);background:var(--gradient);border-radius:var(--r-xs);flex-shrink:0;padding:.05rem .35rem;font-weight:700}.party-slot-types{gap:.25rem;display:flex}.party-slot-moves{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;display:grid}.party-move-pip{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;text-align:center;min-width:0;padding:.3rem .4rem;font-weight:500}.party-move-pip-text{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.party-move-pip:hover{border-color:var(--violet);color:var(--violet)}.party-move-pip.is-empty{color:var(--text-muted);font-weight:400}.party-move-pip.has-type{color:var(--on-color);text-shadow:0 1px 1px #00000040;border-color:#0000}.party-move-pip.has-type:hover{color:var(--on-color);filter:brightness(1.1);border-color:#0000}.party-move-pip.is-dragging{opacity:.4}.party-move-pip.is-drag-over{outline:2px solid var(--violet);outline-offset:1px}.party-slot-meta{grid-template-columns:repeat(2,1fr);gap:.3rem;display:grid}.party-meta-pip{border:1px solid var(--border);color:var(--text);border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;background:0 0;align-items:baseline;gap:.3rem;min-width:0;padding:.28rem .5rem;display:flex}.party-meta-pip:hover{border-color:var(--violet)}.party-meta-label{color:var(--text-muted);flex-shrink:0}.party-meta-value{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.party-slot-bulk{grid-template-columns:repeat(2,1fr);gap:.3rem;display:grid}.party-bulk-item{background:var(--surface-2);border-radius:var(--r-sm);font-size:var(--fs-xs);justify-content:space-between;align-items:baseline;gap:.3rem;min-width:0;padding:.28rem .5rem;display:flex}.party-bulk-label{color:var(--text-muted);flex-shrink:0}.party-bulk-value{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}@media (width<=760px){.party-slot-clear,.party-slot-save-sample,.party-slot-swap{width:36px;height:36px;font-size:var(--fs-xs)}.party-slot-save-sample{right:calc(.5rem + 42px)}.party-slot-swap{right:calc(.5rem + 84px)}.party-slot-main{padding-right:5.4rem}.party-slot-main-has-swap{padding-right:8rem}}@media (pointer:coarse){.party-slot{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.party-slot-clear:after,.party-slot-save-sample:after,.party-slot-swap:after{content:"";position:absolute;inset:-4px -3px}}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#14102473;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-xl);box-shadow:var(--glass-shadow);flex-direction:column;width:min(560px,100%);max-height:min(640px,85vh);display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-header h3{font-size:var(--fs-lg)}.modal-close{background:var(--surface-2);color:var(--text-muted);cursor:pointer;width:28px;height:28px;font-size:var(--fs-sm);border:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex}.modal-close:hover{color:var(--text)}.modal-body{padding:.75rem;overflow-y:auto}@media (width<=760px){.modal-overlay{align-items:flex-end;padding:0}.modal-panel{width:100%;max-width:none;height:85vh;padding-bottom:env(safe-area-inset-bottom,0px);border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:none}.modal-header{padding:.85rem 1rem}}.picker-search{z-index:1;border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);margin-bottom:.6rem;padding:.6rem .8rem;position:sticky;top:0}.picker-search:focus{border-color:var(--glass-focus-border)}.pokemon-picker-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.pokemon-picker-item{background:var(--surface-2);border-radius:var(--r-md);cursor:pointer;text-align:left;border:1px solid #0000;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;display:flex}.pokemon-picker-item:hover{border-color:var(--violet);background:var(--violet-soft)}.pokemon-picker-item.is-taken{cursor:not-allowed;opacity:.45}.pokemon-picker-item.is-taken:hover{background:var(--surface-2);border-color:#0000}.pokemon-picker-avatar{flex-shrink:0}.pokemon-picker-name{font-weight:600;font-size:var(--fs-md);min-width:5.5em}.pokemon-picker-types{flex:1;gap:.3rem;display:flex}.pokemon-picker-mega{font-size:var(--fs-xs);color:var(--violet);font-weight:600}.pokemon-picker-taken{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;font-weight:600}.pokemon-picker-empty{text-align:center;color:var(--text-muted);font-size:var(--fs-md);padding:1rem}.move-picker-filters{flex-direction:column;gap:.4rem;margin-bottom:.6rem;display:flex}.move-picker-type-filter,.move-picker-category-filter{flex-wrap:wrap;gap:.3rem;display:flex}.move-picker-chip,.move-picker-type-chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);border-radius:var(--r-pill);cursor:pointer;line-height:1}.move-picker-chip{font-size:var(--fs-xs);padding:.3rem .65rem}.move-picker-type-chip{justify-content:center;align-items:center;width:1.85rem;height:1.85rem;padding:0;display:flex}.move-picker-chip.is-active,.move-picker-type-chip.is-active{border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}.move-picker-empty{color:var(--text-muted);font-size:var(--fs-sm);text-align:center;padding:.7rem .8rem}.move-clear-btn{border:1px dashed var(--border);width:100%;color:var(--text-muted);border-radius:var(--r-md);font-size:var(--fs-sm);cursor:pointer;background:0 0;margin-bottom:.6rem;padding:.45rem}.move-clear-btn:hover{border-color:var(--violet);color:var(--violet)}.move-picker-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.move-picker-item{background:var(--surface-2);border-radius:var(--r-md);cursor:pointer;text-align:left;width:100%;font-size:var(--fs-sm);border:1px solid #0000;grid-template-columns:1fr auto 3.2em 2.6em 3em 3.4em;align-items:center;gap:.5rem;padding:.5rem .7rem;display:grid}.move-picker-item:hover{border-color:var(--violet);background:var(--violet-soft)}.move-picker-item.is-used{opacity:.5}.move-picker-item.is-taken{cursor:not-allowed;opacity:.45}.move-picker-item.is-taken:hover{background:var(--surface-2);border-color:#0000}.move-picker-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.move-picker-cat,.move-picker-num{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.move-picker-locked-notice{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-sm);margin:0;padding:.7rem .8rem;line-height:1.5}.move-picker-locked-notice strong{color:var(--text)}.points-remaining{background:var(--surface-2);border-radius:var(--r-md);font-size:var(--fs-md);color:var(--text-muted);justify-content:space-between;align-items:baseline;margin-bottom:.8rem;padding:.6rem .9rem;display:flex}.points-remaining strong{font-family:var(--display);font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.points-remaining strong.is-zero{color:var(--violet)}.points-rows{flex-direction:column;gap:.4rem;display:flex}.points-row{background:var(--surface-2);border-radius:var(--r-md);grid-template-columns:3.8em auto 3em auto minmax(70px,1fr) auto;align-items:center;gap:.45rem;padding:.4rem .6rem;display:grid}.points-label{font-weight:600;font-size:var(--fs-md);white-space:nowrap}.points-label.is-boosted{color:var(--danger)}.points-label.is-lowered{color:var(--blue)}.points-nature-mark{font-size:var(--fs-xs)}.points-step{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text);font-size:var(--fs-md);cursor:pointer;justify-content:center;align-items:center;line-height:1;display:flex}.points-step:hover:not(:disabled){border-color:var(--violet);color:var(--violet)}.points-step:disabled{opacity:.35;cursor:not-allowed}.points-input{text-align:center;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);width:3em;color:var(--text);font-size:var(--fs-md);font-variant-numeric:tabular-nums;padding:.3rem 0}.points-input:focus{border-color:var(--violet)}.points-slider{border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--border);cursor:pointer;touch-action:none;min-width:0;height:14px;position:relative;overflow:hidden}.points-slider:focus-visible{outline:2px solid var(--violet);outline-offset:2px}.points-slider-fill{background:var(--gradient);pointer-events:none;border-radius:0;transition:width 80ms linear;position:absolute;top:0;bottom:0;left:0}.points-slider-cap{background:color-mix(in srgb, var(--text-muted) 12%, transparent);border-left:1px dashed color-mix(in srgb, var(--text-muted) 45%, transparent);pointer-events:none;position:absolute;top:0;bottom:0}.points-slider-wrap{flex-direction:column;gap:3px;min-width:0;display:flex}.mark-strip{cursor:pointer;height:18px;position:relative}.mark{width:8px;margin-left:-4px;position:absolute;top:0;bottom:0}.mark-bar{background:var(--text-muted);opacity:.55;border-radius:1px;width:2px;position:absolute;bottom:0;left:3px}.mark.level-0 .mark-bar{display:none}.mark.level-1 .mark-bar{height:3px}.mark.level-2 .mark-bar{height:5px}.mark.level-3 .mark-bar{opacity:.8;height:8px}.mark.level-4 .mark-bar{background:var(--violet);opacity:1;width:3px;height:12px;left:2.5px}.mark.is-reached .mark-bar{opacity:1}.mark-orb{background:var(--orb,var(--amber));width:6px;height:6px;position:absolute;top:0;left:1px;transform:rotate(45deg)scale(.8)}.mark.is-dim{opacity:.3}.mark.is-relevant .mark-bar{background:var(--orb,var(--amber));opacity:1}.mark.is-open .mark-bar,.mark.is-open .mark-orb{outline:1px solid var(--text);outline-offset:1px}.mark-tip{box-sizing:border-box;border-radius:var(--r-md);background:var(--surface-2);height:9.4rem;font-size:var(--fs-xs);color:var(--text-muted);flex-direction:column;gap:.2rem;margin-bottom:.8rem;padding:.4rem .9rem;line-height:1.3;display:flex;overflow-y:auto}.mark-tip.is-empty{font-size:var(--fs-sm);justify-content:center;align-items:center}.mark-tip strong{font-family:var(--display);font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:.1rem;font-weight:700}.mark-tip-row{grid-template-columns:5.4em 1fr;align-items:center;gap:.6rem;display:grid}.mark-tip-row b{border-radius:var(--r-pill);background:color-mix(in srgb, var(--violet) 14%, transparent);color:var(--violet);font-size:var(--fs-xs);text-align:center;white-space:nowrap;padding:.12rem 0;font-weight:700;line-height:1.2}.mark-tip-row.is-relevant b{background:color-mix(in srgb, var(--orb,var(--amber)) 30%, transparent);color:var(--text)}.mark-tip-row.is-relevant span{color:var(--text);font-weight:600}.points-real{text-align:right;font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.points-nature-hint{font-size:var(--fs-xs);flex-wrap:wrap;margin:.7rem 0 0;font-weight:600;display:flex}.points-nature-hint .is-boosted{color:var(--danger)}.points-nature-hint .is-lowered{color:var(--blue)}@media (width<=560px){.points-row{grid-template-columns:3em auto 2.2em auto minmax(50px,1fr) auto;gap:.3rem}.points-input{width:2.2em;font-size:var(--fs-sm)}.points-real{font-size:var(--fs-xs)}}.backup-hint{font-size:var(--fs-sm);color:var(--text-muted);margin:0 0 .8rem;line-height:1.5}.backup-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:.7rem;display:flex}.backup-actions button{font:inherit;font-size:var(--fs-sm);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;padding:.3rem .85rem}.backup-actions button:disabled{opacity:.5;cursor:not-allowed}.backup-actions button.is-danger{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.backup-confirm{border:1px solid var(--danger);border-radius:var(--r-md);background:var(--danger-bg);margin-bottom:.7rem;padding:.7rem .8rem}.backup-confirm p{font-size:var(--fs-sm);color:var(--danger);margin:0 0 .6rem;line-height:1.5}.backup-confirm .backup-actions{margin-bottom:0}.backup-notice{font-size:var(--fs-xs);color:var(--text-muted);margin:0}.backup-cloud{border-top:1px solid var(--border);margin-top:1rem;padding-top:.8rem}.backup-conflict-line{margin:.2rem 0;display:block}.backup-cloud-title{font-size:var(--fs-sm);color:var(--text);margin:0 0 .4rem}.preset-save-row{gap:.5rem;margin-bottom:.8rem;display:flex}.preset-save-input{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:var(--fs-md);flex:1;padding:.55rem .75rem}.preset-save-input:focus{border-color:var(--violet)}.preset-search-input{box-sizing:border-box;border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);z-index:1;margin-top:.6rem;padding:.55rem .75rem;position:sticky;bottom:0}.preset-search-input:focus{border-color:var(--glass-focus-border)}.preset-save-button{background:var(--gradient);color:var(--on-color);font-weight:600;font-size:var(--fs-sm);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;border:none;padding:0 1rem}.preset-save-button:disabled{opacity:.4;cursor:not-allowed}.preset-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.preset-item{border:1px solid var(--border);background:var(--surface-2);border-radius:var(--r-md);align-items:center;gap:.5rem;padding:.55rem .7rem;display:flex}.preset-item-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.preset-item-name{font-weight:600;font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.preset-item-meta{font-size:var(--fs-xs);color:var(--text-muted)}.preset-item-actions{flex-shrink:0;gap:.3rem;display:flex}.preset-item-actions button{border:1px solid var(--border);color:var(--text);font-size:var(--fs-xs);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;background:0 0;padding:.3rem .55rem;font-weight:500}.preset-item-actions button:hover{border-color:var(--violet);color:var(--violet)}.preset-item-actions button:disabled{cursor:not-allowed;opacity:.4}.preset-item-actions button:disabled:hover{border-color:var(--border);color:var(--text)}.preset-item-actions button.is-danger:hover{border-color:var(--danger);color:var(--danger)}.preset-list-empty{text-align:center;color:var(--text-muted);font-size:var(--fs-md);padding:1rem}.type-coverage{width:100%;max-width:100%;margin-top:2rem}.type-coverage-header h2{font-size:var(--fs-xl);margin-bottom:.3rem}.type-coverage-header p{color:var(--text-muted);font-size:var(--fs-sm);max-width:50ch;margin:0 0 1rem}.type-coverage-empty{color:var(--text-muted);font-size:var(--fs-md);padding:1rem 0}.type-matrix-scroll{border:1px solid var(--glass-border);border-radius:var(--r-lg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));background:linear-gradient(to left, var(--surface), transparent) 100% 0 / 40px 100% no-repeat local, radial-gradient(farthest-side at 100% 50%, #14102829, transparent) 100% 0 / 14px 100% no-repeat scroll, var(--surface);overflow-x:auto}.type-matrix{border-collapse:separate;border-spacing:0;font-size:var(--fs-xs);width:max-content;min-width:100%}.type-matrix th,.type-matrix td{text-align:center;border-bottom:1px solid var(--border);white-space:nowrap;padding:.3rem .4rem}.type-matrix tbody tr:last-child th,.type-matrix tbody tr:last-child td{border-bottom:none}.type-matrix thead th{z-index:2;background:var(--surface-2);border-bottom:2px solid var(--border);font-weight:700;position:sticky;top:0}.tm-type,.tm-foot-label,.tm-corner{position:sticky;left:0;box-shadow:6px 0 6px -4px #14102824}.tm-type,.tm-foot-label{z-index:2;background:var(--surface)}.tm-corner{z-index:3;background:var(--surface-2)}.tm-mon{min-width:4.5rem}.tm-mon-name{text-overflow:ellipsis;max-width:6rem;display:block;overflow:hidden}.tm-mon-form{font-size:var(--fs-xs);color:var(--violet);margin-top:.1rem;font-weight:600;display:block}.tm-verdict-head,.tm-verdict,.tm-foot-corner{border-left:2px solid var(--border)}.tm-verdict-head{min-width:3rem}.tm-type{text-align:left;padding-left:.5rem}.tm-cell{min-width:2.4rem}.cnt{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;border-radius:var(--r-xs);padding:.05rem .35rem;font-weight:700}.cnt-quad{color:var(--on-color);background:var(--danger-strong)}.cnt-weak{color:var(--danger);background:var(--danger-bg)}.cnt-resist{color:var(--safe);background:var(--safe-bg)}.cnt-quadresist{color:var(--on-color);background:var(--safe)}.cnt-immune{color:var(--text-muted);background:var(--surface-2)}.type-matrix tfoot th,.type-matrix tfoot td{border-top:2px solid var(--border);background:var(--surface-2);border-bottom:none}.tm-foot-label{font-weight:700}.tm-foot-count{font-weight:700;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text)}.tm-verdict{font-weight:700;font-size:var(--fs-xs)}.tm-verdict-weak{color:var(--danger);background:var(--danger-bg)}.tm-verdict-strong{color:var(--safe);background:var(--safe-bg)}.tm-verdict-neutral{color:var(--text-muted)}.party-board{width:100%;max-width:980px}.party-board>:not(.party-board-header):not(.modal-overlay){max-width:740px;margin-left:auto;margin-right:auto}.party-board-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;display:flex}.party-board-header h2{font-size:var(--fs-2xl);margin-bottom:.3rem}.party-board-header p{color:var(--text-muted);font-size:var(--fs-sm);max-width:34ch;margin:0}.party-board-title-accent{color:var(--danger-strong)}.party-board-header-right{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.party-board-count{font-family:var(--display);font-weight:700;font-size:var(--fs-md);border-radius:var(--r-pill);background:var(--gradient);color:var(--on-color);white-space:nowrap;padding:.3rem .7rem}.party-board-autosave{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.party-board-reset{border:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;background:0 0;padding:.32rem .65rem;font-weight:500}.party-board-reset:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.party-board-reset:disabled{cursor:not-allowed;opacity:.4}.party-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.party-grid>:nth-child(2n){transform:translateY(15px)}@media (width<=760px){.party-board-header{flex-direction:column;align-items:stretch;gap:.7rem}.party-board-header-right{flex-wrap:wrap}.party-board-header p{max-width:none}.party-grid{grid-template-columns:1fr}.party-grid>:nth-child(2n){transform:none}.party-board-autosave{display:none}}.info-tooltip{align-items:center;gap:.3rem;display:inline-flex;position:relative}.info-tooltip-icon{font-size:var(--fs-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 .1rem;line-height:1}.info-tooltip-bubble{z-index:20;border-radius:var(--r-sm);background:var(--text);width:max-content;max-width:min(280px,80vw);color:var(--bg,#fff);font-size:var(--fs-xs);white-space:pre-line;opacity:0;pointer-events:none;padding:.5rem .65rem;font-weight:500;line-height:1.45;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 6px);left:0;transform:translateY(2px);box-shadow:0 4px 14px #0000002e}.info-tooltip:hover .info-tooltip-bubble,.info-tooltip-bubble.is-open{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.info-tooltip-bubble{transition:none}}.matchup-slot{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);flex-shrink:0;width:280px;padding:.85rem 1rem;position:relative}.matchup-slot-label{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:.04em;color:var(--text-muted);font-weight:700;position:absolute;top:.6rem;left:.85rem}.matchup-slot-empty{background:var(--surface-2);min-height:120px;color:var(--text-muted);border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:flex}.matchup-slot-empty-main{color:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.3rem;display:flex}.matchup-slot-empty-main:hover{color:var(--violet)}.matchup-slot-plus{font-size:1.6rem;font-weight:300;line-height:1}.matchup-slot-empty-text{font-size:var(--fs-sm);font-weight:500}.matchup-slot-sample-link{color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.matchup-slot-sample-link:hover{color:var(--violet)}.matchup-slot-filled{flex-direction:column;gap:.6rem;display:flex}.matchup-slot-clear{background:var(--surface-2);width:22px;height:22px;color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:.55rem;right:.55rem}.matchup-slot-clear:hover{background:var(--violet-soft);color:var(--violet)}.matchup-slot-main{cursor:pointer;text-align:left;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:.7rem;padding:1rem 0 0;display:flex}.matchup-slot-main:hover .matchup-slot-name{color:var(--violet)}.matchup-slot-avatar{border-radius:var(--r-md);width:42px;height:42px;color:var(--on-color);font-family:var(--display);flex-shrink:0;justify-content:center;align-items:center;font-size:1.15rem;font-weight:700;display:flex}.matchup-slot-info{flex-direction:column;gap:.3rem;min-width:0;display:flex}.matchup-slot-name{font-weight:700;font-size:var(--fs-lg);align-items:center;gap:.4rem;transition:color .15s;display:inline-flex}.matchup-slot-mega-tag{font-family:var(--display);font-size:var(--fs-xs);color:var(--on-color);background:var(--gradient);border-radius:var(--r-xs);padding:.05rem .4rem;font-weight:700}.matchup-slot-types{gap:.3rem;display:flex}.matchup-stat-row{grid-template-columns:repeat(3,1fr);gap:.3rem;display:grid}.matchup-stat-chip{background:var(--surface-2);border-radius:var(--r-sm);flex-direction:column;align-items:center;gap:.1rem;padding:.35rem .1rem;display:flex}.matchup-stat-label{font-size:var(--fs-xs);color:var(--text-muted)}.matchup-stat-value{font-family:var(--display);font-weight:700;font-size:var(--fs-md);font-variant-numeric:tabular-nums}.matchup-stat-chip.is-boosted{background:var(--violet-soft)}.matchup-stat-chip.is-boosted .matchup-stat-value{color:var(--violet)}.matchup-stat-chip.is-lowered .matchup-stat-value{color:var(--text-muted)}.matchup-stat-stage{font-size:var(--fs-xs);vertical-align:super;margin-left:.15rem;font-weight:700}.matchup-meta-row{grid-template-columns:repeat(2,1fr);gap:.3rem;display:grid}.matchup-meta-pip{border:1px solid var(--border);color:var(--text);border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;background:0 0;align-items:baseline;gap:.3rem;min-width:0;padding:.3rem .5rem;display:flex}.matchup-meta-pip:hover{border-color:var(--violet)}.matchup-meta-label{color:var(--text-muted);flex-shrink:0}.matchup-meta-value{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.matchup-move-section{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.matchup-move-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.4rem;display:grid}.matchup-move-cell{flex-direction:column;gap:.3rem;min-width:0;display:flex}.matchup-move-row .matchup-move-pip{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;padding-inline:.3rem;overflow:hidden}.matchup-move-pip{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:pointer;padding:.4rem .7rem;font-weight:600}.matchup-move-pip:hover{border-color:var(--violet);color:var(--violet)}.matchup-move-pip.has-type{color:var(--on-color);text-shadow:0 1px 1px #00000040;border-color:#0000}.matchup-move-pip.has-type:hover{color:var(--on-color);filter:brightness(1.1);border-color:#0000}.matchup-power-readout{font-size:var(--fs-sm);color:var(--text-muted)}.matchup-power-readout strong{font-family:var(--display);font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;margin-left:.2rem}.matchup-power-readout.is-muted{font-style:italic}.matchup-power-caveat{font-size:var(--fs-xs);color:var(--text-muted)}.matchup-hitcount-row{flex-wrap:wrap;gap:.3rem;display:flex}.matchup-hitcount-pip{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;padding:.2rem .55rem;font-weight:600}.matchup-hitcount-pip:hover{border-color:var(--violet);color:var(--violet)}.matchup-hitcount-pip.is-active{border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}.matchup-assume-section{border-top:1px dashed var(--border);flex-direction:column;gap:.35rem;margin-top:.1rem;padding-top:.5rem;display:flex}.matchup-assume-hint{font-size:var(--fs-xs);color:var(--text-muted);margin:0;line-height:1.4}.matchup-assume-grave{align-items:flex-start;gap:.4rem;display:flex}.matchup-assume-grave-label{font-size:var(--fs-xs);color:var(--text-muted);flex-shrink:0}@media (width<=760px){.matchup-slot{width:100%;max-width:320px}.matchup-slot-clear{width:30px;height:30px}}@media (pointer:coarse){.matchup-slot-clear:after{content:"";position:absolute;inset:-7px}}.matchup-status-row{flex-wrap:wrap}.matchup-hp-slider{width:100%;accent-color:var(--violet)}.matchup-toggle-row{flex-wrap:wrap;gap:.4rem;display:flex}.verdict-badge{border-radius:var(--r-lg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;width:130px;padding:.9rem 1rem;display:flex}.verdict-badge strong{font-family:var(--display);font-size:var(--fs-2xl);letter-spacing:.01em;font-weight:700}.verdict-chance{font-size:var(--fs-xs);opacity:.92;flex-direction:column;align-items:center;gap:.05rem;font-weight:700;line-height:1.2;display:flex}.verdict-chance-detail{font-size:var(--fs-xs);opacity:.8;font-weight:600}.verdict-chance-muted{color:var(--text-muted);opacity:1}.verdict-pending{border:1px dashed var(--border);color:var(--text-muted);font-size:var(--fs-sm)}.verdict-pending strong{font-size:var(--fs-md);color:var(--text-muted)}.verdict-danger-strong{background:var(--danger-strong);color:var(--on-color)}.verdict-danger{background:var(--danger-bg);color:var(--danger)}.verdict-warn{background:var(--warn-bg);color:var(--warn)}.verdict-neutral{background:var(--violet-soft);color:var(--violet)}.verdict-safe{background:var(--safe-bg);color:var(--safe)}.chip-picker{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.chip-picker-label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600}.chip-picker-options{flex-wrap:wrap;gap:.35rem;display:flex}.chip-picker-chip{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:var(--r-pill);font-size:var(--fs-sm);cursor:pointer;padding:.3rem .75rem;font-weight:500}.chip-picker-chip:hover{border-color:var(--violet);color:var(--violet)}.chip-picker-chip.is-active{background:var(--gradient);color:var(--on-color);border-color:#0000;font-weight:700}.dinf{flex-direction:column;gap:1.1rem;display:flex}.dinf-intro{font-size:var(--fs-sm);color:var(--text-muted);max-width:62ch;margin:0;line-height:1.55}.dinf-board{border-radius:var(--r-xl);flex-flow:wrap;justify-content:center;align-items:flex-start;gap:1rem;padding:.7rem;transition:background .3s;display:flex}@media (width<=760px){.dinf-board{padding:.5rem}}.dinf-defender{margin-top:15px}.dinf-defender-forms{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.dinf-defender-forms button{font-size:var(--fs-xs);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;padding:.25rem .6rem}.dinf-defender-base{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;gap:.2rem .8rem;margin-top:.6rem;display:flex}.dinf-defender-base strong{color:var(--text)}.dinf-unknown{border-top:1px dashed var(--border);font-size:var(--fs-xs);color:var(--text-muted);margin:.6rem 0 0;padding-top:.5rem}.dinf-unknown strong{color:var(--violet)}.dinf-section{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);padding:.9rem 1rem}.dinf-section h3{font-size:var(--fs-lg);margin:0 0 .7rem}.dinf-conditions{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem .9rem;margin-bottom:.7rem;display:grid}.dinf-conditions label{font-size:var(--fs-xs);color:var(--text-muted);flex-direction:column;gap:.25rem;display:flex}.dinf select,.dinf-percent,.dinf-move-btn{font:inherit;font-size:var(--fs-sm);color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.35rem .5rem}.dinf-note{font-size:var(--fs-xs);color:var(--text-muted);margin:.55rem 0 0;line-height:1.45}.dinf-rows{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.dinf-row{border-radius:var(--r-md);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:.45rem .55rem;padding:.5rem 2.2rem .5rem .6rem;display:flex;position:relative}.dinf-row select,.dinf-row .dinf-move-btn,.dinf-row .dinf-percent{box-sizing:border-box;height:2rem}.dinf-row select{padding-top:0;padding-bottom:0}.dinf-row-opts{display:contents}.dinf-row-no{font-weight:700;font-size:var(--fs-sm);color:var(--violet);min-width:1.6rem}.dinf-move-btn{text-align:left;cursor:pointer;min-width:6rem}.dinf-move-btn:disabled{opacity:.5;cursor:not-allowed}.dinf-stepper{border:1px solid var(--violet);border-radius:var(--r-sm);background:var(--violet-soft);color:var(--violet);font-size:var(--fs-xs);align-items:center;font-weight:600;line-height:1.35;display:inline-flex}.dinf-stepper button:first-child{border-radius:calc(var(--r-sm) - 1px) 0 0 calc(var(--r-sm) - 1px)}.dinf-stepper button:last-child{border-radius:0 calc(var(--r-sm) - 1px) calc(var(--r-sm) - 1px) 0}.dinf-stepper span{text-align:center;min-width:3.2rem;padding:.2rem .3rem}.dinf-stepper button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:.2rem .55rem}.dinf-stepper button:hover{background:var(--surface-2)}.dinf-percent-pair{font-size:var(--fs-sm);align-items:center;gap:.3rem;display:inline-flex}.dinf-percent{text-align:right;width:3.4rem}.dinf-row-msg{font-size:var(--fs-xs);border-radius:var(--r-pill);padding:.1rem .5rem}.dinf-row-msg.is-error{color:var(--danger);background:var(--danger-bg)}.dinf-row-msg.is-ok{color:var(--safe)}.dinf-row-remove{height:2rem;color:var(--text-muted);cursor:pointer;font-size:var(--fs-md);background:0 0;border:none;position:absolute;top:.5rem;right:.45rem}.dinf-add{font:inherit;font-size:var(--fs-sm);border-radius:var(--r-pill);border:1px dashed var(--violet);background:var(--violet-soft);color:var(--violet);cursor:pointer;margin-top:.6rem;padding:.4rem .9rem}.dinf-hint{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.dinf-pending{font-size:var(--fs-xs);color:var(--text-muted);font-weight:400}.dinf-stale{opacity:.55}.dinf-warn,.dinf-contradiction{border-radius:var(--r-md);background:var(--danger-bg);color:var(--danger);font-size:var(--fs-sm);margin:0;padding:.7rem .9rem}.dinf-contradiction p{margin:.35rem 0 0}.dinf-summary{font-size:var(--fs-lg);margin:0 0 .7rem}.dinf-summary strong{color:var(--violet);font-size:var(--fs-xl)}.dinf-summary-sub{font-size:var(--fs-xs);color:var(--text-muted)}.dinf-range{grid-template-columns:5.5rem 1fr;grid-template-areas:"label track""label text";align-items:center;gap:.15rem .7rem;margin-bottom:.55rem;display:grid}.dinf-range-label{font-size:var(--fs-sm);color:var(--text-muted);grid-area:label}.dinf-range-track{border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);grid-area:track;height:9px;position:relative}.dinf-range-fill{border-radius:var(--r-pill);background:var(--gradient);position:absolute;top:0;bottom:0}.dinf-range-central{border-radius:var(--r-pill);background:var(--violet);position:absolute;top:-2px;bottom:-2px}.dinf-range-fill{opacity:.45}.dinf-bulk{font-size:var(--fs-md);margin-bottom:.45rem}.dinf-bulk-label{min-width:6.8rem;font-size:var(--fs-sm);color:var(--text-muted);display:inline-block}.dinf-bulk-value strong{color:var(--violet);font-size:var(--fs-lg)}.dinf-bulk-error{font-size:var(--fs-sm);color:var(--text-muted)}.dinf-tips ul{margin:.4rem 0;padding-left:1.1rem;line-height:1.55}.dinf-range-text{font-size:var(--fs-sm);grid-area:text}.dinf-range-real{font-size:var(--fs-xs);color:var(--text-muted)}.dinf-natures{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.8rem;display:flex}.dinf-subtitle{font-size:var(--fs-sm);color:var(--text-muted);margin-right:.2rem}.dinf-nature-chip{font-size:var(--fs-xs);border-radius:var(--r-pill);background:var(--violet-soft);color:var(--violet);padding:.2rem .6rem}.dinf-nature-chip em{opacity:.8;font-style:normal}.dinf-nature-chip.is-no{background:var(--surface-2);color:var(--text-muted);text-decoration:line-through}.dinf-details{font-size:var(--fs-sm);margin-top:.9rem}.dinf-details summary{cursor:pointer;color:var(--violet)}.dinf-grids{flex-wrap:wrap;gap:1rem;margin-top:.7rem;display:flex}.dinf-grid-wrap{flex-direction:column;gap:.3rem;max-width:100%;display:flex}.dinf-grid-title{font-size:var(--fs-xs);font-weight:600}.dinf-plot{grid-template:"yaxis grid"".xaxis"1.1rem".xname"1.1rem/1.6rem min(300px,100vw - 8rem);align-items:stretch;display:grid}.dinf-axis-name{font-size:var(--fs-xs);color:var(--text-muted)}.dinf-axis-name-x{text-align:center;grid-area:xname}.dinf-axis-y{grid-area:yaxis;position:relative}.dinf-axis-x{grid-area:xaxis;position:relative}.dinf-tick{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1;position:absolute}.dinf-tick-y{right:.25rem;transform:translateY(50%)}.dinf-tick-x{top:.2rem;transform:translate(-50%)}.dinf-grid{border:1px solid var(--border);border-radius:var(--r-xs);background:var(--surface-2);grid-area:grid;display:grid;overflow:hidden}.dinf-cell{aspect-ratio:1}.dinf-cell.is-on{background:var(--violet)}.dinf-grid-axis{font-size:var(--fs-xs);color:var(--text-muted)}.dinf-assume{border-top:1px dashed var(--border);font-size:var(--fs-xs);color:var(--text-muted);margin:.9rem 0 0;padding-top:.6rem}@media (width<=760px){.dinf-board{flex-direction:column;align-items:stretch}.dinf-defender{margin-top:0}.dinf-row{align-items:center;min-height:5.6rem;padding:.5rem .6rem .5rem 2rem}.dinf-row-no{min-width:0;line-height:1.85rem;position:absolute;top:.5rem;left:.55rem}.dinf-row-remove{height:auto;padding:.2rem .35rem;top:2.6rem;left:.3rem;right:auto}.dinf-row select,.dinf-row .dinf-move-btn{padding-left:.3rem;padding-right:.2rem}.dinf-row-no+select,.dinf-row-no+select+*{flex:0 0 calc(50% - .35rem);min-width:0}.dinf-row .dinf-percent{width:3rem}.dinf-row-opts{flex:1 0 100%;gap:.45rem .7rem;display:flex}.dinf-row-opts:empty{display:none}.dinf-row-msg.is-ok{padding:0;position:absolute;top:4.3rem;left:.45rem}.dinf-row-msg.is-error{border-radius:var(--r-sm);flex:1 0 100%}.dinf-move-btn{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dinf-range{grid-template-columns:4.6rem 1fr}}.dinf-defender-forms button.is-active{border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}.dinf-subhead{font-size:var(--fs-sm);color:var(--violet);margin:.9rem 0 .4rem;font-weight:700}.dinf-cell.is-extreme{outline:1px dashed var(--text-muted);outline-offset:-1px}.dinf-extreme-none strong{color:var(--danger)}.dinf-speed-cond{flex-basis:100%;margin-top:0}.dinf-speed-checks{flex-wrap:wrap;gap:.4rem 1rem;margin:.6rem 0;display:flex}.dinf-form-scroll{overflow-x:auto}.dinf-form-table{border-collapse:collapse;font-size:var(--fs-sm)}.dinf-form-table th,.dinf-form-table td{text-align:left;white-space:nowrap;padding:.3rem .8rem .3rem 0}.dinf-form-table thead th{color:var(--violet);border-bottom:1px solid var(--border);font-weight:700}.dinf-form-table tbody th{color:var(--text-muted);font-weight:400}.dinf-endturn{font-size:var(--fs-xs);flex-wrap:wrap;flex:1 0 100%;align-items:center;gap:.3rem .6rem;display:flex}.dinf-endturn-title{color:var(--text-muted);font-weight:600}.cand-body{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.cand-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.cand-card{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--fs-sm);flex-direction:column;gap:.15rem;padding:.5rem .65rem;display:flex}.cand-nature small{color:var(--text-muted);margin-left:.25rem;font-weight:400}.cand-points{font-variant-numeric:tabular-nums;font-weight:700}.cand-meta{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.cand-more{border:1px solid var(--glass-border);border-radius:var(--r-sm);background:var(--surface-2);font:inherit;font-size:var(--fs-sm);color:var(--text);cursor:pointer;align-self:flex-start;padding:.3rem .7rem}.speedtab-board{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1rem;display:flex}.speedtab-result{max-width:640px;font-size:var(--fs-sm);flex-direction:column;flex:320px;gap:.5rem;display:flex}.speedtab-summary,.speedtab-note{color:var(--text-muted);margin:0}.speedtab-note{font-size:var(--fs-xs)}.speedtab-summary strong{color:var(--text);font-variant-numeric:tabular-nums}.speedtab-list{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-2);margin:0;padding:0;list-style:none;overflow:hidden}.speedtab-line-value{font-variant-numeric:tabular-nums;text-align:right;flex:0 0 3rem}.speedtab-chips{flex-wrap:wrap;gap:.25rem .5rem;display:flex}.speedtab-result{--speedtab-icon:30px}.speedtab-chip{width:var(--speedtab-icon);min-height:var(--speedtab-icon);border-radius:var(--r-sm);font:inherit;font-size:var(--fs-xs);color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.speedtab-chip img{width:100%;height:auto;display:block}.speedtab-chip.is-picked{border-color:var(--violet);background:var(--violet-soft)}.speedtab-chip-mark{font-style:normal;font-size:var(--fs-xs);color:var(--text);text-shadow:0 0 2px var(--surface-2), 0 0 2px var(--surface-2);line-height:1;position:absolute;bottom:0;right:0}.speedtab-side{flex-direction:column;flex:0 0 280px;gap:1.25rem;max-width:100%;display:flex}@media (width<=760px){.speedtab-side,.speedtab-result{flex:100%;max-width:320px}}.speedtab-card{isolation:isolate;position:relative}.speedtab-card:before{content:"";z-index:-1;border-radius:var(--r-xl);background:var(--env-tint,transparent);pointer-events:none;transition:background .3s;position:absolute;inset:-.6rem}.speedtab-fold>summary{cursor:pointer;list-style:none}.speedtab-fold>summary::-webkit-details-marker{display:none}.speedtab-fold>summary:before{content:"▾";width:1.1em;color:var(--text-muted);display:inline-block}.speedtab-fold:not([open])>summary:before{content:"▸"}.speedtab-fold-body{flex-direction:column;gap:.5rem;margin-top:.4rem;display:flex}.speedtab-title small{color:var(--text-muted);margin-left:.4rem;font-weight:400}.speedtab-title{font-size:var(--fs-lg);margin:0;font-weight:700}.speedtab-title strong{font-variant-numeric:tabular-nums}.speedtab-tier{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;gap:.35rem;padding:.55rem .7rem;display:flex}.speedtab-head{font-size:var(--fs-md);margin:0}.speedtab-head small{color:var(--text-muted);margin-left:.3rem;font-weight:400}.speedtab-group{flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;display:flex}.speedtab-group-label,.speedtab-group>summary{font-size:var(--fs-xs);color:var(--text-muted);flex:none;font-weight:600}.speedtab-group>summary{cursor:pointer}.speedtab-group[open]>summary{flex-basis:100%}.speedtab-bp{border-top:1px solid var(--border);align-items:baseline;gap:.7rem;padding:.4rem .7rem;display:flex}.speedtab-bp:first-child{border-top:none}.speedtab-bp-body{flex-direction:column;gap:.25rem;display:flex}.speedtab-bp-speed{font-variant-numeric:tabular-nums}.speedtab-bp.is-me{background:var(--violet-soft)}.speedtab-target-head{flex-wrap:wrap;gap:.4rem;display:flex}.speedtab-target-btn{border:1px solid var(--glass-border);border-radius:var(--r-sm);background:var(--surface-2);font:inherit;font-size:var(--fs-sm);color:var(--text);cursor:pointer;padding:.3rem .7rem}.speedtab-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.speedtab-table th,.speedtab-table td{border-top:1px solid var(--border);text-align:center;padding:.3rem .4rem}.speedtab-table th:first-child{text-align:left}.speedtab-table td small{font-size:var(--fs-xs);color:var(--text-muted);display:block}.speedtab-table td.is-pass{background:var(--violet-soft);font-weight:700}.speedtab-picked{z-index:1;border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);font-size:var(--fs-sm);color:var(--text-muted);margin:0;padding:.4rem .7rem;position:sticky;top:0}.bulktab-controls{border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;gap:.4rem;padding:.6rem .8rem;display:flex}.bulktab-controls .matchup-assume-grave-label{flex:0 0 4.2rem;padding-top:.25rem}.bulktab-board{flex-direction:column;align-items:center}.bulktab-board .speedtab-side{flex-flow:wrap;flex:0 auto;justify-content:center;max-width:100%}.bulktab-board{--bulk-card:280px}.bulktab-board .speedtab-card{flex:0 0 var(--bulk-card);max-width:100%}.bulktab-board .speedtab-result{width:100%;max-width:calc(var(--bulk-card) * 2 + 1.25rem);flex:none}@media (width<=640px){.bulktab-board .speedtab-result{max-width:var(--bulk-card)}}.matchup-page{width:100%;max-width:980px}.matchup-page-header{flex-direction:column;gap:.9rem;margin-bottom:1.4rem;display:flex}.matchup-page-header h2{font-size:var(--fs-2xl);margin-bottom:.3rem}.matchup-page-header p{color:var(--text-muted);font-size:var(--fs-sm);max-width:42ch;margin:0}.matchup-env-pickers{flex-direction:column;gap:.55rem;display:flex}.matchup-board{border-radius:var(--r-xl);flex-direction:row;justify-content:center;align-items:flex-start;gap:1rem;padding:.7rem;transition:background .3s;display:flex}.matchup-board>.matchup-slot:last-child{margin-top:15px}.matchup-verdict-row{flex-shrink:0;justify-content:center;align-items:center;width:130px;padding-top:3.2rem;display:flex}.matchup-speed-row{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-2);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));font-size:var(--fs-sm);color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;padding:.6rem .9rem;display:flex}.matchup-speed-side{order:1}.matchup-speed-side strong{font-family:var(--display);font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums;margin-left:.25rem}.matchup-speed-verdict{text-align:center;color:var(--text);flex-basis:100%;order:2;font-weight:600}.matchup-speed-note{color:var(--text-muted);font-weight:500}.matchup-speed-block{width:calc(690px + 2rem);max-width:100%;margin-top:1rem;margin-left:auto;margin-right:auto}.matchup-speed-block .matchup-speed-row{margin-top:0}.matchup-roll-block{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-2);width:calc(690px + 2rem);max-width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));font-size:var(--fs-sm);color:var(--text-muted);margin-top:1rem;margin-left:auto;margin-right:auto;padding:.6rem .9rem}.matchup-roll-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .75rem;display:flex}.matchup-roll-title{color:var(--text);font-weight:600}.matchup-roll-range strong{font-family:var(--display);font-size:var(--fs-lg);color:var(--text);font-variant-numeric:tabular-nums}.matchup-roll-toggle{border:1px solid var(--glass-border);border-radius:var(--r-pill);color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;background:0 0;padding:.15rem .6rem}.matchup-roll-toggle:hover{color:var(--text)}.matchup-roll-grid{font-variant-numeric:tabular-nums;grid-template-columns:repeat(4,1fr);gap:.3rem .75rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.matchup-roll-grid li{justify-content:space-between;gap:.4rem;display:flex}.matchup-roll-value{color:var(--text-muted)}.matchup-roll-percent{color:var(--text)}.matchup-roll-grid li.is-killing .matchup-roll-percent{color:var(--violet);font-weight:700}@media (width<=760px){.matchup-roll-block{width:100%;max-width:320px}.matchup-roll-grid{grid-template-columns:repeat(2,1fr)}.matchup-board{flex-direction:column;align-items:center;padding:.5rem}.matchup-board>.matchup-slot:last-child{margin-top:0}.matchup-verdict-row{width:auto;padding-top:0}.matchup-speed-block{width:100%;max-width:320px}}.matchup-tabs{border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);align-self:flex-start;gap:.25rem;padding:.25rem;display:inline-flex}.matchup-tabs button{font:inherit;font-size:var(--fs-sm);border-radius:var(--r-pill);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.35rem .95rem}.matchup-tabs button.is-active{background:var(--gradient);color:var(--on-color);font-weight:600}@media (width<=760px){.matchup-tabs{border-radius:var(--r-xl);align-self:stretch;display:flex}.matchup-tabs button{border-radius:var(--r-lg);word-break:keep-all;flex:1 1 0;min-width:0;padding:.35rem .25rem;line-height:1.25}}.matchup-slot.is-drag-over{border-color:var(--violet);box-shadow:0 0 0 2px var(--violet-soft)}.matchup-slot.is-touch-dragging{opacity:.6}.battle-series{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.8rem;padding:.6rem .85rem;display:flex}.battle-series-text{color:var(--text-muted);flex:18rem}.battle-series-text strong{color:var(--text)}.battle-series-details{flex:100%}.battle-series-details summary{cursor:pointer;color:var(--text-muted)}.battle-series-list{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.3rem .8rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.battle-series-list li{align-items:baseline;gap:.4rem;display:flex}.battle-series-style{color:var(--text-muted);font-size:var(--fs-xs);flex:1}.battle-series-result{font-weight:700}.battle-series-reset{margin-top:.5rem}.battle-series-mine{flex:100%}.rank-panel{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);font-size:var(--fs-sm);margin-bottom:.8rem;padding:.7rem .9rem}.rank-profile{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.rank-info{color:var(--text-muted);flex-direction:column;flex:14rem;gap:.15rem;display:flex}.rank-name{color:var(--text);font-size:1.15rem}.rank-info strong{color:var(--text)}.rank-sub{font-size:var(--fs-xs)}.rank-gauge{flex:none;width:7.5rem;height:7.5rem;position:relative}.rank-gauge svg{width:100%;height:100%;position:absolute;inset:0}.rank-gauge circle{fill:none;stroke:var(--border);stroke-width:22px;transition:stroke-dasharray .3s}.rank-gauge circle.is-on{stroke:var(--amber)}.rank-gauge img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.rank-details{margin-top:.5rem}.rank-details summary{cursor:pointer;color:var(--text-muted)}.rank-list{flex-direction:column;gap:.35rem;max-height:18rem;margin:.4rem 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.rank-list li{flex-wrap:wrap;align-items:baseline;gap:.1rem .5rem;display:flex}.rank-list-when{color:var(--text-muted);font-size:var(--fs-xs)}.rank-list-result{font-weight:700}.rank-list-result.is-win{color:var(--safe)}.rank-list-result.is-loss,.rank-list-result.is-abandon{color:var(--danger)}.rank-list-main{font-weight:600}.rank-list-sub{color:var(--text-muted);font-size:var(--fs-xs);flex:100%}.rank-result{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);font-size:var(--fs-sm);text-align:center;margin:.5rem 0;padding:.6rem .8rem}.rank-result-visual{justify-content:center;align-items:center;gap:.6rem;display:flex}.rank-result .rank-gauge{width:5.5rem;height:5.5rem}.rank-result-arrow{color:var(--text-muted);flex-direction:column;align-items:center;font-size:1.4rem;line-height:1;display:flex}.rank-result-arrow small{color:var(--text);font-size:var(--fs-xs);font-weight:700}.rank-result-line{margin:.15rem 0}.rank-result-formula{color:var(--text-muted);font-size:var(--fs-xs)}.rank-champion-banner{flex-direction:column;align-items:center;gap:.2rem;margin-bottom:.4rem;animation:.9s ease-out rank-champion-pop;display:flex}.rank-champion-banner strong{color:var(--amber);font-size:1.3rem}@keyframes rank-champion-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}.ai-memory{flex-direction:column;gap:.75rem;display:flex}.ai-memory-meta{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.ai-memory-warmup{border-radius:var(--r-sm);background:var(--violet-soft);color:var(--violet);font-size:var(--fs-sm);margin:0;padding:.5rem .7rem;font-weight:600}.ai-memory-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}@media (width<=560px){.ai-memory-cards{grid-template-columns:1fr}}.ai-memory-card{border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border,#0000000f);flex-direction:column;gap:.35rem;padding:.7rem .8rem;display:flex}.ai-memory-card-title{font-size:var(--fs-xs);color:var(--text-muted);font-weight:700}.ai-memory-bar{border-radius:var(--r-xs);background:#7f7f7f2e;height:6px;overflow:hidden}.ai-memory-bar-fill{border-radius:var(--r-xs);background:var(--violet);height:100%;display:block}.ai-memory-bar-fill.is-low{opacity:.45}.ai-memory-card-level{font-size:var(--fs-lg);color:var(--text);font-weight:700}.ai-memory-card-level.is-high{color:var(--violet)}.ai-memory-card-count{font-size:var(--fs-lg);color:var(--text);font-weight:700}.ai-memory-card-detail{font-size:var(--fs-xs);color:var(--text-muted)}.ai-memory-section{font-size:var(--fs-sm);color:var(--text);margin:.2rem 0 0}.ai-memory-empty{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.ai-memory-species{flex-direction:column;gap:.35rem;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ai-memory-species-row{font-size:var(--fs-sm);align-items:center;gap:.55rem;display:flex}.ai-memory-species-name{color:var(--text);min-width:5.5rem;font-weight:700}.ai-memory-species-habit{color:var(--text-muted)}.ai-memory-footer{border-top:1px solid #7f7f7f2e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding-top:.6rem;display:flex}.ai-memory-confirm{font-size:var(--fs-sm);color:var(--text);flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.ai-memory-reset{font-size:var(--fs-xs);border-radius:var(--r-sm);border:1px solid var(--text-muted);color:var(--text);cursor:pointer;background:0 0;padding:.25rem .7rem;font-weight:600}.ai-memory-reset.is-danger{border-color:var(--danger);color:var(--danger)}.battle-log-page{flex-direction:column;gap:1.2rem;width:100%;max-width:980px;display:flex}.battle-log-page>:not(.battle-log-header):not(.modal-overlay){width:100%;max-width:740px;margin-left:auto;margin-right:auto}.battle-log-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.battle-log-header h2{font-family:var(--display);font-size:var(--fs-2xl);margin:0 0 .3rem}.battle-log-header p{color:var(--text-muted);font-size:var(--fs-md);max-width:60ch;margin:0}.battle-video-toggle{border:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;background:0 0;align-self:flex-start;padding:.32rem .65rem;font-weight:500}.battle-video-toggle:hover{border-color:var(--violet);color:var(--violet)}.battle-setup-board{flex-direction:row;justify-content:center;align-items:flex-start;gap:1.6rem;display:flex}.battle-setup-column{flex-direction:column;gap:.8rem;display:flex}.battle-setup-column.is-locked{opacity:.6}.battle-setup-actions{gap:.3rem;width:min(300px,100%);margin-bottom:-.3rem;display:flex}.battle-setup-actions .battle-setup-load-party{white-space:nowrap;text-align:center;flex:auto;min-width:0;padding:.2rem .25rem}.battle-setup-column-title{font-size:var(--fs-md);color:var(--text);flex-wrap:wrap;align-items:center;gap:.25rem .4rem;font-weight:700;display:flex}.battle-setup-column-hint{font-size:var(--fs-xs);color:var(--text-muted);font-weight:500}.battle-ai-toggle{margin-left:auto}.battle-ai-memory-chip{font-size:var(--fs-xs);border:1px solid var(--violet);border-radius:var(--r-pill);background:var(--violet-soft);color:var(--violet);cursor:pointer;align-items:center;gap:.25rem;padding:.2rem .6rem;font-weight:600;display:inline-flex}.battle-ai-memory-chip:hover{background:var(--violet);color:var(--on-color)}.battle-ai-learned-note{font-size:var(--fs-xs);color:var(--text-muted);margin:.35rem 0 0}.battle-setup-load-party{font-size:var(--fs-xs);border:1px solid var(--violet);border-radius:var(--r-sm);background:var(--violet-soft);color:var(--violet);cursor:pointer;padding:.2rem .55rem;font-weight:600}.battle-setup-load-party:hover{background:var(--violet);color:var(--on-color)}.battle-setup-board .party-slot{flex-shrink:0;width:300px}.battle-setup-center{flex-direction:column;flex-shrink:0;align-self:center;align-items:center;gap:.9rem;padding-top:1.6rem;display:flex}.battle-setup-vs{font-family:var(--display);letter-spacing:.06em;color:var(--text-muted);border:2px solid var(--border);border-radius:var(--r-sm);background:var(--surface);-webkit-user-select:none;user-select:none;cursor:pointer;padding:.35rem .9rem;font-size:2rem;font-weight:900;line-height:1;transition:color .15s,border-color .15s,background .15s,transform .1s;transform:skew(-8deg)}.battle-setup-vs:not(:disabled):hover{color:var(--on-color);background:var(--gradient);border-color:#0000}.battle-setup-vs:not(:disabled):active{transform:skew(-8deg)scale(.95)}.battle-setup-vs:disabled{opacity:.4;cursor:not-allowed}.battle-setup-vs-hint{text-align:center;max-width:8rem;font-size:var(--fs-xs);color:var(--text-muted);margin:0}.battle-start-button{background:var(--gradient);color:var(--on-color);border-radius:var(--r-md);font-weight:700;font-size:var(--fs-lg);cursor:pointer;box-shadow:var(--shadow-sm);border:none;padding:.65rem 1.4rem}.battle-start-button:disabled{opacity:.4;cursor:not-allowed}.battle-select{flex-direction:column;align-items:center;gap:1.4rem;display:flex}.battle-select-board{flex-flow:wrap;justify-content:center;gap:2.5rem;display:flex}.battle-select-column{flex-direction:column;gap:.7rem;width:max-content;min-width:240px;display:flex}.battle-select-fixed{border:1px solid var(--violet);border-radius:var(--r-pill);font-size:var(--fs-xs);color:var(--violet);flex-shrink:0;margin-left:auto;padding:.05rem .4rem;font-weight:700}.battle-select-list{flex-direction:column;gap:.5rem;display:flex}.battle-select-mon{border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface);width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));cursor:pointer;text-align:left;font-size:var(--fs-md);align-items:center;gap:.7rem;padding:.6rem .8rem;display:flex}.battle-select-mon:disabled{cursor:default}.battle-select-mon.is-picked{border-color:var(--violet);background:var(--violet-soft)}.battle-select-num{border-radius:var(--r-pill);border:1px dashed var(--border);width:1.5rem;height:1.5rem;font-weight:800;font-size:var(--fs-sm);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.battle-select-num.is-on{background:var(--gradient);color:var(--on-color);border-style:solid;border-color:#0000}.battle-select-mon .avatar-with-item{flex-shrink:0}.battle-select-name{white-space:nowrap;font-weight:600}.battle-select-actions{gap:.8rem;display:flex}.battle-lock-warning{border-radius:var(--r-md);background:var(--danger-bg);color:var(--danger);font-size:var(--fs-sm);margin-top:.5rem;padding:.55rem .8rem;font-weight:600}.battle-board{border-radius:var(--r-xl);grid-template-columns:1fr 1fr;gap:1.2rem;padding:.7rem;transition:background .3s;display:grid}.battle-environment-tags{flex-wrap:wrap;grid-column:1/-1;gap:.5rem;display:flex}.battle-environment-tag{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);font-size:var(--fs-sm);color:var(--text-muted);padding:.2rem .7rem;font-weight:600}.battle-entry-announcements{background:var(--surface-2);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-muted);padding:.5rem .8rem}.battle-fighter{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);padding:.9rem 1rem;position:relative}.battle-fighter.is-winner{border-color:var(--amber);animation:1.5s ease-in-out infinite battle-winner-glow}.battle-fighter.is-winner:after{content:"";filter:blur(1px);pointer-events:none;background:radial-gradient(circle,#fffffff2,#fff0 70%);border-radius:50%;width:44px;height:6px;animation:2.4s linear infinite battle-winner-glint;position:absolute;top:-3px;left:0}@keyframes battle-winner-glow{0%,to{border-color:var(--amber);box-shadow:0 0 0 1px #f2b70580,0 0 10px 1px #f2b70559}50%{border-color:var(--amber-light);box-shadow:0 0 0 1px #ffdd66e6,0 0 22px 5px #f2b70599}}@keyframes battle-winner-glint{0%{opacity:0;left:-44px}12%{opacity:1}50%{opacity:1;left:100%}62%,to{opacity:0;left:calc(100% + 44px)}}@media (prefers-reduced-motion:reduce){.battle-fighter.is-winner{animation:none;box-shadow:0 0 0 1px #f2b70599,0 0 12px 2px #f2b70566}.battle-fighter.is-winner:after{display:none}}.battle-fighter-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem .5rem;margin-bottom:.4rem;display:flex}.battle-fighter-ident{flex:none;align-items:center;gap:.5rem;max-width:100%;display:flex}.battle-fighter-name{font-weight:700}.battle-fighter-fainted{color:var(--danger);font-weight:700}.battle-fighter-mega-tag,.battle-fighter-ai-tag,.battle-fighter-fainted{white-space:nowrap}.battle-fighter-mega-tag{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:.03em;color:var(--on-color);background:var(--gradient);border-radius:var(--r-xs);margin-left:.35rem;padding:.05rem .35rem;font-weight:700}.battle-ai-thinking{vertical-align:middle;align-items:center;gap:3px;margin-left:.4rem;display:inline-flex}.battle-ai-thinking i{background:var(--violet);border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite battle-ai-thinking-dot}.battle-ai-thinking i:nth-child(2){animation-delay:.18s}.battle-ai-thinking i:nth-child(3){animation-delay:.36s}@keyframes battle-ai-thinking-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.battle-ai-thinking i{opacity:.7;animation:none}}.battle-fighter-ai-tag{font-family:var(--display);font-size:var(--fs-xs);letter-spacing:.03em;color:var(--violet);border:1px solid var(--violet);border-radius:var(--r-xs);margin-left:.35rem;padding:.05rem .35rem;font-weight:700}.battle-status-tags{flex-wrap:wrap;flex:8rem;justify-content:flex-end;gap:.3rem;display:flex}.battle-status-tags:empty{display:none}.battle-status-tag{white-space:nowrap;font-size:var(--fs-xs);border-radius:var(--r-pill);padding:.1rem .45rem;font-weight:700}.battle-status-tag.is-major{background:var(--warn-bg);color:var(--warn)}.battle-status-tag.is-volatile{background:var(--violet-soft);color:var(--violet)}.battle-hp-bar{border-radius:var(--r-pill);background:var(--surface-2);width:100%;height:8px;margin-bottom:.2rem;overflow:hidden}.battle-hp-fill{background:var(--safe);height:100%;transition:width .2s}.battle-hp-fill.is-warn{background:var(--amber)}.battle-hp-fill.is-danger{background:var(--danger)}.battle-hp-numbers{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:.6rem}.battle-real-stats{grid-template-columns:repeat(3,1fr);gap:.3rem;margin-bottom:.6rem;display:grid}.battle-real-stat-item{background:var(--surface-2);border-radius:var(--r-sm);font-size:var(--fs-xs);justify-content:space-between;align-items:baseline;gap:.3rem;min-width:0;padding:.22rem .45rem;display:flex}.battle-real-stat-label{color:var(--text-muted);flex-shrink:0}.battle-real-stat-value{font-variant-numeric:tabular-nums;font-weight:600}.battle-real-stat-item.is-boosted{background:var(--violet-soft)}.battle-real-stat-item.is-boosted .battle-real-stat-value{color:var(--violet)}.battle-real-stat-item.is-lowered .battle-real-stat-value{color:var(--text-muted)}.battle-real-stat-stage{font-size:var(--fs-xs);vertical-align:super;margin-left:.12rem;font-weight:700}.battle-roster-icons{grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:.6rem;display:grid}.battle-roster-chip{background:var(--surface-2);border-radius:var(--r-sm);flex-direction:column;align-items:center;gap:.2rem;padding:.4rem .2rem;display:flex}.battle-roster-chip-name{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.battle-roster-chip.is-fainted{opacity:.45}.battle-roster-chip.is-fainted .avatar-with-item{filter:grayscale()}.battle-move-grid{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.battle-move-note{font-size:var(--fs-xs);color:var(--text-muted);margin:.3rem 0 0}.battle-move-button{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.4rem .55rem;display:flex}.battle-move-button.is-selected{border-color:var(--violet);background:var(--violet-soft)}.battle-move-button:disabled{opacity:.4;cursor:not-allowed}.battle-move-button.has-type{color:var(--on-color);text-shadow:0 1px 1px #00000040;border-color:#0000}.battle-move-button.has-type.is-selected{box-shadow:0 0 0 2px var(--violet);border-color:#0000}.battle-move-name{font-size:var(--fs-md);font-weight:600}.battle-move-pp{font-size:var(--fs-xs);color:var(--text-muted)}.battle-move-button.has-type .battle-move-pp{color:#ffffffd9}.battle-struggle-notice{font-size:var(--fs-sm);color:var(--text-muted);background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--r-sm);text-align:center;padding:.55rem .7rem}.battle-result-banner{background:var(--safe-bg);color:var(--safe);border-radius:var(--r-md);align-items:center;gap:1rem;padding:.7rem 1rem;font-weight:700;display:flex}.battle-result-banner.is-draw{background:var(--surface-2);color:var(--text-muted)}.battle-reset-button{border-radius:var(--r-sm);color:inherit;cursor:pointer;background:0 0;border:1px solid;padding:.3rem .8rem;font-weight:600}.battle-turn-log{flex-direction:column;gap:.7rem;display:flex}.battle-turn-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:.6rem .9rem}.battle-turn-title{font-weight:700;font-size:var(--fs-md);color:var(--text-muted);margin-bottom:.3rem}.battle-turn-line{font-size:var(--fs-md);line-height:1.6}.battle-turn-line.is-muted{color:var(--text-muted);font-size:var(--fs-sm)}.battle-turn-line.is-winner{color:var(--safe);font-weight:700}.battle-turn-line.is-fainted{color:var(--danger);font-weight:600}.battle-party-tracker{gap:.35rem;margin:.4rem 0 .55rem;display:flex}.battle-party-chip{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);min-width:0;font-size:var(--fs-xs);flex-direction:column;flex:1;gap:.15rem;padding:.3rem .4rem;display:flex}.battle-party-chip.is-active{border-color:var(--violet);background:var(--violet-soft)}.battle-party-chip.is-fainted{opacity:.45}.battle-party-chip-name{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.battle-party-chip-hp{color:var(--text-muted)}.battle-party-chip-bar{background:var(--border);border-radius:2px;height:3px;display:block;overflow:hidden}.battle-party-chip-fill{background:var(--ok,var(--safe));height:100%;display:block}.battle-party-chip-fill.is-warn{background:var(--amber)}.battle-party-chip-fill.is-danger{background:var(--danger)}.battle-input-toggle{gap:.3rem;margin-bottom:.4rem;display:flex}.battle-input-hint.is-muted{font-size:var(--fs-sm);color:var(--text-muted,var(--text-muted));margin-bottom:.4rem;font-weight:600}.battle-mega-toggle{-webkit-user-select:none;user-select:none;gap:.4rem;margin:0 auto .5rem}.battle-mega-toggle-icon{object-fit:contain;flex-shrink:0;width:1.1rem;height:1.1rem}.battle-input-toggle-btn{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-sm);cursor:pointer;flex:1;padding:.25rem .5rem;font-weight:600}.battle-input-toggle-btn.is-on{border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}.battle-switch-panel{border:1px solid var(--danger);border-radius:var(--r-sm);background:color-mix(in srgb, var(--danger) 8%, transparent);margin-top:5px;padding:.5rem}.battle-switch-panel-title{font-size:var(--fs-sm);margin-bottom:.4rem;font-weight:700}.battle-switch-list{flex-direction:column;gap:.3rem;display:flex}.battle-switch-button{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-sm);cursor:pointer;text-align:left;padding:.4rem .55rem}.battle-switch-button.is-selected{border-color:var(--violet);background:var(--violet-soft)}@media (width<=760px){.battle-board{grid-template-columns:1fr;padding:.4rem}.battle-setup-board{flex-direction:column;align-items:center;gap:1rem}.battle-setup-board .party-slot,.battle-setup-column{width:100%;max-width:340px}.battle-setup-center{order:1;align-self:center;padding-top:0}.battle-setup-column:last-of-type{order:0}.battle-select-board{gap:1.2rem}.battle-select-column{width:100%;min-width:0;max-width:340px}.battle-select-name{white-space:normal;min-width:0}.battle-log-header h2{font-size:var(--fs-xl)}}.sample-party-filters{border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);gap:.25rem;margin-bottom:.5rem;padding:.25rem;display:inline-flex}.sample-party-filters button{font:inherit;font-size:var(--fs-sm);border-radius:var(--r-pill);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.3rem .85rem}.sample-party-filters button.is-active{background:var(--gradient);color:var(--on-color);font-weight:600}.sample-party-hint{font-size:var(--fs-xs);color:var(--text-muted);margin:0 0 .7rem;line-height:1.5}.sample-party-item{align-items:flex-start}.sample-party-tag{font-size:var(--fs-xs);border-radius:var(--r-pill);vertical-align:middle;margin-left:.45rem;padding:.1rem .45rem;font-weight:600}.sample-party-tag.is-real{background:var(--violet-soft);color:var(--violet)}.sample-party-tag.is-textbook{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.sample-party-style{font-size:var(--fs-xs);color:var(--text-muted);margin-left:.4rem;font-weight:400}.sample-party-desc{font-size:var(--fs-xs);color:var(--text-muted);margin-top:.2rem;line-height:1.45;display:block}.sample-party-mons{flex-wrap:wrap;gap:.3rem;margin-top:.45rem;display:flex}.sample-party-save{font-size:var(--fs-sm);flex-direction:column;gap:.45rem;margin-bottom:.8rem;display:flex}.sample-party-save .preset-save-row{margin-bottom:0}.sample-party-save-group{flex:none;width:7.5rem}.sample-party-save-note{color:var(--text-muted);font-size:var(--fs-xs)}.sample-party-backup{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.7rem;display:flex}.sample-party-backup button,.sample-party-backup label{font:inherit;font-size:var(--fs-sm);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;padding:.3rem .85rem}.sample-party-backup button:disabled{opacity:.5;cursor:not-allowed}.sample-party-backup span{font-size:var(--fs-xs);color:var(--text-muted)}.tc{flex-direction:column;flex:1;min-height:0;display:flex}.tc-title{font-size:var(--fs-lg);margin:0 0 .35rem}.tc-legend{font-size:var(--fs-xs);color:var(--text-muted);text-align:center;margin:0 0 .6rem}.tc-table{table-layout:fixed;border-collapse:collapse;flex:1;width:100%}.tc-table th,.tc-table td{text-align:center;vertical-align:middle;height:1.2rem;font-size:var(--fs-xs);border:1px solid var(--border);padding:0}.tc-table th:first-child{width:1.7rem}.tc-table th.is-hl,.tc-table td.is-hl{background:var(--violet-soft)}.tc-icon{line-height:0;display:block}.tc-icon .type-badge{width:1rem;height:1rem;margin:0 auto;display:block}.tc-chip{width:100%;height:100%;color:var(--on-color);font-size:var(--fs-xs);justify-content:center;align-items:center;font-weight:700;display:none}.tc-table td.is-super,.tc-key.is-super{background:var(--safe-bg);color:var(--safe);font-weight:700}.tc-table td.is-resist,.tc-key.is-resist{background:var(--danger-bg);color:var(--danger)}.tc-table td.is-immune,.tc-key.is-immune{background:var(--text);color:var(--bg);font-weight:700}.tc-table td.is-hl.is-super{background:var(--safe-bg)}.tc-table td.is-hl.is-resist{background:var(--danger-bg)}.tc-table td.is-hl.is-immune{background:var(--text)}.tc-key{border-radius:var(--r-xs);text-align:center;min-width:1.2rem;padding:0 .25rem;display:inline-block}@media (width<=760px){.tc-table th,.tc-table td{height:1.1rem;font-size:var(--fs-xs)}.tc-table th:first-child{width:1.1rem}.tc-icon{display:none}.tc-chip{display:flex}.tc-legend{font-size:var(--fs-xs)}}.pokedex-page{width:100%;max-width:980px}.pokedex-page-header{margin-bottom:1.2rem}.pokedex-page-header h2{font-size:var(--fs-2xl);margin-bottom:.3rem}.pokedex-page-header p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.pokedex-board{align-items:flex-start;gap:1rem;display:flex}.pokedex-list-panel{background:var(--surface);width:250px;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);flex-direction:column;flex-shrink:0;gap:.6rem;max-height:680px;padding:.75rem;display:flex}.pokedex-search{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);flex-shrink:0;padding:.55rem .75rem}.pokedex-search:focus{border-color:var(--glass-focus-border)}.pokedex-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pokedex-list-item{border-radius:var(--r-md);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:.55rem;width:100%;padding:.4rem .5rem;display:flex}.pokedex-list-item:hover{background:var(--surface-2)}.pokedex-list-item.is-active{border-color:var(--violet);background:var(--violet-soft)}.pokedex-list-avatar{width:28px;height:28px;color:var(--on-color);font-size:.8rem;font-weight:700;font-family:var(--display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pokedex-list-name{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.pokedex-list-mega{font-size:var(--fs-xs);color:var(--violet);flex-shrink:0;font-weight:600}.pokedex-list-empty{text-align:center;color:var(--text-muted);font-size:var(--fs-md);padding:1rem}.pokedex-detail-column{flex-direction:column;flex:1;gap:1rem;min-width:0;display:flex}@media (width>=761px){.pokedex-board.is-fit{align-items:stretch}.pokedex-board.is-fit .pokedex-detail-column{contain:size;min-height:660px}.pokedex-chart-card{flex-direction:column;flex:1;min-height:0;display:flex}}.pokedex-detail-panel{background:var(--surface);min-width:0;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);padding:1.25rem 1.4rem}.pokedex-detail-empty{color:var(--text-muted);text-align:center;font-size:var(--fs-md);padding:3rem 0}.pokedex-detail-head{align-items:center;gap:.9rem;margin-bottom:1.3rem;display:flex}.pokedex-detail-avatar{width:56px;height:56px;color:var(--on-color);font-size:1.35rem;font-weight:700;font-family:var(--display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pokedex-detail-head h3{font-size:var(--fs-xl);margin-bottom:.35rem}.pokedex-detail-types{gap:.35rem;display:flex}.pokedex-detail-section{margin-bottom:1.3rem}.pokedex-detail-section:last-child{margin-bottom:0}.pokedex-detail-section h4{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);align-items:baseline;gap:.45rem;margin-bottom:.6rem;display:flex}.pokedex-section-count{text-transform:none;letter-spacing:0;font-weight:400;font-size:var(--fs-xs)}.pokedex-stat-bars{flex-direction:column;gap:.35rem;display:flex}.pokedex-stat-row{font-size:var(--fs-sm);grid-template-columns:3.2em 1fr 2.6em;align-items:center;gap:.5rem;display:grid}.pokedex-stat-label{color:var(--text-muted)}.pokedex-stat-track{border-radius:var(--r-xs);background:var(--surface-2);height:8px;overflow:hidden}.pokedex-stat-fill{border-radius:var(--r-xs);background:var(--gradient);height:100%}.pokedex-stat-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.pokedex-stat-total{font-size:var(--fs-sm);color:var(--text-muted);justify-content:flex-end;gap:.4rem;margin-top:.15rem;display:flex}.pokedex-stat-total strong{color:var(--text)}.pokedex-defense-empty{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.pokedex-defense-groups{flex-direction:column;gap:.45rem;display:flex}.pokedex-defense-row{align-items:center;gap:.6rem;display:flex}.pokedex-defense-label{font-size:var(--fs-xs);border-radius:var(--r-xs);text-align:center;flex-shrink:0;width:4.6em;padding:.1rem .5rem;font-weight:700}.pokedex-defense-label.is-quad{color:var(--on-color);background:var(--danger-strong)}.pokedex-defense-label.is-weak{color:var(--danger);background:var(--danger-bg)}.pokedex-defense-label.is-resist{color:var(--safe);background:var(--safe-bg)}.pokedex-defense-label.is-quadresist{color:var(--on-color);background:var(--safe)}.pokedex-defense-label.is-immune{color:var(--text-muted);background:var(--surface-2)}.pokedex-defense-badges{flex-wrap:wrap;gap:.3rem;display:flex}.pokedex-ability-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pokedex-ability-list li{background:var(--surface-2);border-radius:var(--r-md);padding:.55rem .8rem}.pokedex-ability-list strong{font-size:var(--fs-md)}.pokedex-hidden-tag{font-size:var(--fs-xs);color:var(--violet);border:1px solid var(--violet);border-radius:var(--r-xs);vertical-align:middle;margin-left:.45rem;padding:.05rem .35rem;font-weight:600}.pokedex-ability-desc{color:var(--text-muted);font-size:var(--fs-sm);margin:.3rem 0 0;line-height:1.45}.pokedex-mega-list{flex-direction:column;gap:.8rem;display:flex}.pokedex-mega-block{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--violet-soft);padding:.8rem .9rem}.pokedex-mega-head{align-items:center;gap:.6rem;margin-bottom:.55rem;display:flex}.pokedex-mega-avatar{flex-shrink:0}.pokedex-mega-tag{font-size:var(--fs-xs);color:var(--violet);border:1px solid var(--violet);border-radius:var(--r-xs);padding:.1rem .45rem;font-weight:700}.pokedex-mega-types{gap:.3rem;display:flex}.pokedex-mega-ability{font-size:var(--fs-md);flex-direction:column;gap:.15rem;margin-bottom:.65rem;display:flex}.pokedex-meta-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.pokedex-form-tabs{flex-wrap:wrap;gap:.35rem;margin:.2rem 0 .6rem;display:flex}.pokedex-form-tab{font-size:var(--fs-sm);border-radius:var(--r-pill);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;padding:.28rem .7rem}.pokedex-form-tab:hover{border-color:var(--violet)}.pokedex-form-tab.is-active{border-color:var(--violet);background:var(--violet-soft);color:var(--violet);font-weight:700}.pokedex-learnset{flex-wrap:wrap;gap:.35rem;display:flex}.pokedex-move-chip{font-size:var(--fs-xs);border-radius:var(--r-pill);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;padding:.22rem .55rem}.pokedex-move-chip:hover{border-color:var(--violet);background:var(--violet-soft);color:var(--violet)}@media (width<=760px){.pokedex-board{flex-direction:column;align-items:stretch}.pokedex-list-panel{width:100%;max-height:320px}.pokedex-detail-empty{min-height:0;padding:.5rem 0 1rem}}.movedex-page{width:100%;max-width:980px}.movedex-page-header{margin-bottom:1.2rem}.movedex-page-header h2{font-size:var(--fs-2xl);margin-bottom:.3rem}.movedex-page-header p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.movedex-controls{flex-wrap:wrap;gap:.6rem;margin-bottom:.6rem;display:flex}.movedex-search{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);min-width:12em;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);flex:1;padding:.55rem .75rem}.movedex-search:focus,.movedex-type-select:focus,.movedex-sort-select:focus{border-color:var(--glass-focus-border)}.movedex-type-select{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);padding:.55rem .75rem}.movedex-category-tabs{background:var(--surface-2);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-md);box-shadow:var(--glass-shadow);gap:.3rem;padding:.25rem;display:flex}.movedex-category-tab{color:var(--text-muted);font-size:var(--fs-sm);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;padding:.35rem .7rem;font-weight:600}.movedex-category-tab:hover{color:var(--text)}.movedex-category-tab.is-active{background:var(--surface);color:var(--violet);box-shadow:var(--shadow-sm)}.movedex-sort-bar{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.movedex-count{color:var(--text-muted);font-size:var(--fs-sm)}.movedex-sort-controls{align-items:center;gap:.4rem;display:flex}.movedex-sort-select{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-sm);padding:.4rem .6rem}.movedex-sort-dir{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);width:2rem;height:2rem;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--violet);font-size:var(--fs-xs);cursor:pointer;justify-content:center;align-items:center;display:flex}.movedex-sort-dir:hover{border-color:var(--violet)}.movedex-panel{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);padding:1rem}.movedex-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.9rem;max-height:680px;display:grid;overflow-y:auto}.movedex-card{background:var(--surface-2);border:1px solid var(--glass-border);border-radius:var(--r-lg);flex-direction:column;gap:.3rem;padding:.65rem .75rem;display:flex}.movedex-card.is-highlighted{background:var(--violet-soft);outline:2px solid var(--violet);outline-offset:-2px}.movedex-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.movedex-card-name{font-weight:600;font-size:var(--fs-md)}.movedex-card-notype{color:var(--text-muted);font-size:var(--fs-sm)}.movedex-classification{font-size:var(--fs-xs);color:var(--violet)}.movedex-effect{color:var(--text-muted);font-size:var(--fs-xs);margin:0;line-height:1.4}.movedex-card-stats{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:.3rem .5rem;margin-top:.3rem;padding-top:.5rem;display:grid}.movedex-stat{flex-direction:column;gap:.1rem;display:flex}.movedex-stat-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.movedex-stat-value{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.movedex-stat-value.is-priority{color:var(--violet);font-weight:700}.movedex-empty{text-align:center;color:var(--text-muted);font-size:var(--fs-md);grid-column:1/-1;padding:2rem}@media (width<=760px){.movedex-grid{grid-template-columns:1fr}.movedex-sort-bar{flex-wrap:wrap}}.itemdex-page{width:100%;max-width:980px}.itemdex-page-header{margin-bottom:1.2rem}.itemdex-page-header h2{font-size:var(--fs-2xl);margin-bottom:.3rem}.itemdex-page-header p{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.itemdex-board{align-items:flex-start;gap:1rem;display:flex}.itemdex-list-panel{background:var(--surface);width:250px;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);flex-direction:column;flex-shrink:0;gap:.6rem;max-height:680px;padding:.75rem;display:flex}.itemdex-search{border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--surface-2);width:100%;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);color:var(--text);font-size:var(--fs-md);flex-shrink:0;padding:.55rem .75rem}.itemdex-search:focus{border-color:var(--glass-focus-border)}.itemdex-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.itemdex-list-item{border-radius:var(--r-md);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:.55rem;width:100%;padding:.4rem .5rem;display:flex}.itemdex-list-item:hover{background:var(--surface-2)}.itemdex-list-item.is-active{border-color:var(--violet);background:var(--violet-soft)}.itemdex-list-icon{flex-shrink:0}.itemdex-list-name{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.itemdex-list-mega{font-size:var(--fs-xs);color:var(--violet);flex-shrink:0;font-weight:600}.itemdex-list-empty{text-align:center;color:var(--text-muted);font-size:var(--fs-md);padding:1rem}.itemdex-detail-panel{background:var(--surface);min-width:0;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow);flex:1;padding:1.25rem 1.4rem}.itemdex-detail-empty{color:var(--text-muted);text-align:center;font-size:var(--fs-md);padding:3rem 0}.itemdex-detail-head{align-items:center;gap:.9rem;margin-bottom:1.3rem;display:flex}.itemdex-detail-avatar{width:56px;height:56px;color:var(--on-color);font-size:1.35rem;font-weight:700;font-family:var(--display);background:var(--gradient);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.itemdex-detail-avatar.has-image{background:0 0}.itemdex-detail-avatar-img{object-fit:contain;width:46px;height:46px}.itemdex-detail-head h3{font-size:var(--fs-xl);margin-bottom:.35rem}.itemdex-category-badge{font-size:var(--fs-xs);border-radius:var(--r-xs);border:1px solid var(--violet);color:var(--violet);padding:.1rem .5rem;font-weight:600;display:inline-block}.itemdex-detail-section{margin-bottom:1.3rem}.itemdex-detail-section:last-child{margin-bottom:0}.itemdex-detail-section h4{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.6rem}.itemdex-description{font-size:var(--fs-md);margin:0;line-height:1.55}.itemdex-description-empty{color:var(--text-muted)}.itemdex-mega-block{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--violet-soft);padding:.8rem .9rem}.itemdex-mega-head{align-items:center;gap:.6rem;display:flex}.itemdex-mega-pokemon{font-size:var(--fs-md);font-weight:600}.itemdex-mega-tag{font-size:var(--fs-xs);color:var(--violet);border:1px solid var(--violet);border-radius:var(--r-xs);padding:.1rem .45rem;font-weight:700}.itemdex-mega-types{gap:.3rem;display:flex}.itemdex-mega-ability{font-size:var(--fs-md);flex-direction:column;gap:.15rem;margin-top:.65rem;display:flex}.itemdex-meta-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.itemdex-ability-desc{color:var(--text-muted);font-size:var(--fs-sm);margin:.3rem 0 0;line-height:1.45}@media (width<=760px){.itemdex-board{flex-direction:column;align-items:stretch}.itemdex-list-panel{width:100%;max-height:320px}.itemdex-detail-empty{justify-content:center;align-items:center;min-height:320px;padding:0;display:flex}}.app-footer{text-align:center;width:100%;color:var(--text-muted);margin-top:1rem;padding:.55rem 1rem}.app-footer-legal{max-width:24rem;font-size:var(--fs-xs);letter-spacing:.01em;opacity:.8;margin:0 auto;line-height:1.55}@media (width<=760px){.app-footer{margin-top:.75rem;padding:.5rem .85rem}.app-footer-legal{font-size:var(--fs-xs)}}.app-shell{min-height:100svh}.app-body{margin-left:calc(64px + env(safe-area-inset-left,0px));padding-right:env(safe-area-inset-right,0px);flex-direction:column;min-height:100svh;display:flex}.app-main{flex:1;justify-content:center;padding:2rem clamp(1.25rem,4vw,3rem);display:flex}.rank-leave-note{margin:0 0 .9rem}.rank-leave-actions{justify-content:flex-end;gap:.5rem;display:flex}@media (width<=760px){.app-body{padding-left:env(safe-area-inset-left,0px);padding-bottom:var(--bottom-nav-total);margin-left:0}.app-main{padding:1rem .85rem 1.5rem}}
