:root{--bg-base: #07070f;--bg-surface: #0e0e1c;--bg-elevated: #141428;--bg-overlay: #1a1a32;--bg-hover: #20203c;--accent-primary: #6c47ff;--accent-primary-hover: #7c5aff;--accent-primary-glow: rgba(108, 71, 255, .25);--accent-secondary: #00d4a4;--accent-secondary-glow: rgba(0, 212, 164, .2);--color-success: #00d4a4;--color-warning: #ffb347;--color-danger: #ff4466;--color-info: #4db8ff;--color-purple: #9b71ff;--text-primary: #f0f0ff;--text-secondary: #9090b8;--text-muted: #5a5a80;--text-accent: #6c47ff;--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .2);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0,0,0,.4);--shadow-md: 0 4px 20px rgba(0,0,0,.5);--shadow-lg: 0 8px 40px rgba(0,0,0,.6);--shadow-accent: 0 0 30px rgba(108, 71, 255, .2);--transition-fast: .15s ease;--transition-base: .25s ease;--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;color-scheme:dark;scroll-behavior:smooth}body{font-family:var(--font-family-base);background-color:var(--bg-base);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-surface)}::-webkit-scrollbar-thumb{background:var(--bg-overlay);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}a{color:var(--accent-primary-hover);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:#9275ff}button,input,select,textarea{font-family:inherit;font-size:inherit}.app-shell{display:flex;min-height:100vh;background-color:var(--bg-base)}.main-content{flex:1;margin-left:240px;display:flex;flex-direction:column;min-width:0;min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(108,71,255,.05),transparent 40%)}.page-container{padding:var(--space-6) var(--space-8) var(--space-12);max-width:1560px;width:100%;margin:0 auto;flex:1}@media (max-width: 1024px){.page-container{padding:var(--space-4)}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;background-color:var(--bg-surface);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;z-index:100;-webkit-user-select:none;user-select:none}.sidebar-logo{padding:var(--space-6) var(--space-5);display:flex;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-subtle)}.logo-badge{width:34px;height:34px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--accent-primary),#9055ff);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 0 15px var(--accent-primary-glow)}.logo-badge svg{width:20px;height:20px}.brand-text{display:flex;flex-direction:column}.brand-title{font-size:1.05rem;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 30%,#b8a5ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-sub{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.sidebar-nav{flex:1;padding:var(--space-4) var(--space-3);overflow-y:auto;display:flex;flex-direction:column;gap:2px}.sidebar-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:var(--space-3) var(--space-3) var(--space-1);margin-top:var(--space-2)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);border-left:3px solid transparent;position:relative}.nav-item:hover{background-color:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background-color:var(--bg-elevated);color:var(--text-primary);border-left-color:var(--accent-primary);box-shadow:inset 0 0 12px #6c47ff1a;font-weight:600}.nav-item svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;stroke-width:2;transition:stroke var(--transition-fast)}.nav-item.active svg{stroke:var(--accent-primary-hover)}.nav-badge{margin-left:auto;background:var(--bg-overlay);color:var(--text-secondary);font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:var(--radius-full);border:1px solid var(--border-subtle)}.nav-badge.alert-badge{background:#f463;color:var(--color-danger);border-color:#ff44664d}.sidebar-footer{padding:var(--space-4) var(--space-4);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;background:#0e0e1c99}.user-status{display:flex;align-items:center;gap:var(--space-2)}.status-indicator-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-success);box-shadow:0 0 8px var(--accent-secondary-glow)}.status-indicator-text{font-size:.75rem;color:var(--text-secondary)}.topbar{height:64px;background-color:#0e0e1cd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-8);position:sticky;top:0;z-index:90}.topbar-left{display:flex;align-items:center;gap:var(--space-4)}.topbar-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-3)}.topbar-subtitle{font-size:.8rem;color:var(--text-muted);font-weight:400;display:block}.topbar-right{display:flex;align-items:center;gap:var(--space-4)}.topbar-search{position:relative;width:280px}.topbar-search input{width:100%;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:8px 12px 8px 36px;color:var(--text-primary);font-size:.85rem;transition:all var(--transition-fast)}.topbar-search input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.topbar-search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;stroke:var(--text-muted);pointer-events:none}.user-profile{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.user-profile:hover{background:var(--bg-hover)}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;border:1px solid var(--border-strong)}.user-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);position:relative;box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.card:hover{border-color:var(--border-default)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5);gap:var(--space-4)}.card-title-group{display:flex;flex-direction:column;gap:2px}.card-title{font-size:1.1rem;font-weight:600;letter-spacing:-.01em;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.card-subtitle{font-size:.8rem;color:var(--text-secondary)}.card-actions{display:flex;align-items:center;gap:var(--space-2)}.card-body{position:relative}.metric-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}@media (max-width: 1400px){.metric-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.metric-grid{grid-template-columns:repeat(2,1fr)}}.metric-card{background:linear-gradient(180deg,var(--bg-elevated) 0%,rgba(20,20,40,.75) 100%);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-4) var(--space-4);display:flex;flex-direction:column;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-primary),transparent);opacity:.7}.metric-card:hover{transform:translateY(-2px);border-color:var(--border-default);box-shadow:var(--shadow-md)}.metric-card.accent-purple:before{background:linear-gradient(90deg,var(--accent-primary),#a27aff)}.metric-card.accent-green:before{background:linear-gradient(90deg,var(--accent-secondary),#47ffd1)}.metric-card.accent-gold:before{background:linear-gradient(90deg,#ffb347,#fc0)}.metric-card.accent-danger:before{background:linear-gradient(90deg,var(--color-danger),#ff88a3)}.metric-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.metric-label{font-size:.8rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.metric-icon{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.metric-icon svg{width:15px;height:15px}.metric-value{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;color:var(--text-primary);line-height:1.2;margin-bottom:var(--space-2)}.metric-footer{display:flex;align-items:center;gap:var(--space-2);font-size:.75rem}.metric-trend{display:inline-flex;align-items:center;gap:3px;font-weight:600;padding:1px 6px;border-radius:var(--radius-full)}.metric-trend.trend-up{color:var(--color-success);background:#00d4a41f}.metric-trend.trend-down{color:var(--color-danger);background:#ff44661f}.metric-trend.trend-neutral{color:var(--text-secondary);background:var(--bg-overlay)}.metric-subtext{color:var(--text-muted)}.table-container{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-surface)}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.88rem}.data-table th{background:var(--bg-elevated);padding:var(--space-3) var(--space-4);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-default);white-space:nowrap;-webkit-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer;transition:color var(--transition-fast)}.data-table th.sortable:hover{color:var(--text-primary)}.data-table th.sortable .sort-arrow{display:inline-block;margin-left:4px;opacity:.4;font-size:.7rem}.data-table th.sort-asc .sort-arrow,.data-table th.sort-desc .sort-arrow{opacity:1;color:var(--accent-primary-hover)}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);vertical-align:middle}.data-table tr.table-row{transition:background-color var(--transition-fast);cursor:pointer}.data-table tr.table-row:hover{background-color:var(--bg-hover)}.data-table tr.table-row:last-child td{border-bottom:none}.cell-primary{color:var(--text-primary);font-weight:500}.cell-mono{font-family:var(--font-family-mono);font-size:.84rem}.cell-growth-pos{color:var(--color-success);font-weight:600;font-family:var(--font-family-mono)}.cell-growth-neg{color:var(--color-danger);font-weight:600;font-family:var(--font-family-mono)}.page-cell{display:flex;align-items:center;gap:var(--space-3)}.page-cell-avatar{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;color:var(--accent-primary-hover);border:1px solid var(--border-default);flex-shrink:0;overflow:hidden}.page-cell-avatar img{width:100%;height:100%;object-fit:cover}.page-cell-info{display:flex;flex-direction:column}.page-cell-name{color:var(--text-primary);font-weight:600;font-size:.9rem;line-height:1.3}.page-cell-meta{color:var(--text-muted);font-size:.75rem}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-full);font-size:.72rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;line-height:1.3;border:1px solid transparent}.badge-golden{background:linear-gradient(135deg,#ffb34733,#ff8c0033);color:#ffb84d;border-color:#ffb34766;box-shadow:0 0 10px #ffb34726}.badge-breakout{background:linear-gradient(135deg,#00d4a433,#00b48c33);color:#00e6b0;border-color:#00d4a466;box-shadow:0 0 10px #00d4a426}.badge-established{background:#5a78b426;color:#8da4d0;border-color:#5a78b44d}.badge-candidate{background:#5a5a8033;color:var(--text-muted);border-color:var(--border-subtle)}.badge-observing{background:#4db8ff26;color:#5ec2ff;border-color:#4db8ff4d}.badge-viral{background:linear-gradient(135deg,#9b71ff40,#6c47ff40);color:#bfa3ff;border-color:#9b71ff73;box-shadow:0 0 12px #6c47ff40}.badge-qualified{background:#00d4a426;color:var(--color-success);border-color:#00d4a44d}.badge-high-growth{background:#00d4a433;color:#00ffd0;border-color:#00d4a473}.badge-demo{background:#ffb3471a;color:var(--color-warning);border:1px dashed var(--color-warning)}.badge-verified{background:#00d4a41f;color:var(--color-success);border-color:#00d4a44d}.badge-estimated{background:#ffb3471f;color:var(--color-warning);border-color:#ffb3474d}.badge-unknown{background:#5a5a8026;color:var(--text-secondary);border-color:var(--border-subtle)}.badge-stale{background:#ff44661f;color:var(--color-danger);border:1px solid rgba(255,68,102,.3)}.viral-score-display{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-5);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.score-circle-wrapper{position:relative;width:110px;height:110px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.score-circle-svg{transform:rotate(-90deg);width:100%;height:100%}.score-circle-bg{fill:none;stroke:var(--bg-overlay);stroke-width:8}.score-circle-bar{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 1s ease}.score-circle-bar.score-high{stroke:var(--color-success)}.score-circle-bar.score-mid{stroke:var(--accent-secondary)}.score-circle-bar.score-low{stroke:var(--text-muted)}.score-circle-text{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center}.score-number{font-size:2rem;font-weight:800;line-height:1;font-family:var(--font-family-mono)}.score-sub{font-size:.65rem;text-transform:uppercase;color:var(--text-muted);font-weight:600;margin-top:2px}.score-breakdown-bars{flex:1;display:flex;flex-direction:column;gap:var(--space-3)}.score-bar-row{display:flex;flex-direction:column;gap:4px}.score-bar-header{display:flex;justify-content:space-between;align-items:center;font-size:.78rem}.score-bar-name{color:var(--text-secondary);display:flex;align-items:center;gap:var(--space-2)}.score-bar-weight{color:var(--text-muted);font-size:.7rem}.score-bar-value{font-family:var(--font-family-mono);font-weight:600;color:var(--text-primary)}.score-bar-track{width:100%;height:6px;background:var(--bg-overlay);border-radius:var(--radius-full);overflow:hidden}.score-bar-fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));transition:width .8s ease}.table-score-pill{font-family:var(--font-family-mono);font-weight:700;font-size:.88rem;padding:3px 8px;border-radius:var(--radius-sm);display:inline-block;text-align:center;min-width:36px}.table-score-high{background:#00d4a426;color:var(--color-success);border:1px solid rgba(0,212,164,.3)}.table-score-mid{background:#6c47ff26;color:#a48aff;border:1px solid rgba(108,71,255,.3)}.table-score-low{background:var(--bg-overlay);color:var(--text-secondary);border:1px solid var(--border-subtle)}.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);padding:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.filter-select,.filter-input{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:7px 12px;color:var(--text-primary);font-size:.84rem;transition:all var(--transition-fast);min-width:140px}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-glow)}.filter-btn{height:35px;padding:0 var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.preset-pills{display:flex;align-items:center;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2);margin-bottom:var(--space-5);scrollbar-width:thin}.preset-pill{padding:6px 14px;border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;transition:all var(--transition-fast)}.preset-pill:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.preset-pill.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary-hover);box-shadow:0 0 15px var(--accent-primary-glow);font-weight:600}.chart-container{position:relative;width:100%;min-height:280px}.chart-container canvas{width:100%!important;height:100%!important}.form-group{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-label{font-size:.82rem;font-weight:500;color:var(--text-secondary)}.form-control{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:10px 14px;color:var(--text-primary);font-size:.9rem;transition:all var(--transition-fast);width:100%}.form-control:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.form-hint{font-size:.75rem;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:8px 16px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast);text-decoration:none;line-height:1.2}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),#825eff);color:#fff;box-shadow:0 2px 10px var(--accent-primary-glow)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-primary-hover),#9275ff);box-shadow:0 4px 16px #6c47ff66}.btn-secondary{background:var(--bg-elevated);border-color:var(--border-default);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.btn-danger{background:#ff446626;color:var(--color-danger);border-color:#ff44664d}.btn-danger:hover:not(:disabled){background:#ff446640}.btn-sm{padding:5px 10px;font-size:.78rem;border-radius:var(--radius-sm)}.btn-lg{padding:12px 24px;font-size:1rem}.notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.84rem;display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);border:1px solid transparent}.notice-info{background:#4db8ff1a;border-color:#4db8ff40;color:#85d0ff}.notice-warning{background:#ffb3471a;border-color:#ffb34740;color:#ffc97a}.notice-error{background:#ff44661a;border-color:#ff446640;color:#ff7d96}.notice-success{background:#00d4a41a;border-color:#00d4a440;color:#33ffcf}.demo-banner{background:linear-gradient(90deg,#ff9f1a,#ffb347);color:#1a0f00;padding:10px var(--space-6);font-size:.85rem;font-weight:600;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 15px #ffb3474d;position:sticky;top:0;z-index:95}.demo-banner-content{display:flex;align-items:center;gap:var(--space-3)}.demo-tag{background:#1a0f00;color:#ffb347;padding:2px 8px;border-radius:var(--radius-sm);font-size:.72rem;font-weight:800;letter-spacing:.05em}.demo-banner-dismiss{background:none;border:none;color:#1a0f00;cursor:pointer;font-size:1.2rem;font-weight:700;padding:0 4px}.ai-unavailable-notice{background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3)}.ai-unavailable-icon{width:44px;height:44px;border-radius:50%;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.ai-unavailable-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.ai-unavailable-desc{font-size:.85rem;color:var(--text-secondary);max-width:440px}.loading-spinner{width:32px;height:32px;border:3px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite;margin:var(--space-8) auto}.spinner-sm{width:16px;height:16px;border-width:2px;margin:0}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-hover) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-12) var(--space-6);color:var(--text-muted)}.empty-state-icon{width:56px;height:56px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4);color:var(--text-secondary)}.empty-state-icon svg{width:28px;height:28px}.empty-state-heading{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.empty-state-subtext{font-size:.85rem;color:var(--text-secondary);max-width:360px;margin-bottom:var(--space-4)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 30%,rgba(108,71,255,.12),transparent 50%),var(--bg-base);padding:var(--space-4)}.login-card{width:100%;max-width:420px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg),var(--shadow-accent)}.login-logo{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:var(--space-6)}.login-logo .logo-badge{width:48px;height:48px;margin-bottom:var(--space-3)}.login-logo .logo-badge svg{width:28px;height:28px}.login-title{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 40%,#b8a5ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-subtitle{font-size:.85rem;color:var(--text-secondary);margin-top:4px}.password-input-wrap{position:relative}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:4px}.password-toggle-btn:hover{color:var(--text-primary)}.page-detail-header{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.detail-nav-back{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:.85rem;cursor:pointer;width:fit-content;transition:color var(--transition-fast)}.detail-nav-back:hover{color:var(--text-primary)}.page-profile-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.page-profile-left{display:flex;align-items:center;gap:var(--space-4)}.page-avatar-lg{width:64px;height:64px;border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-default);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:var(--accent-primary-hover);overflow:hidden}.page-avatar-lg img{width:100%;height:100%;object-fit:cover}.page-profile-meta{display:flex;flex-direction:column;gap:4px}.page-title-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.page-name-lg{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.page-external-link{color:var(--text-muted);display:inline-flex;align-items:center;transition:color var(--transition-fast)}.page-external-link:hover{color:var(--accent-primary-hover)}.page-submeta-badges{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;margin-top:var(--space-4)}.pagination-info{font-size:.82rem;color:var(--text-muted)}.pagination-controls{display:flex;align-items:center;gap:var(--space-1)}.page-btn{min-width:32px;height:32px;padding:0 6px;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.page-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.page-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.page-btn:disabled{opacity:.3;cursor:not-allowed}.freshness{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary)}.freshness-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.freshness-fresh .freshness-dot{background-color:var(--color-success);box-shadow:0 0 6px #00d4a480}.freshness-aging .freshness-dot{background-color:var(--color-warning);box-shadow:0 0 6px #ffb34780}.freshness-old .freshness-dot{background-color:#ff884d;box-shadow:0 0 6px #ff884d80}.freshness-stale .freshness-dot{background-color:var(--color-danger);box-shadow:0 0 6px #ff446680}.freshness-stale{color:var(--color-danger);font-weight:600}.confidence-bar-wrapper{display:inline-flex;align-items:center;gap:8px}.confidence-bar{width:48px;height:5px;background:var(--bg-overlay);border-radius:var(--radius-full);overflow:hidden}.confidence-bar-fill{height:100%;border-radius:var(--radius-full)}.confidence-high .confidence-bar-fill{background:var(--color-success)}.confidence-mid .confidence-bar-fill{background:var(--color-warning)}.confidence-low .confidence-bar-fill{background:var(--color-danger)}.confidence-text{font-size:.75rem;font-family:var(--font-family-mono);color:var(--text-secondary)}.why-viral-card{background:linear-gradient(180deg,var(--bg-elevated) 0%,rgba(20,20,40,.9) 100%);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);position:relative;overflow:hidden}.why-viral-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#9b71ff,#00d4a4)}.signals-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.signal-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.signal-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.signal-icon.positive{background:#00d4a426;color:var(--color-success)}.signal-icon.caution{background:#ffb34726;color:var(--color-warning)}.signal-text{font-size:.85rem;color:var(--text-primary);line-height:1.4}.signal-desc{font-size:.78rem;color:var(--text-secondary);margin-top:2px}.detail-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}@media (max-width: 1024px){.detail-grid-2col{grid-template-columns:1fr}.main-content{margin-left:0}.sidebar{position:static;width:100%;height:auto}.app-shell{flex-direction:column}}.dropzone{border:2px dashed var(--border-default);border-radius:var(--radius-md);padding:var(--space-8) var(--space-4);text-align:center;background:#14142866;cursor:pointer;transition:all var(--transition-fast)}.dropzone:hover{border-color:var(--accent-primary);background:#6c47ff0d}.nav-tab{background:none;border:none;border-bottom:2px solid transparent;padding:var(--space-3) var(--space-4);font-size:.88rem;font-weight:600;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;transition:all var(--transition-fast)}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}
