:root{color-scheme:light;--page: #f9f9f7;--surface-1: #fcfcfb;--surface-2: #f2f2ef;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #898781;--gridline: #e1e0d9;--baseline: #c3c2b7;--border: rgba(11, 11, 11, .1);--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-7: #4a3aa7;--series-8: #e34948;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--team-mystic: #2a78d6;--team-valor: #e34948;--team-instinct: #eda100;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(11, 11, 11, .06), 0 6px 20px rgba(11, 11, 11, .05);--font: system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme: dark){:root:where(:not([data-theme=light])){color-scheme:dark;--page: #0d0d0d;--surface-1: #1a1a19;--surface-2: #232321;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--baseline: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35)}}:root[data-theme=dark]{color-scheme:dark;--page: #0d0d0d;--surface-1: #1a1a19;--surface-2: #232321;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--baseline: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--page);color:var(--text-primary);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;flex-shrink:0;background:var(--surface-1);border-right:1px solid var(--border);padding:20px 16px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px}.brand img{width:30px;height:30px}.brand-name{font-weight:700;font-size:15px;line-height:1.1}.brand-sub{font-size:11px;color:var(--text-muted)}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer}.nav-link:hover{background:var(--surface-2);color:var(--text-primary)}.nav-link.active{background:color-mix(in srgb,var(--series-1) 14%,transparent);color:var(--series-1)}.nav-link svg{width:18px;height:18px}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:10px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-1) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.topbar h1{font-size:19px}.topbar-sub{font-size:12.5px;color:var(--text-muted);margin-top:2px}.content{padding:24px 28px 48px}.license-chip{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-family:ui-monospace,SFMono-Regular,monospace;background:var(--surface-2);border:1px solid var(--border);padding:5px 10px;border-radius:999px;color:var(--text-secondary)}.license-chip b{color:var(--text-primary);font-weight:600}.license-chip svg{width:14px;height:14px}.grid{display:grid;gap:16px}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.card-title{font-size:14px;font-weight:600}.card-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.stat{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}.stat-label{font-size:12.5px;color:var(--text-muted);display:flex;align-items:center;gap:7px}.stat-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center}.stat-icon svg{width:15px;height:15px}.stat-value{font-size:27px;font-weight:700;margin-top:10px;letter-spacing:-.02em}.stat-sub{font-size:12px;color:var(--text-secondary);margin-top:3px}.delta-up{color:var(--good)}.delta-down{color:var(--critical)}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.input,.select{font:inherit;font-size:13.5px;background:var(--surface-1);border:1px solid var(--border);color:var(--text-primary);padding:8px 11px;border-radius:var(--radius-sm);outline:none}.input:focus,.select:focus{border-color:var(--series-1);box-shadow:0 0 0 3px color-mix(in srgb,var(--series-1) 18%,transparent)}.input::placeholder{color:var(--text-muted)}.search{min-width:220px}.chip-toggle{font:inherit;font-size:13px;cursor:pointer;background:var(--surface-1);border:1px solid var(--border);color:var(--text-secondary);padding:8px 12px;border-radius:999px}.chip-toggle.on{background:color-mix(in srgb,var(--series-1) 15%,transparent);border-color:color-mix(in srgb,var(--series-1) 45%,transparent);color:var(--series-1)}.btn{font:inherit;font-size:14px;font-weight:600;cursor:pointer;background:var(--series-1);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-sm)}.btn:hover{filter:brightness(1.05)}.btn:disabled{opacity:.6;cursor:default}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface-2)}.segmented{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px}.segmented button{font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;border:none;background:transparent;color:var(--text-secondary);padding:6px 13px;border-radius:999px}.segmented button.active{background:var(--surface-1);color:var(--text-primary);box-shadow:var(--shadow)}.table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border)}table.data{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--surface-1)}table.data th{text-align:left;font-weight:600;font-size:12px;color:var(--text-muted);padding:11px 14px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface-1);white-space:nowrap}table.data td{padding:11px 14px;border-bottom:1px solid var(--gridline);vertical-align:middle}table.data tr:last-child td{border-bottom:none}table.data tr:hover td{background:var(--surface-2)}.num{font-variant-numeric:tabular-nums;text-align:right}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;border:1px solid var(--border)}.badge-shiny{color:var(--series-4);background:color-mix(in srgb,var(--series-4) 15%,transparent)}.badge-lucky{color:var(--series-5);background:color-mix(in srgb,var(--series-5) 15%,transparent)}.badge-hundo{color:var(--good);background:color-mix(in srgb,var(--good) 15%,transparent)}.rarity{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;text-transform:capitalize}.rarity-common{color:var(--text-secondary);background:var(--surface-2)}.rarity-uncommon{color:var(--series-3);background:color-mix(in srgb,var(--series-3) 14%,transparent)}.rarity-rare{color:var(--series-1);background:color-mix(in srgb,var(--series-1) 14%,transparent)}.rarity-legendary{color:var(--series-7);background:color-mix(in srgb,var(--series-7) 16%,transparent)}.rarity-mythical{color:var(--series-2);background:color-mix(in srgb,var(--series-2) 14%,transparent)}.iv-bar{position:relative;width:62px;height:6px;background:var(--gridline);border-radius:999px;overflow:hidden;display:inline-block;vertical-align:middle}.iv-bar>span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 20% -10%,color-mix(in srgb,var(--series-1) 18%,transparent),transparent 60%),radial-gradient(1000px 500px at 90% 110%,color-mix(in srgb,var(--series-8) 14%,transparent),transparent 55%),var(--page)}.login-card{width:100%;max-width:400px;background:var(--surface-1);border:1px solid var(--border);border-radius:16px;padding:32px;box-shadow:var(--shadow)}.login-card h2{font-size:21px;margin-bottom:4px}.login-card p.sub{font-size:13.5px;color:var(--text-secondary);margin:0 0 22px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:13px;font-weight:600;color:var(--text-secondary)}.field .input{width:100%;font-family:ui-monospace,SFMono-Regular,monospace;letter-spacing:.05em}.login-error{font-size:13px;color:var(--critical);margin:-4px 0 14px;display:flex;gap:6px;align-items:center}.login-hint{font-size:12px;color:var(--text-muted);margin-top:18px;text-align:center}.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--gridline);border-top-color:var(--series-1);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-screen{min-height:100vh;display:grid;place-items:center}.loading-block{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:14px;padding:40px;justify-content:center}.section-title{font-size:15px;font-weight:650;margin:26px 0 12px}.recharts-cartesian-axis-tick text{fill:var(--text-muted);font-size:11.5px}.recharts-tooltip-wrapper{outline:none}.tooltip{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:10px 12px;box-shadow:var(--shadow);font-size:12.5px}.tooltip .t-title{font-weight:600;margin-bottom:6px}.tooltip .t-row{display:flex;align-items:center;gap:8px}.tooltip .t-dot{width:9px;height:9px;border-radius:3px}.tooltip .t-val{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:600}.heatmap{display:grid;grid-template-columns:34px repeat(7,1fr);gap:4px}.heatmap .hm-cell{aspect-ratio:1;border-radius:5px;border:1px solid var(--border)}.heatmap .hm-label{font-size:11px;color:var(--text-muted);display:grid;place-items:center}.legend-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:3px}.empty{text-align:center;color:var(--text-muted);font-size:14px;padding:48px 20px}.acct{position:relative}.acct-btn{width:100%;display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 11px;color:inherit;font:inherit;text-align:left}.acct-btn:hover{border-color:color-mix(in srgb,var(--series-1) 40%,var(--border))}.acct-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.acct-meta{display:flex;flex-direction:column;min-width:0;flex:1}.acct-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acct-sub{font-size:10.5px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acct-menu{position:absolute;bottom:calc(100% + 8px);left:0;right:0;z-index:40;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px}.acct-menu-head{font-size:10.5px;color:var(--text-muted);padding:6px 8px 8px;text-transform:uppercase;letter-spacing:.04em}.acct-item{width:100%;display:flex;align-items:center;gap:10px;background:transparent;border:none;color:inherit;font:inherit;padding:8px;border-radius:7px;cursor:pointer;text-align:left}.acct-item:hover{background:var(--surface-2)}.acct-item.active{background:color-mix(in srgb,var(--series-1) 12%,transparent);color:var(--series-1)}.acct-item.active .acct-sub{color:color-mix(in srgb,var(--series-1) 70%,var(--text-muted))}.acct-item svg{flex-shrink:0}.sprite{display:inline-grid;place-items:center;flex-shrink:0;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;overflow:hidden}.sprite img{display:block;image-rendering:auto;object-fit:contain}.sprite-fallback{font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums}@media (max-width: 900px){.grid.cols-4{grid-template-columns:repeat(2,1fr)}.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}.sidebar{display:none}}
