*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: rgba(10, 14, 20, .75);--bg-secondary: rgba(18, 24, 34, .7);--bg-card: rgba(22, 30, 44, .65);--bg-card-hover: rgba(28, 38, 55, .75);--border-subtle: rgba(180, 155, 110, .1);--border-glow: rgba(200, 175, 120, .2);--accent-gold: #c8a878;--accent-gold-bright: #e0c090;--accent-blue: #5b8def;--accent-blue-dim: #3a5f9f;--accent-cyan: #4ecdc4;--text-primary: #e6e1d8;--text-secondary: #9a948c;--text-muted: #6a6560;--status-win: #7ec87e;--status-lose: #c85a5a;--status-unknown: #6b7b8d;--status-warning: #d4a843;--font-title: "Georgia", "Noto Serif SC", serif;--font-body: -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:#0a0e14;color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;inset:0;background:url(../resources/%E8%83%8C%E6%99%AF.jpg) center/cover no-repeat;filter:brightness(.55) saturate(.9);z-index:-2}body:after{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 80% 50% at 50% 30%,transparent 0%,rgba(5,8,15,.5) 100%),linear-gradient(180deg,#05080f33,#0a0e1459 60%,#05080f80);pointer-events:none;z-index:-1}.navbar{position:sticky;top:0;z-index:100;background:#080c12b3;backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border-bottom:1px solid rgba(180,155,110,.12);padding:0 2rem;height:60px;display:flex;align-items:center;justify-content:space-between}.navbar-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--accent-gold);font-family:var(--font-title);font-size:1.2rem;font-weight:700;letter-spacing:.02em}.navbar-brand .brand-icon{width:32px;height:32px;background:linear-gradient(135deg,var(--accent-gold),var(--accent-blue-dim));border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1rem}.navbar-links{display:flex;align-items:center;gap:.25rem;list-style:none}.navbar-links a{color:var(--text-secondary);text-decoration:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;transition:all .2s ease}.navbar-links a:hover,.navbar-links a.active{color:var(--text-primary);background:#c8af7814}.navbar-links a.active{color:var(--accent-gold)}.mobile-menu-btn{display:none;background:none;border:1px solid var(--border-subtle);color:var(--text-secondary);padding:.4rem;border-radius:6px;cursor:pointer;font-size:1.2rem}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1}.hero{text-align:center;padding:5rem 0 3rem}.hero-badge-row{display:flex;justify-content:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:20px;font-size:.75rem;font-weight:500;border:1px solid;letter-spacing:.02em}.badge-gold{color:var(--accent-gold);border-color:#c8af784d;background:#c8af780f}.badge-blue{color:var(--accent-blue);border-color:#5b8def4d;background:#5b8def0f}.badge-green{color:var(--status-win);border-color:#7ec87e4d;background:#7ec87e0f}.badge .badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.hero h1{font-family:var(--font-title);font-size:2.8rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;letter-spacing:.03em;line-height:1.3;text-shadow:0 2px 20px rgba(0,0,0,.6),0 0 60px rgba(20,30,50,.4)}.hero h1 .highlight{background:linear-gradient(135deg,var(--accent-gold-bright),var(--accent-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.15rem;color:var(--text-secondary);max-width:600px;margin:0 auto 2rem;line-height:1.7}.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:8px;font-size:.95rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:1px solid transparent;transition:all .25s ease;text-decoration:none;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--accent-gold),#b89860);color:#0d1117;border-color:var(--accent-gold);box-shadow:0 0 20px #c8af7826}.btn-primary:hover{background:linear-gradient(135deg,var(--accent-gold-bright),var(--accent-gold));box-shadow:0 0 30px #c8af7840;transform:translateY(-1px)}.btn-secondary{background:transparent;color:var(--text-secondary);border-color:var(--border-subtle)}.btn-secondary:hover{color:var(--text-primary);border-color:var(--border-glow);background:#c8af780d}.btn-ghost{background:transparent;color:var(--accent-blue);border:none;padding:.5rem .75rem}.btn-ghost:hover{color:var(--accent-blue);text-decoration:underline}.btn-sm{padding:.5rem 1rem;font-size:.85rem}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.upload-dropzone{border:2px dashed rgba(200,175,120,.2);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;position:relative}.upload-dropzone:hover,.upload-dropzone.dragover{border-color:var(--accent-gold);background:#c8af7808}.upload-dropzone.dragover{box-shadow:inset 0 0 30px #c8af780d}.upload-dropzone.has-file{border-color:var(--status-win);border-style:solid;background:#7ec87e08}.upload-icon{font-size:2.5rem;margin-bottom:1rem;opacity:.6}.upload-dropzone h3{font-size:1.1rem;color:var(--text-primary);margin-bottom:.5rem}.upload-dropzone p{font-size:.85rem;color:var(--text-muted)}.upload-dropzone .file-types{margin-top:.75rem;font-size:.8rem;color:var(--text-muted)}.upload-dropzone .file-types span{color:var(--accent-gold);font-family:var(--font-mono);background:#c8af7814;padding:.15rem .5rem;border-radius:4px}#file-input{display:none}.file-info{display:none;margin-top:1.5rem;padding:1rem 1.25rem;background:#c8af780a;border:1px solid var(--border-subtle);border-radius:10px}.file-info.visible{display:block}.file-info-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.file-info-name{font-family:var(--font-mono);font-size:.9rem;color:var(--accent-gold);word-break:break-all}.file-info-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted);margin-top:.5rem}.file-info-meta span{display:flex;align-items:center;gap:.3rem}.file-info-validate{margin-top:.75rem;padding:.5rem .75rem;border-radius:6px;font-size:.8rem;display:flex;align-items:center;gap:.5rem}.file-info-validate.valid{background:#7ec87e14;color:var(--status-win)}.file-info-validate.invalid{background:#c85a5a14;color:var(--status-lose)}.upload-actions{display:none;margin-top:1.5rem;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.upload-actions.visible{display:flex}.upload-options{display:flex;align-items:center;gap:1rem}.toggle-wrapper{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.toggle{position:relative;width:40px;height:22px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:11px;cursor:pointer;transition:all .3s ease}.toggle.active{background:#c8af7833;border-color:var(--accent-gold)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--text-muted);border-radius:50%;transition:all .3s ease}.toggle.active:after{left:20px;background:var(--accent-gold)}.progress-section{display:none;padding:2rem 0 3rem}.progress-section.visible{display:block}.progress-card{background:#161e2c8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);border-radius:16px;padding:2rem 2.5rem}.progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.progress-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.progress-percent{font-family:var(--font-mono);font-size:1.1rem;color:var(--accent-gold);font-weight:700}.progress-bar-track{width:100%;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden;margin-bottom:1rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-gold),var(--accent-gold-bright));border-radius:4px;width:0%;transition:width .5s ease;position:relative}.progress-bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;width:30px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2));animation:shimmer 1.5s infinite}@keyframes shimmer{0%{opacity:0}50%{opacity:1}to{opacity:0}}.progress-stages{display:flex;flex-direction:column;gap:.6rem}.progress-stage{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:var(--text-muted);transition:color .3s ease}.progress-stage.active{color:var(--accent-gold)}.progress-stage.done{color:var(--status-win)}.progress-stage .stage-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;border:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.progress-stage.active .stage-icon{border-color:var(--accent-gold);background:#c8af781a;animation:pulse 1.5s infinite}.progress-stage.done .stage-icon{border-color:var(--status-win);background:#7ec87e1a;color:var(--status-win)}@keyframes pulse{0%,to{box-shadow:0 0 #c8af7833}50%{box-shadow:0 0 0 6px #c8af7800}}.progress-error{display:none;margin-top:1rem;padding:.75rem 1rem;background:#c85a5a14;border:1px solid rgba(200,90,90,.2);border-radius:8px;font-size:.85rem;color:var(--status-lose)}.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-subtle),transparent);margin:1rem 0}.info-section{padding:3rem 0}.section-title{font-family:var(--font-title);font-size:1.6rem;color:var(--text-primary);text-align:center;margin-bottom:.5rem}.section-subtitle{text-align:center;color:var(--text-muted);font-size:.9rem;margin-bottom:2.5rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.info-card{background:#161e2c80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-subtle);border-radius:12px;padding:1.75rem;transition:all .3s ease}.info-card:hover{border-color:var(--border-glow);background:var(--bg-card-hover);transform:translateY(-2px)}.info-card-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1rem}.info-card-icon.gold{background:#c8af781a;color:var(--accent-gold)}.info-card-icon.blue{background:#5b8def1a;color:var(--accent-blue)}.info-card-icon.cyan{background:#4ecdc41a;color:var(--accent-cyan)}.info-card-icon.green{background:#7ec87e1a;color:var(--status-win)}.info-card h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.info-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.info-card .tag-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.info-card .tag{font-size:.75rem;padding:.2rem .6rem;border-radius:4px;background:#c8af780f;color:var(--text-secondary);border:1px solid rgba(200,175,120,.08)}.info-card .tag.supported{color:var(--status-win);background:#7ec87e0f;border-color:#7ec87e1a}.info-card .tag.pending{color:var(--status-warning);background:#d4a8430f;border-color:#d4a8431a}.quick-section{padding:2rem 0 4rem}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.quick-card{background:#161e2c80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-subtle);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;cursor:pointer;transition:all .3s ease;text-decoration:none}.quick-card:hover{border-color:var(--border-glow);background:var(--bg-card-hover);transform:translateY(-2px)}.quick-card-header{display:flex;align-items:center;gap:.75rem}.quick-card-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.quick-card h3{font-size:.95rem;font-weight:600;color:var(--text-primary)}.quick-card p{font-size:.8rem;color:var(--text-muted);line-height:1.5}.quick-card .arrow{margin-top:auto;color:var(--text-muted);font-size:.8rem;transition:color .2s ease}.quick-card:hover .arrow{color:var(--accent-gold)}.privacy-banner{background:#5b8def0f;border:1px solid rgba(91,141,239,.15);border-radius:10px;padding:1rem 1.5rem;display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:.85rem;color:var(--accent-blue)}.privacy-banner .icon{font-size:1.1rem;flex-shrink:0}.footer{background:#080c1280;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(180,155,110,.08);padding:2rem 0;text-align:center;font-size:.8rem;color:var(--text-muted)}.footer a{color:var(--text-secondary);text-decoration:none}.footer a:hover{color:var(--accent-gold)}@media (max-width: 768px){.navbar-links{display:none}.mobile-menu-btn{display:block}.hero h1{font-size:2rem}.hero-subtitle{font-size:1rem}.hero{padding:3rem 0 2rem}.info-grid,.quick-grid{grid-template-columns:1fr}.upload-card{padding:1.5rem}.upload-dropzone{padding:2rem 1rem}.upload-actions{flex-direction:column;align-items:stretch}.upload-options{justify-content:center}.hero-actions{flex-direction:column;align-items:center}}@media (max-width: 480px){.container{padding:0 1rem}.hero h1{font-size:1.6rem}.hero-badge-row{gap:.5rem}.badge{font-size:.7rem;padding:.2rem .6rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp .6s ease forwards;opacity:0}.animate-in:nth-child(1){animation-delay:.1s}.animate-in:nth-child(2){animation-delay:.2s}.animate-in:nth-child(3){animation-delay:.3s}.animate-in:nth-child(4){animation-delay:.4s}.report-container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.report-header{background:#161e2c99;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);border-radius:16px;padding:1.5rem 2rem;margin-bottom:1.5rem}.report-header h2{font-family:var(--font-title);color:var(--accent-gold);margin-bottom:.5rem;font-size:1.4rem}.report-meta{display:flex;gap:2rem;flex-wrap:wrap;font-size:.85rem;color:var(--text-secondary)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:#161e2c8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-subtle);border-radius:12px;padding:1.25rem;text-align:center}.stat-card .stat-value{font-family:var(--font-mono);font-size:2rem;font-weight:700;color:var(--accent-gold)}.stat-card .stat-label{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.section-card{background:#161e2c8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-subtle);border-radius:12px;padding:1.5rem;margin-bottom:1.25rem}.section-card h3{font-size:1rem;color:var(--text-primary);margin-bottom:1rem}.battle-table{width:100%;border-collapse:collapse;font-size:.85rem}.battle-table th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);color:var(--text-muted);font-weight:500}.battle-table td{padding:.5rem .75rem;border-bottom:1px solid rgba(200,175,120,.06)}.battle-table tr:hover td{background:#c8af7808}.btn-back{margin-bottom:1.5rem}.empty-state{text-align:center;padding:3rem;color:var(--text-muted)}.relic-list{display:flex;flex-wrap:wrap;gap:.5rem}.relic-chip{padding:.25rem .6rem;border-radius:6px;font-size:.8rem;border:1px solid var(--border-subtle);display:inline-flex;align-items:center;gap:.25rem}.relic-chip.red{border-color:#c85a5a4d;color:#d47878;background:#c85a5a0f}.relic-chip.green{border-color:#7ec87e4d;color:#7ec87e;background:#7ec87e0f}.relic-chip.yellow{border-color:#d4a8434d;color:#d4a843;background:#d4a8430f}.relic-chip.blue{border-color:#5b8def4d;color:#5b8def;background:#5b8def0f}.relic-chip.none{border-color:var(--border-subtle);color:var(--text-secondary)}.equipment-detail{transition:max-height .3s ease;overflow:hidden}.equipment-detail.collapsed{max-height:0}.overview-layout{display:grid;grid-template-columns:1fr 380px;gap:1.5rem;max-width:1400px;margin:0 auto;padding:1.5rem;align-items:start}@media (max-width: 1024px){.overview-layout{grid-template-columns:1fr}}.talisman-list{display:flex;flex-wrap:wrap;gap:.5rem}.talisman-chip{padding:.25rem .6rem;border-radius:6px;font-size:.8rem;color:var(--accent-cyan);background:#4ecdc414;border:1px solid rgba(78,205,196,.2);display:inline-flex;align-items:center;gap:.25rem}.talisman-chip.has-icon{padding:2px;background:#00000059}.talisman-chip .eq-icon-only{width:28px;height:28px;object-fit:contain;image-rendering:auto;border-radius:3px}.talisman-grid{grid-template-columns:repeat(2,1fr)}.talisman-slot.occupied{border-color:#4ecdc459;background:#4ecdc414;color:var(--accent-cyan)}.talisman-slot.occupied.has-icon{padding:4px;background:#00000059}.talisman-slot.occupied:hover{border-color:var(--accent-cyan);box-shadow:0 0 12px #4ecdc433}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.015) 2px,rgba(0,0,0,.015) 4px)}.battle-card{display:flex;align-items:center;gap:.65rem;padding:.5rem .75rem;background:var(--bg-card);background-size:auto 90%;background-position:right .5rem bottom;background-repeat:no-repeat;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden;animation:fadeInUp .5s ease forwards;opacity:0}.battle-card.battle-victory{border-color:#c8a87859}.battle-card.battle-victory.active{border-color:var(--accent-gold);box-shadow:0 0 24px #c8a8782e,inset 0 0 20px #c8a8780a}.card-victory-overlay{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:.08;pointer-events:none;mix-blend-mode:screen}.battle-card:hover{transform:translateY(-2px);border-color:var(--accent-blue-dim);box-shadow:0 4px 24px #5b8def1f;background:var(--bg-card-hover)}.battle-card.active{border:1px solid #5b8def;box-shadow:0 0 20px #5b8def33,inset 0 0 20px #5b8def0a;background:#5b8def0f}.battle-card .boss-icon{width:80px;height:80px;border-radius:12px;background:#5b8def14;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;opacity:.85;overflow:hidden}.battle-card.active .boss-icon{border-color:#5b8def;opacity:1;box-shadow:0 0 12px #5b8def40;overflow:hidden}.battle-card .card-body{flex:1;min-width:0}.battle-card .card-boss-name{font-family:var(--font-title);font-size:.85rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.4rem}.battle-card .card-boss-name .night-icon{width:52px;height:52px;object-fit:contain;flex-shrink:0;margin-left:.25rem}.battle-card .card-meta{display:flex;gap:.75rem;align-items:center;font-size:.68rem;color:var(--text-muted);margin-top:-.12rem}.battle-card .card-meta .night-text{font-size:.68rem;color:var(--text-muted)}.mode-badge{display:inline-block;font-size:.58rem;font-weight:700;letter-spacing:.04em;padding:.1rem .4rem;border-radius:3px;line-height:1.3;text-transform:uppercase}.mode-badge.mode-normal{color:#8ab4f8;background:#8ab4f81f;border:1px solid rgba(138,180,248,.25)}.mode-badge.mode-night{color:var(--accent-gold);background:#c8af781f;border:1px solid rgba(200,175,120,.25)}.mode-badge.mode-eternal{color:#c084fc;background:#c084fc1f;border:1px solid rgba(192,132,252,.25)}.battle-card .card-team{display:flex;gap:.35rem;align-items:center;margin-top:0}.battle-card .card-team .player-tag{font-size:.68rem;padding:.08rem .4rem;border-radius:4px;background:#c8af7814;color:var(--text-secondary);border:1px solid rgba(200,175,120,.1)}.battle-card .card-right{text-align:right;flex-shrink:0}.battle-card .card-score{font-family:var(--font-mono);font-size:.95rem;font-weight:700;color:var(--accent-gold)}.battle-card .card-delta{font-family:var(--font-mono);font-size:.7rem;font-weight:600;margin-top:.05rem}.battle-card .card-delta.positive{color:var(--status-win)}.battle-card .card-delta.negative{color:var(--status-lose)}.battle-card .card-level{font-size:.68rem;color:var(--text-muted);margin-top:.1rem}.player-panel{position:sticky;top:80px;background:#161e2c99;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);border-radius:16px;padding:1.5rem}.player-panel .panel-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.player-panel .panel-avatar{width:72px;height:72px;border-radius:12px;background:linear-gradient(135deg,var(--accent-gold),var(--accent-blue-dim));display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#fff;object-fit:cover}.player-panel .panel-name{font-family:var(--font-title);font-size:1.1rem;color:var(--text-primary)}.player-panel .panel-role{font-size:.8rem;color:var(--text-muted)}.player-panel .panel-section{margin-bottom:1.25rem}.player-panel .panel-section h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.stat-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem;background:#c8af7808;border-radius:6px;border:1px solid transparent}.stat-item .stat-icon{width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.85rem;opacity:.8;object-fit:contain;image-rendering:auto}.stat-item .stat-num{font-family:var(--font-mono);font-size:.95rem;font-weight:600;color:var(--text-primary)}.stat-item .stat-hint{font-size:.7rem;color:var(--text-muted);margin-left:auto}.equip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.equip-slot{aspect-ratio:1;background:#00000040;border:1px solid var(--border-subtle);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--text-muted);cursor:default;transition:all .2s;position:relative}.equip-slot:hover{border-color:var(--accent-blue-dim);box-shadow:0 0 8px #5b8def26;z-index:1}.equip-slot.occupied{border-color:#c8af7833;color:var(--text-secondary);flex-direction:column}.equip-slot.occupied.has-icon{border-color:#c8af7826;background:#00000059;padding:4px}.equip-slot .eq-icon-only{width:100%;height:100%;object-fit:contain;image-rendering:auto;border-radius:4px}.equip-slot .eq-icon{width:36px;height:36px;object-fit:contain;image-rendering:auto;margin-bottom:2px}.equip-slot .eq-name{text-align:center;line-height:1.15;padding:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-all}.player-selector{display:flex;gap:.5rem;margin-bottom:1rem}.player-selector button{flex:1;padding:.5rem .75rem;border:1px solid var(--border-subtle);border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.8rem;transition:all .2s;text-align:center}.player-selector button:hover{border-color:var(--accent-blue-dim);color:var(--text-secondary)}.player-selector button.active{border-color:#5b8def;color:var(--accent-blue);background:#5b8def14;box-shadow:0 0 10px #5b8def26}.detail-container{max-width:1100px;margin:0 auto;padding:1.5rem}.detail-header{background:#161e2c99;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);border-radius:16px;padding:2rem;margin-bottom:1.5rem;display:flex;gap:1.5rem;align-items:center}.detail-boss-icon{width:96px;height:96px;border-radius:16px;background:#5b8def14;border:1px solid #5b8def;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0;box-shadow:0 0 20px #5b8def26;overflow:hidden}.detail-boss-name{font-family:var(--font-title);font-size:1.5rem;color:var(--text-primary)}.detail-meta{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.85rem;color:var(--text-secondary);margin-top:.5rem}.detail-meta span{display:flex;align-items:center;gap:.3rem}.detail-section{background:#161e2c8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:12px;padding:1.5rem;margin-bottom:1rem}.detail-section h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.player-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 768px){.player-detail-grid{grid-template-columns:1fr}}.player-detail-card{background:#161e2c73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);border-radius:10px;padding:1rem}.player-detail-card .pd-name{font-weight:600;color:var(--text-primary)}.player-detail-card .pd-role{font-size:.78rem;color:var(--text-muted)}.player-detail-card .pd-stats{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin-top:.75rem;font-size:.8rem}.player-detail-card .pd-stat{display:flex;align-items:center;gap:.4rem;padding:.25rem 0;border-bottom:1px solid rgba(255,255,255,.03)}.player-detail-card .pd-stat-icon{width:20px;height:20px;object-fit:contain;flex-shrink:0}.player-detail-card .pd-stat-val{font-family:var(--font-mono);color:var(--accent-gold)}.equip-row-detail{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.equip-row-detail .relic-chip{font-size:.72rem;display:inline-flex;align-items:center;gap:.25rem}.equip-row-detail .relic-chip.has-icon{padding:2px;background:#00000059}.equip-row-detail .relic-chip .eq-icon-only{width:28px;height:28px;object-fit:contain;image-rendering:auto;border-radius:3px}.equip-row-detail .relic-chip .eq-icon{width:20px;height:20px;object-fit:contain;image-rendering:auto;flex-shrink:0}@keyframes scanPulse{0%,to{opacity:.3}50%{opacity:.6}}.scan-line-anim{animation:scanPulse 3s ease-in-out infinite}.btn-back{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:1px solid var(--border-subtle);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:all .2s;text-decoration:none;margin-bottom:1rem}.btn-back:hover{border-color:var(--accent-blue-dim);color:var(--text-primary)}@media (max-width: 768px){.stat-grid{grid-template-columns:repeat(2,1fr)}.report-meta{flex-direction:column;gap:.5rem}}.equip-popup-overlay{position:fixed;inset:0;z-index:9999;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center}.equip-popup-overlay.visible{display:flex}.equip-popup{background:linear-gradient(135deg,#161e2cfa,#121822fa);border:1px solid var(--border-glow);border-radius:16px;padding:1.75rem;max-width:440px;width:92%;max-height:72vh;overflow-y:auto;position:relative;box-shadow:0 12px 60px #0009,0 0 100px #5b8def1f;animation:popupIn .2s ease}@keyframes popupIn{0%{opacity:0;transform:scale(.94) translateY(-12px)}to{opacity:1;transform:scale(1) translateY(0)}}.equip-popup-close{position:absolute;top:.6rem;right:.8rem;background:none;border:none;color:var(--text-muted);font-size:1.3rem;line-height:1;cursor:pointer;padding:.3rem .5rem;border-radius:6px;transition:all .2s}.equip-popup-close:hover{color:var(--text-primary);background:#ffffff0f}.equip-popup-title{font-family:var(--font-title);font-size:1.15rem;color:var(--accent-gold);margin-bottom:.25rem;padding-right:2rem}.equip-popup-id{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);margin-bottom:.25rem}.equip-popup-prop{font-family:var(--font-mono);font-size:.9rem;color:var(--accent-blue);margin-bottom:.75rem;padding:.35rem .6rem;background:#5b8def14;border-radius:6px;display:inline-block}.equip-popup-section{margin-top:.75rem}.equip-popup-section h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}.equip-popup-effect{display:flex;align-items:flex-start;gap:.55rem;padding:.45rem 0;font-size:.85rem;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.04)}.equip-popup-effect:last-child{border-bottom:none}.equip-popup-effect .effect-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-cyan);margin-top:.5rem;flex-shrink:0}.equip-popup-effect .effect-dot.dot-orange{background:var(--accent-gold)}.equip-popup-effect .effect-dot.dot-cyan{background:var(--accent-cyan)}.equip-popup-effect .effect-dot.dot-dim{opacity:.35}.equip-popup-effect .effect-unmapped{color:var(--text-muted);font-style:italic}.equip-popup-effect .effect-hint{font-size:.72rem;color:var(--text-muted);font-style:italic;padding-left:1.5rem}.equip-popup-effect.effect-hint-row{border-bottom:none;padding:0 0 .35rem}.equip-popup-effect .effect-id{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);margin-left:auto;flex-shrink:0}.equip-popup-empty{color:var(--text-muted);font-size:.85rem;font-style:italic}.equip-popup-pair{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.equip-popup-raw{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);margin-top:.25rem}.equip-popup-raw.hidden{display:none}.equip-popup-raw-row{display:flex;gap:.75rem;padding:.2rem .3rem;border-bottom:1px solid rgba(255,255,255,.03)}.equip-popup-raw-row span:first-child{width:2.5rem;color:var(--text-muted)}.equip-popup-raw-row span:nth-child(2){width:7rem;color:var(--accent-blue)}.equip-popup-raw-row span:last-child{color:var(--text-muted)}.equip-slot.occupied{cursor:pointer}.equip-slot.occupied:hover{border-color:var(--accent-cyan);box-shadow:0 0 10px #4ecdc433}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}@media (max-width: 768px){.summary-grid{grid-template-columns:repeat(2,1fr)}}.summary-item{background:#141c2880;border:1px solid rgba(200,175,120,.08);border-radius:10px;padding:.85rem 1rem;text-align:center;transition:all .2s ease}.summary-item:hover{border-color:#c8af7833;background:#19223099;transform:translateY(-1px)}.summary-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem}.summary-value{font-family:var(--font-body);font-weight:700;font-size:1.4rem;color:var(--text-primary);line-height:1.3;font-variant-numeric:tabular-nums}.summary-value.summary-number{font-size:1.8rem}.summary-sub{font-size:.7rem;color:var(--text-muted);margin-top:.2rem}@media (max-width: 900px){.summary-section+.summary-section{margin-top:1rem}}.mode-section{padding:1.5rem 0 3rem}.mode-card{max-width:680px;margin:0 auto;background:#161e2c8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden;position:relative}.mode-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-gold),var(--accent-blue),transparent);opacity:.5;z-index:1}.mode-tabs{display:flex;gap:0;background:#0a0e1466;border-bottom:1px solid var(--border-subtle);position:relative;z-index:1}.mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.9rem .75rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:var(--font-body);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .25s ease;position:relative;white-space:nowrap}.mode-tab:hover{color:var(--text-secondary);background:#c8af7808}.mode-tab.active{color:var(--accent-gold);border-bottom-color:var(--accent-gold);background:#c8af780d}.mode-tab .tab-icon{font-size:1rem;flex-shrink:0}.mode-tab .tab-label{font-weight:600}.mode-tab .tab-badge{font-size:.6rem;font-weight:600;padding:.1rem .4rem;border-radius:3px;text-transform:uppercase;letter-spacing:.05em;background:#c8af781a;color:var(--accent-gold);border:1px solid rgba(200,175,120,.15)}.mode-tab.active .tab-badge{background:#c8af7826;color:var(--accent-gold-bright)}.mode-panel{display:none}.mode-panel.active{display:block}.panel-inner{padding:1.75rem 2rem}.panel-desc{margin-bottom:1.25rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.panel-desc p{margin:0}.panel-privacy{font-size:.75rem;color:var(--text-muted);line-height:1.5;margin:0;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.panel-privacy code{background:#5b8def1a;padding:.1rem .35rem;border-radius:4px;font-size:.72rem;color:var(--accent-blue)}.divider-label{text-align:center;margin:1rem 0 .75rem;position:relative;font-size:.78rem;color:var(--text-muted)}.divider-label:before,.divider-label:after{content:"";position:absolute;top:50%;width:25%;border-top:1px solid var(--border-subtle)}.divider-label:before{left:0}.divider-label:after{right:0}.divider-label span{background:#161e2ca6;padding:0 .75rem;position:relative}.btn-block{width:100%;justify-content:center;font-size:1rem;padding:.85rem 0;margin-bottom:.75rem}.btn-block .btn-icon{font-size:1.1rem}.plugin-steps{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;padding-left:.5rem}.plugin-step{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-muted)}.steam-ext-indicator{font-size:.78rem;color:var(--status-win);background:#7ec87e0f;border:1px solid rgba(126,200,126,.15);border-radius:6px;padding:.35rem .75rem;margin-bottom:.75rem;text-align:center}.upload-actions-right{display:flex;gap:.75rem}.steam-steps{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;padding-left:.5rem}.steam-step{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--text-muted)}.steam-step a{color:var(--accent-blue)}.steam-step strong{color:var(--accent-gold-bright)}.step-num{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--accent-blue),var(--accent-blue-dim));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.steam-step code{background:#5b8def1a;padding:.1rem .35rem;border-radius:4px;font-size:.8rem;color:var(--accent-blue)}.steam-input-row{display:flex;gap:.5rem;margin-bottom:.75rem}.steam-cookie-input{flex:1;padding:.6rem .75rem;border:1px solid var(--border-subtle);border-radius:8px;background:#0a0e1480;color:var(--text-primary);font-family:var(--font-mono);font-size:.8rem;transition:border-color .2s}.steam-cookie-input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 8px #5b8def26}.steam-cookie-input::placeholder{color:var(--text-muted);font-family:var(--font-body)}.steam-status{font-size:.85rem;margin-bottom:.75rem;min-height:1.2em}.steam-status.success{color:var(--status-win)}.steam-status.error{color:var(--status-lose)}#steam-clipboard-btn{white-space:nowrap;flex-shrink:0}@media (max-width: 768px){.mode-tab{padding:.75rem .5rem;font-size:.78rem;gap:.25rem}.mode-tab .tab-badge{display:none}.panel-inner{padding:1.25rem 1rem}.mode-card{border-radius:12px}}
