*{margin:0;padding:0;box-sizing:border-box}:root{--text-primary: #111;--text-secondary: #666;--text-tertiary: #999;--border: #e5e5e5;--border-light: #f0f0f0;--bg: #fff;--bg-subtle: #fafafa;--bg-muted: #f5f5f5;--accent: #111;--accent-light: #f5f5f5;--radius: 6px;--radius-lg: 8px}[data-theme=dark]{--text-primary: #e5e5e5;--text-secondary: #a3a3a3;--text-tertiary: #737373;--border: #333;--border-light: #2a2a2a;--bg: #171717;--bg-subtle: #1e1e1e;--bg-muted: #262626;--accent: #e5e5e5;--accent-light: #262626;color-scheme:dark}[data-theme=dark] img{opacity:.92}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;background:var(--bg);min-height:100vh;color:var(--text-primary);-webkit-font-smoothing:antialiased}#app{min-height:100vh;display:flex;flex-direction:column}.navbar{border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:1000}.nav-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center;height:52px}.nav-brand{text-decoration:none;font-weight:600;font-size:.95rem;letter-spacing:-.02em;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.brand-logo{width:22px;height:22px}.nav-links{display:flex;gap:.25rem;align-items:center}.nav-link{text-decoration:none;color:var(--text-secondary);font-size:.875rem;font-weight:450;padding:.375rem .75rem;border-radius:var(--radius);transition:color .15s,background .15s}.nav-link:hover{color:var(--text-primary);background:var(--bg-muted)}.nav-link.active{color:var(--text-primary);background:var(--bg-muted);font-weight:500}.theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-secondary);cursor:pointer;transition:all .15s;margin-left:.5rem}.theme-toggle svg{width:16px;height:16px}.theme-toggle:hover{color:var(--text-primary);background:var(--bg-muted)}.locale-select-wrapper{margin-left:.5rem}.locale-select{padding:.25rem 1.25rem .25rem .5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .25rem center;background-repeat:no-repeat;background-size:1rem}.locale-select:hover{background-color:var(--bg-muted);border-color:var(--text-tertiary)}.locale-select:focus{outline:none;border-color:var(--text-primary)}[data-theme=dark] .locale-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23a3a3a3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e")}.auth-area{margin-left:.5rem;position:relative}.login-btn{padding:.25rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s}.login-btn:hover{background:var(--text-primary);color:var(--bg);border-color:var(--text-primary)}.user-avatar-wrapper{cursor:pointer;display:flex;align-items:center}.user-avatar{width:28px;height:28px;border-radius:50%}.user-avatar-fallback{width:28px;height:28px;border-radius:50%;background:var(--bg-muted);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.user-menu{position:absolute;right:0;top:100%;margin-top:.5rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;min-width:160px;box-shadow:0 4px 12px #00000026;z-index:1001;display:flex;flex-direction:column;gap:.375rem}.user-menu-name{font-size:.75rem;color:var(--text-secondary);padding:.25rem .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-btn{padding:.375rem .5rem;border:none;border-radius:var(--radius);background:none;color:var(--text-secondary);font-size:.8125rem;cursor:pointer;font-family:inherit;text-align:left}.user-menu-btn:hover{background:var(--bg-muted);color:var(--text-primary)}.main-content{flex:1}.site-footer{padding:1.5rem 1rem;text-align:center;font-size:.75rem;color:var(--text-tertiary);border-top:1px solid var(--border-light)}.site-footer a{color:var(--text-secondary);text-decoration:none;font-weight:500}.site-footer a:hover{color:var(--text-primary)}.bottom-bar{display:none}@media (max-width: 640px){.nav-container{padding:0 1rem}.nav-links{display:none}.main-content{padding-bottom:60px}.bottom-bar{display:flex;position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg);border-top:1px solid var(--border);z-index:1000;padding-bottom:env(safe-area-inset-bottom)}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;text-decoration:none;color:var(--text-tertiary);font-size:.625rem;font-weight:500;transition:color .15s;border:none;background:none;cursor:pointer;font-family:inherit;position:relative}.bottom-tab svg{width:20px;height:20px}.bottom-tab.active{color:var(--text-primary)}.locale-tab{color:var(--text-tertiary);position:relative}.locale-select-mobile{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:16px}.locale-flag{font-size:.75rem}}.modal-overlay[data-v-7275b585]{position:fixed;inset:0;background:#0006;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content[data-v-7275b585]{background:var(--bg, #fff);border-radius:12px;width:100%;max-width:420px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 30px #0000001f}.modal-header[data-v-7275b585]{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.25rem 0;gap:.75rem}.modal-close[data-v-7275b585]{border:none;background:none;font-size:1.5rem;color:var(--text-tertiary, #999);cursor:pointer;padding:0;line-height:1;flex-shrink:0}.modal-close[data-v-7275b585]:hover{color:var(--text-primary, #111)}.modal-app-row[data-v-7275b585]{display:flex;gap:.75rem;align-items:center;min-width:0}.modal-icon[data-v-7275b585]{width:56px;height:56px;border-radius:12px;flex-shrink:0}.modal-app-info[data-v-7275b585]{min-width:0}.modal-app-name[data-v-7275b585]{font-size:1rem;font-weight:600;color:var(--text-primary, #111);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.modal-dev-link[data-v-7275b585]{border:none;background:none;padding:0;font-size:.8125rem;color:var(--text-secondary, #666);cursor:pointer;font-family:inherit;text-align:left}.modal-dev-link[data-v-7275b585]:hover{color:var(--text-primary, #111);text-decoration:underline}.modal-body[data-v-7275b585]{padding:1rem 1.25rem 1.25rem}.modal-stats[data-v-7275b585]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border-light, #f0f0f0)}.stat-item[data-v-7275b585]{display:flex;flex-direction:column;gap:.125rem}.stat-label[data-v-7275b585]{font-size:.6875rem;color:var(--text-tertiary, #999);text-transform:uppercase;letter-spacing:.03em}.stat-value[data-v-7275b585]{font-size:.875rem;font-weight:500;color:var(--text-primary, #111)}.modal-meta-list[data-v-7275b585]{padding:.75rem 0}.meta-row[data-v-7275b585]{display:flex;justify-content:space-between;padding:.375rem 0;font-size:.8125rem}.meta-label[data-v-7275b585]{color:var(--text-tertiary, #999)}.meta-value[data-v-7275b585]{color:var(--text-primary, #111);font-weight:450}.modal-store-link[data-v-7275b585]{display:block;text-align:center;padding:.625rem;margin-top:.5rem;border:1px solid var(--border, #e5e5e5);border-radius:var(--radius, 6px);text-decoration:none;font-size:.8125rem;font-weight:500;color:var(--text-primary, #111);transition:background .15s}.modal-store-link[data-v-7275b585]:hover{background:var(--bg-muted, #f5f5f5)}.modal-fav-btn[data-v-7275b585]{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;padding:.625rem;margin-top:.5rem;border:1px solid var(--border, #e5e5e5);border-radius:var(--radius, 6px);background:var(--bg, #fff);font-size:.8125rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;font-family:inherit;transition:all .15s}.modal-fav-btn svg[data-v-7275b585]{width:16px;height:16px}.modal-fav-btn[data-v-7275b585]:hover{background:var(--bg-muted, #f5f5f5)}.modal-fav-btn.is-fav[data-v-7275b585]{color:#ef4444;border-color:#fecaca;background:#fef2f2}:root[data-theme=dark] .modal-fav-btn.is-fav[data-v-7275b585]{background:#450a0a;border-color:#7f1d1d}.modal-loading[data-v-7275b585]{display:flex;justify-content:center;padding:3rem 0}.spinner[data-v-7275b585]{width:24px;height:24px;border:2px solid var(--border, #e5e5e5);border-top-color:var(--text-primary, #111);border-radius:50%;animation:spin-7275b585 .6s linear infinite}@keyframes spin-7275b585{to{transform:rotate(360deg)}}.modal-empty[data-v-7275b585]{text-align:center;padding:2rem 1.25rem;color:var(--text-tertiary, #999);font-size:.875rem}.modal-back[data-v-7275b585]{border:none;background:none;padding:0;font-size:.9375rem;font-weight:600;color:var(--text-primary, #111);cursor:pointer;font-family:inherit;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-back[data-v-7275b585]:hover{opacity:.7}.dev-app-list[data-v-7275b585]{display:flex;flex-direction:column}.dev-app-row[data-v-7275b585]{display:flex;gap:.75rem;align-items:center;border-bottom:1px solid var(--border-light, #f0f0f0);cursor:pointer;transition:background .1s;border-radius:var(--radius, 6px);padding:.625rem .25rem}.dev-app-row[data-v-7275b585]:hover{background:var(--bg-muted, #f5f5f5)}.dev-app-row[data-v-7275b585]:last-child{border-bottom:none}.dev-app-icon[data-v-7275b585]{width:36px;height:36px;border-radius:8px;flex-shrink:0}.dev-app-icon-placeholder[data-v-7275b585]{width:36px;height:36px;border-radius:8px;background:var(--bg-muted, #f5f5f5);flex-shrink:0}.dev-app-info[data-v-7275b585]{min-width:0}.dev-app-name[data-v-7275b585]{font-size:.8125rem;font-weight:500;color:var(--text-primary, #111);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-app-meta[data-v-7275b585]{font-size:.75rem;color:var(--text-tertiary, #999)}@media (max-width: 640px){.modal-overlay[data-v-7275b585]{align-items:flex-end;padding:0}.modal-content[data-v-7275b585]{border-radius:16px 16px 0 0;max-height:85vh;max-width:100%}}.page[data-v-d4cecdbb]{padding:2rem 1.5rem}.page-container[data-v-d4cecdbb]{max-width:1400px;margin:0 auto}.mode-bar[data-v-d4cecdbb]{display:flex;gap:0;margin-bottom:1.25rem;border-bottom:1px solid var(--border)}.mode-btn[data-v-d4cecdbb]{flex:1;display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:.75rem 1rem .625rem;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:500;color:var(--text-tertiary);transition:all .15s;margin-bottom:-1px}.mode-btn[data-v-d4cecdbb]:hover{color:var(--text-primary)}.mode-btn.active[data-v-d4cecdbb]{color:var(--text-primary);font-weight:600;border-bottom-color:var(--text-primary)}.mode-btn.active .mode-hint[data-v-d4cecdbb]{color:var(--text-secondary)}.mode-hint[data-v-d4cecdbb]{font-size:.6875rem;font-weight:400;color:var(--text-tertiary)}.date-nav[data-v-d4cecdbb]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.date-btn[data-v-d4cecdbb]{background:none;border:1px solid var(--border);border-radius:var(--radius);padding:.375rem .75rem;cursor:pointer;font-size:.875rem;color:var(--text-secondary);transition:all .15s}.date-btn[data-v-d4cecdbb]:hover:not(:disabled){background:var(--bg-muted);color:var(--text-primary)}.date-btn[data-v-d4cecdbb]:disabled{opacity:.3;cursor:not-allowed}.date-label[data-v-d4cecdbb]{font-size:1rem;font-weight:600;letter-spacing:-.02em;min-width:140px;text-align:center}.today-btn[data-v-d4cecdbb]{padding:.25rem .625rem;border:1px solid var(--border);border-radius:999px;font-size:.75rem;font-weight:500;background:var(--bg);color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:inherit}.today-btn[data-v-d4cecdbb]:hover{background:var(--text-primary);color:var(--bg);border-color:var(--text-primary)}.device-toggle[data-v-d4cecdbb]{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-left:auto}.device-btn[data-v-d4cecdbb]{padding:.375rem .75rem;font-size:.8125rem;font-weight:500;border:none;background:var(--bg);color:var(--text-secondary);cursor:pointer;font-family:inherit;transition:all .15s}.device-btn[data-v-d4cecdbb]:not(:last-child){border-right:1px solid var(--border)}.device-btn[data-v-d4cecdbb]:hover{color:var(--text-primary);background:var(--bg-muted)}.device-btn.active[data-v-d4cecdbb]{background:var(--text-primary);color:var(--bg)}.chip-row[data-v-d4cecdbb]{display:flex;gap:.375rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}.chip-row[data-v-d4cecdbb]::-webkit-scrollbar{display:none}.chip[data-v-d4cecdbb]{white-space:nowrap;padding:.375rem .75rem;border:1px solid var(--border);border-radius:999px;font-size:.8125rem;background:var(--bg);color:var(--text-secondary);cursor:pointer;transition:all .15s;flex-shrink:0;font-family:inherit}.chip[data-v-d4cecdbb]:hover{border-color:var(--text-tertiary);color:var(--text-primary)}.chip.active[data-v-d4cecdbb]{background:var(--text-primary);color:var(--bg);border-color:var(--text-primary)}.chip-toggle[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem}.toggle-arrow[data-v-d4cecdbb]{font-size:.625rem;transition:transform .2s}.toggle-arrow.open[data-v-d4cecdbb]{transform:rotate(180deg)}.summary-bar[data-v-d4cecdbb]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.summary-left[data-v-d4cecdbb]{flex:1;min-width:0}.summary-total[data-v-d4cecdbb]{font-size:.875rem;font-weight:600;color:var(--text-primary);display:block;margin-bottom:.375rem}.summary-tags[data-v-d4cecdbb]{display:flex;gap:.375rem;flex-wrap:wrap}.summary-tag[data-v-d4cecdbb]{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.summary-tag[data-v-d4cecdbb]:hover{opacity:.8}.sort-group[data-v-d4cecdbb]{display:flex;gap:.25rem;flex-shrink:0}.sort-btn[data-v-d4cecdbb]{padding:.25rem .5rem;border:1px dashed var(--border);border-radius:999px;font-size:.6875rem;background:var(--bg);color:var(--text-tertiary);cursor:pointer;font-family:inherit;transition:all .15s}.sort-btn.active[data-v-d4cecdbb]{background:var(--text-primary);color:var(--bg);border-color:var(--text-primary);border-style:solid}.card-list[data-v-d4cecdbb]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.75rem}.signal-card[data-v-d4cecdbb]{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;transition:border-color .15s;display:flex;flex-direction:column}.signal-card[data-v-d4cecdbb]:hover{border-color:var(--text-tertiary)}.card-rank[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem}.card-header[data-v-d4cecdbb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.card-header-left[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem}.new-badge[data-v-d4cecdbb]{display:inline-block;padding:.0625rem .375rem;border-radius:4px;font-size:.625rem;font-weight:700;letter-spacing:.05em;background:#ef4444;color:#fff}.type-tag[data-v-d4cecdbb]{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.01em}.confidence-group[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem}.confidence-bar[data-v-d4cecdbb]{width:40px;height:4px;background:var(--bg-muted);border-radius:2px;overflow:hidden}.confidence-fill[data-v-d4cecdbb]{height:100%;border-radius:2px;transition:width .3s}.confidence[data-v-d4cecdbb]{font-size:.75rem;font-weight:500;color:var(--text-tertiary)}.card-app[data-v-d4cecdbb]{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;cursor:pointer;color:inherit}.card-app:hover .app-name[data-v-d4cecdbb]{color:#3b82f6}.app-icon-lg[data-v-d4cecdbb]{width:40px;height:40px;border-radius:10px;object-fit:cover;flex-shrink:0}.app-placeholder[data-v-d4cecdbb]{width:40px;height:40px;border-radius:10px;background:var(--bg-muted);flex-shrink:0}.card-meta[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem;margin-bottom:.375rem}.rank-badge[data-v-d4cecdbb]{display:inline-flex;align-items:center;justify-content:center;padding:.0625rem .375rem;background:var(--bg-muted);border-radius:4px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.rank-change[data-v-d4cecdbb],.rank-change-sm[data-v-d4cecdbb]{display:inline-flex;align-items:center;font-weight:600}.rank-change[data-v-d4cecdbb]{padding:.0625rem .375rem;border-radius:4px;font-size:.6875rem}.rank-change-sm[data-v-d4cecdbb]{padding:0 .25rem;border-radius:3px;font-size:.5625rem;flex-shrink:0}.rank-change.up[data-v-d4cecdbb],.rank-change-sm.up[data-v-d4cecdbb]{background:#dcfce7;color:#166534}.rank-change.down[data-v-d4cecdbb],.rank-change-sm.down[data-v-d4cecdbb]{background:#fee2e2;color:#991b1b}.rank-change.new[data-v-d4cecdbb],.rank-change-sm.new[data-v-d4cecdbb]{background:#dbeafe;color:#1e40af}:root[data-theme=dark] .rank-change.up[data-v-d4cecdbb],:root[data-theme=dark] .rank-change-sm.up[data-v-d4cecdbb]{background:#14532d;color:#86efac}:root[data-theme=dark] .rank-change.down[data-v-d4cecdbb],:root[data-theme=dark] .rank-change-sm.down[data-v-d4cecdbb]{background:#450a0a;color:#fca5a5}:root[data-theme=dark] .rank-change.new[data-v-d4cecdbb],:root[data-theme=dark] .rank-change-sm.new[data-v-d4cecdbb]{background:#1e3a5f;color:#93c5fd}.meta-text[data-v-d4cecdbb]{font-size:.75rem;color:var(--text-tertiary)}.meta-dot[data-v-d4cecdbb]{width:3px;height:3px;border-radius:50%;background:var(--border)}.card-detail[data-v-d4cecdbb]{font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.fav-btn[data-v-d4cecdbb]{position:absolute;top:.75rem;right:.75rem;border:none;background:none;cursor:pointer;padding:.25rem;color:var(--text-tertiary);transition:color .15s,transform .15s}.fav-btn svg[data-v-d4cecdbb]{width:18px;height:18px}.fav-btn[data-v-d4cecdbb]:hover{color:#ef4444;transform:scale(1.15)}.fav-btn.is-fav[data-v-d4cecdbb]{color:#ef4444}.signal-card[data-v-d4cecdbb]{position:relative}.skeleton-card[data-v-d4cecdbb]{pointer-events:none}.skeleton-header[data-v-d4cecdbb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.skeleton-tag[data-v-d4cecdbb]{width:64px;height:20px;border-radius:4px}.skeleton-pct[data-v-d4cecdbb]{width:32px;height:14px;border-radius:3px}.skeleton-app[data-v-d4cecdbb]{display:flex;align-items:center;gap:.75rem}.skeleton-icon[data-v-d4cecdbb]{width:40px;height:40px;border-radius:10px;flex-shrink:0}.skeleton-text[data-v-d4cecdbb]{flex:1;display:flex;flex-direction:column;gap:.375rem}.skeleton-line[data-v-d4cecdbb]{height:14px;border-radius:3px}.shimmer[data-v-d4cecdbb]{background:linear-gradient(90deg,var(--bg-muted) 25%,var(--border) 50%,var(--bg-muted) 75%);background-size:200% 100%;animation:shimmer-d4cecdbb 1.5s infinite}@keyframes shimmer-d4cecdbb{0%{background-position:200% 0}to{background-position:-200% 0}}.gap-controls[data-v-d4cecdbb]{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.target-select[data-v-d4cecdbb]{display:flex;align-items:center;gap:.5rem}.target-label[data-v-d4cecdbb]{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.input[data-v-d4cecdbb]{padding:.375rem .625rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9375rem;background:var(--bg);color:var(--text-primary);font-family:inherit}.tab-bar[data-v-d4cecdbb]{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:.75rem;overflow-x:auto;scrollbar-width:none}.tab-bar[data-v-d4cecdbb]::-webkit-scrollbar{display:none}.tab-btn[data-v-d4cecdbb]{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all .15s;font-family:inherit;flex-shrink:0}.tab-btn[data-v-d4cecdbb]:hover{color:var(--text-primary)}.tab-btn.active[data-v-d4cecdbb]{color:var(--text-primary);border-bottom-color:var(--text-primary);font-weight:600}.gap-desc[data-v-d4cecdbb]{font-size:.8125rem;color:var(--text-tertiary);margin-bottom:.75rem}.summary-text[data-v-d4cecdbb]{font-size:.8125rem;color:var(--text-secondary);margin-bottom:1rem;font-weight:500}.required-filter[data-v-d4cecdbb]{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.required-label[data-v-d4cecdbb]{font-size:.75rem;font-weight:500;color:var(--text-tertiary);flex-shrink:0}.required-chips[data-v-d4cecdbb]{display:flex;gap:.25rem;flex-wrap:wrap}.required-chip[data-v-d4cecdbb]{padding:.25rem .375rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;line-height:1;background:var(--bg);cursor:pointer;transition:all .15s}.required-chip[data-v-d4cecdbb]:hover{border-color:var(--text-tertiary)}.required-chip.active[data-v-d4cecdbb]{background:var(--text-primary);border-color:var(--text-primary)}.clear-btn[data-v-d4cecdbb]{padding:.125rem .5rem;border:1px solid var(--border);border-radius:999px;font-size:.6875rem;background:var(--bg);color:var(--text-tertiary);cursor:pointer;font-family:inherit;transition:all .15s}.clear-btn[data-v-d4cecdbb]:hover{background:var(--bg-muted);color:var(--text-primary)}.category-grid[data-v-d4cecdbb]{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;align-items:start}.category-col[data-v-d4cecdbb]{border:1px solid var(--border);border-radius:var(--radius-lg)}.category-header[data-v-d4cecdbb]{padding:.5rem .625rem;background:var(--bg-subtle);border-bottom:1px solid var(--border-light);border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;justify-content:space-between;align-items:center}.category-name[data-v-d4cecdbb]{font-size:.75rem;font-weight:600;color:var(--text-primary);letter-spacing:.03em}.category-count[data-v-d4cecdbb]{font-size:.6875rem;color:var(--text-tertiary);background:var(--bg-muted);padding:.0625rem .375rem;border-radius:4px}.rank-list[data-v-d4cecdbb]{padding:.125rem 0;max-height:600px;overflow-y:auto}.rank-row[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem;padding:.3rem .625rem;line-height:1.3;cursor:pointer;color:inherit}.rank-row[data-v-d4cecdbb]:hover{background:var(--bg-subtle)}.rank-row:hover .app-name[data-v-d4cecdbb]{color:#3b82f6}.rank-num[data-v-d4cecdbb]{width:22px;font-size:.6875rem;font-weight:600;color:var(--text-tertiary);text-align:right;flex-shrink:0}.gap-list[data-v-d4cecdbb]{display:flex;flex-direction:column;gap:.375rem}.gap-row[data-v-d4cecdbb]{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;color:inherit;transition:border-color .15s}.gap-row[data-v-d4cecdbb]:hover{border-color:var(--text-tertiary)}.gap-row:hover .app-name[data-v-d4cecdbb]{color:#3b82f6}.app-icon[data-v-d4cecdbb]{width:32px;height:32px;border-radius:8px;flex-shrink:0;object-fit:cover}.app-info[data-v-d4cecdbb]{min-width:0;flex:1;display:flex;flex-direction:column}.app-name[data-v-d4cecdbb]{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-dev[data-v-d4cecdbb]{font-size:.6875rem;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-badges[data-v-d4cecdbb]{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;flex-shrink:0}.country-count-badge[data-v-d4cecdbb]{padding:.125rem .5rem;background:var(--text-primary);color:var(--bg);border-radius:999px;font-size:.6875rem;font-weight:600}.country-rank-badge[data-v-d4cecdbb]{padding:.0625rem .375rem;background:var(--bg-muted);border-radius:4px;font-size:.6875rem;color:var(--text-secondary);white-space:nowrap}.country-rank-badge.more[data-v-d4cecdbb]{color:var(--text-tertiary)}.category-badge[data-v-d4cecdbb]{padding:.0625rem .375rem;background:var(--bg-muted);border-radius:4px;font-size:.6875rem;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.rank-compare[data-v-d4cecdbb]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.rank-src[data-v-d4cecdbb]{font-size:.75rem;font-weight:600;color:var(--text-primary)}.rank-arrow[data-v-d4cecdbb]{font-size:.75rem;color:var(--text-tertiary)}.rank-tgt[data-v-d4cecdbb]{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.gap-badge[data-v-d4cecdbb]{padding:.0625rem .375rem;border-radius:4px;font-size:.6875rem;font-weight:600}.signal-badges[data-v-d4cecdbb]{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;flex-shrink:0}.signal-badge[data-v-d4cecdbb]{padding:.0625rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:500;white-space:nowrap}.empty-state[data-v-d4cecdbb]{padding:3rem 1rem;text-align:center;color:var(--text-tertiary);font-size:.875rem}.load-more-wrap[data-v-d4cecdbb]{display:flex;justify-content:center;margin-top:1rem}.load-more-btn[data-v-d4cecdbb]{padding:.5rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-secondary);font-size:.8125rem;font-family:inherit;cursor:pointer;transition:all .15s}.load-more-btn[data-v-d4cecdbb]:hover:not(:disabled){background:var(--bg-muted);color:var(--text-primary);border-color:var(--text-tertiary)}.load-more-btn[data-v-d4cecdbb]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.category-grid[data-v-d4cecdbb]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.category-grid[data-v-d4cecdbb]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.page[data-v-d4cecdbb]{padding:1rem .75rem}.date-nav[data-v-d4cecdbb]{gap:.5rem;margin-bottom:.75rem}.date-label[data-v-d4cecdbb]{font-size:.875rem;min-width:auto}.card-list[data-v-d4cecdbb]{grid-template-columns:repeat(2,1fr);gap:.5rem}.signal-card[data-v-d4cecdbb]{padding:.75rem}.card-header[data-v-d4cecdbb]{margin-bottom:.5rem}.type-tag[data-v-d4cecdbb]{font-size:.625rem;padding:.0625rem .375rem}.confidence[data-v-d4cecdbb]{font-size:.625rem}.confidence-bar[data-v-d4cecdbb]{width:28px}.card-app[data-v-d4cecdbb]{gap:.5rem}.app-icon-lg[data-v-d4cecdbb],.app-placeholder[data-v-d4cecdbb]{width:28px;height:28px;border-radius:7px}.app-name[data-v-d4cecdbb]{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.8125rem}.app-dev[data-v-d4cecdbb],.card-detail[data-v-d4cecdbb]{display:none}.card-meta[data-v-d4cecdbb]{font-size:.6875rem;gap:.25rem}.rank-badge[data-v-d4cecdbb]{font-size:.625rem;padding:0 .25rem}.meta-text[data-v-d4cecdbb]{font-size:.6875rem}.new-badge[data-v-d4cecdbb]{font-size:.5rem;padding:0 .25rem}.chip[data-v-d4cecdbb]{font-size:.75rem;padding:.25rem .625rem}.summary-bar[data-v-d4cecdbb]{flex-direction:column;gap:.5rem}.sort-group[data-v-d4cecdbb]{align-self:flex-start}.skeleton-icon[data-v-d4cecdbb]{width:28px;height:28px;border-radius:7px}.mode-btn[data-v-d4cecdbb]{padding:.5rem .75rem .375rem;font-size:.8125rem}.category-grid[data-v-d4cecdbb]{grid-template-columns:1fr}.gap-row[data-v-d4cecdbb]{flex-wrap:wrap}.gap-controls[data-v-d4cecdbb]{gap:.5rem}.country-badges[data-v-d4cecdbb],.rank-compare[data-v-d4cecdbb],.signal-badges[data-v-d4cecdbb]{width:100%;margin-top:.25rem}.tab-btn[data-v-d4cecdbb]{padding:.5rem .75rem;font-size:.75rem}}
