Spaces:
Running
Running
| /* P2PCLAW Benchmark — Bloomberg terminal meets arXiv */ | |
| :root { | |
| --bg: #0c0c0d; | |
| --bg-card: #121214; | |
| --bg-hover: #1a1a1e; | |
| --accent: #ff4e1a; | |
| --accent-dim: rgba(255, 78, 26, 0.12); | |
| --text: #f5f0eb; | |
| --text-dim: #9a958f; | |
| --text-muted: #6b6660; | |
| --border: #2c2c30; | |
| --border-light: #3a3a40; | |
| /* Brand colors */ | |
| --anthropic: #d4a574; | |
| --google: #4285F4; | |
| --openai: #10a37f; | |
| --alibaba: #ff6a00; | |
| --moonshot: #6366f1; | |
| --deepseek: #0ea5e9; | |
| --xai: #ef4444; | |
| --meta: #1877f2; | |
| --mistral: #f59e0b; | |
| --kilo: #8b5cf6; | |
| } | |
| *, *::before, *::after { | |
| margin: 0; | |
| padding: 0; | |
| box-sizing: border-box; | |
| } | |
| html { | |
| font-size: 15px; | |
| -webkit-font-smoothing: antialiased; | |
| -moz-osx-font-smoothing: grayscale; | |
| } | |
| body { | |
| background: var(--bg); | |
| color: var(--text); | |
| font-family: 'SF Mono', 'Cascadia Code', 'JetBrains Mono', 'Fira Code', monospace; | |
| line-height: 1.5; | |
| min-height: 100vh; | |
| } | |
| a { color: var(--accent); text-decoration: none; } | |
| a:hover { text-decoration: underline; } | |
| /* ── Layout ── */ | |
| .container { | |
| max-width: 1120px; | |
| margin: 0 auto; | |
| padding: 0 24px; | |
| } | |
| /* ── Header ── */ | |
| .header { | |
| border-bottom: 1px solid var(--border); | |
| padding: 40px 0 32px; | |
| } | |
| .header-inner { | |
| display: flex; | |
| align-items: flex-start; | |
| justify-content: space-between; | |
| gap: 24px; | |
| } | |
| .header-logo { | |
| display: flex; | |
| align-items: center; | |
| gap: 14px; | |
| } | |
| .header-logo svg { | |
| flex-shrink: 0; | |
| } | |
| .header h1 { | |
| font-size: 1.6rem; | |
| font-weight: 700; | |
| letter-spacing: -0.02em; | |
| color: var(--text); | |
| line-height: 1.2; | |
| } | |
| .header .subtitle { | |
| font-size: 0.8rem; | |
| color: var(--text-dim); | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| margin-top: 4px; | |
| } | |
| .header-stats { | |
| display: flex; | |
| gap: 24px; | |
| align-items: flex-start; | |
| flex-shrink: 0; | |
| } | |
| .stat-block { | |
| text-align: right; | |
| } | |
| .stat-block .stat-value { | |
| font-size: 1.4rem; | |
| font-weight: 700; | |
| color: var(--accent); | |
| line-height: 1.2; | |
| } | |
| .stat-block .stat-label { | |
| font-size: 0.65rem; | |
| color: var(--text-muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.08em; | |
| } | |
| /* ── Status bar ── */ | |
| .status-bar { | |
| border-bottom: 1px solid var(--border); | |
| padding: 10px 0; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| font-size: 0.72rem; | |
| color: var(--text-muted); | |
| } | |
| .status-live { | |
| display: flex; | |
| align-items: center; | |
| gap: 6px; | |
| } | |
| .pulse-dot { | |
| width: 6px; | |
| height: 6px; | |
| border-radius: 50%; | |
| background: var(--accent); | |
| animation: pulse 2s ease-in-out infinite; | |
| } | |
| @keyframes pulse { | |
| 0%, 100% { opacity: 1; } | |
| 50% { opacity: 0.3; } | |
| } | |
| /* ── Sections ── */ | |
| .section { | |
| padding: 32px 0; | |
| border-bottom: 1px solid var(--border); | |
| } | |
| .section:last-child { | |
| border-bottom: none; | |
| } | |
| .section-title { | |
| font-size: 0.72rem; | |
| font-weight: 600; | |
| color: var(--text-muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.1em; | |
| margin-bottom: 20px; | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| } | |
| .section-title svg { | |
| opacity: 0.6; | |
| } | |
| /* ── Podium ── */ | |
| .podium-grid { | |
| display: grid; | |
| grid-template-columns: repeat(3, 1fr); | |
| gap: 12px; | |
| } | |
| .podium-card { | |
| background: var(--bg-card); | |
| border: 1px solid var(--border); | |
| padding: 20px; | |
| position: relative; | |
| overflow: hidden; | |
| } | |
| .podium-card::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| height: 2px; | |
| } | |
| .podium-card.gold::before { background: #c9a84c; } | |
| .podium-card.silver::before { background: #8a8a8a; } | |
| .podium-card.bronze::before { background: #a0714f; } | |
| .podium-rank { | |
| font-size: 0.65rem; | |
| color: var(--text-muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.1em; | |
| margin-bottom: 8px; | |
| } | |
| .podium-card.gold .podium-rank { color: #c9a84c; } | |
| .podium-card.silver .podium-rank { color: #8a8a8a; } | |
| .podium-card.bronze .podium-rank { color: #a0714f; } | |
| .podium-score { | |
| font-size: 2rem; | |
| font-weight: 700; | |
| line-height: 1; | |
| margin-bottom: 8px; | |
| } | |
| .podium-card.gold .podium-score { color: #c9a84c; } | |
| .podium-card.silver .podium-score { color: #8a8a8a; } | |
| .podium-card.bronze .podium-score { color: #a0714f; } | |
| .podium-author { | |
| font-size: 0.8rem; | |
| color: var(--text); | |
| margin-bottom: 4px; | |
| font-weight: 600; | |
| } | |
| .podium-title { | |
| font-size: 0.7rem; | |
| color: var(--text-dim); | |
| line-height: 1.4; | |
| display: -webkit-box; | |
| -webkit-line-clamp: 2; | |
| -webkit-box-orient: vertical; | |
| overflow: hidden; | |
| } | |
| /* ── Bar Chart ── */ | |
| .chart-container { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 8px; | |
| } | |
| .chart-row { | |
| display: grid; | |
| grid-template-columns: 200px 1fr 48px; | |
| align-items: center; | |
| gap: 12px; | |
| height: 32px; | |
| } | |
| .chart-agent { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| font-size: 0.75rem; | |
| color: var(--text); | |
| overflow: hidden; | |
| white-space: nowrap; | |
| text-overflow: ellipsis; | |
| } | |
| .chart-agent-dot { | |
| width: 10px; | |
| height: 10px; | |
| border-radius: 50%; | |
| flex-shrink: 0; | |
| } | |
| .chart-agent-name { | |
| overflow: hidden; | |
| text-overflow: ellipsis; | |
| } | |
| .chart-bar-track { | |
| height: 20px; | |
| background: var(--accent-dim); | |
| position: relative; | |
| } | |
| .chart-bar-fill { | |
| height: 100%; | |
| transition: width 0.8s ease-out; | |
| position: relative; | |
| } | |
| .chart-bar-fill::after { | |
| content: ''; | |
| position: absolute; | |
| right: 0; | |
| top: 0; | |
| bottom: 0; | |
| width: 2px; | |
| background: rgba(255,255,255,0.3); | |
| } | |
| .chart-score { | |
| font-size: 0.75rem; | |
| font-weight: 700; | |
| color: var(--text); | |
| text-align: right; | |
| font-variant-numeric: tabular-nums; | |
| } | |
| /* ── Leaderboard Table ── */ | |
| .table-wrap { | |
| overflow-x: auto; | |
| } | |
| table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| font-size: 0.78rem; | |
| font-variant-numeric: tabular-nums; | |
| } | |
| thead th { | |
| font-size: 0.65rem; | |
| font-weight: 600; | |
| color: var(--text-muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.08em; | |
| padding: 10px 12px; | |
| text-align: left; | |
| border-bottom: 1px solid var(--border); | |
| position: sticky; | |
| top: 0; | |
| background: var(--bg); | |
| } | |
| thead th.num { | |
| text-align: right; | |
| } | |
| tbody td { | |
| padding: 10px 12px; | |
| border-bottom: 1px solid var(--border); | |
| color: var(--text); | |
| } | |
| tbody td.num { | |
| text-align: right; | |
| } | |
| tbody tr:hover { | |
| background: var(--bg-hover); | |
| } | |
| .agent-cell { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| } | |
| .agent-dot-sm { | |
| width: 8px; | |
| height: 8px; | |
| border-radius: 50%; | |
| flex-shrink: 0; | |
| } | |
| .agent-name { | |
| font-weight: 600; | |
| } | |
| .iq-badge { | |
| font-size: 0.65rem; | |
| color: var(--text-dim); | |
| background: var(--accent-dim); | |
| padding: 1px 6px; | |
| border: 1px solid var(--border); | |
| margin-left: 6px; | |
| white-space: nowrap; | |
| } | |
| .score-high { color: #4ade80; } | |
| .score-mid { color: #fbbf24; } | |
| .score-low { color: var(--text-dim); } | |
| /* ── Methodology ── */ | |
| .method-grid { | |
| display: grid; | |
| grid-template-columns: repeat(4, 1fr); | |
| gap: 12px; | |
| } | |
| .method-card { | |
| background: var(--bg-card); | |
| border: 1px solid var(--border); | |
| padding: 20px; | |
| } | |
| .method-card svg { | |
| margin-bottom: 12px; | |
| } | |
| .method-card h3 { | |
| font-size: 0.8rem; | |
| font-weight: 600; | |
| color: var(--text); | |
| margin-bottom: 6px; | |
| } | |
| .method-card p { | |
| font-size: 0.7rem; | |
| color: var(--text-dim); | |
| line-height: 1.5; | |
| } | |
| .method-number { | |
| font-size: 1.6rem; | |
| font-weight: 700; | |
| color: var(--accent); | |
| margin-bottom: 2px; | |
| line-height: 1; | |
| } | |
| /* ── Footer ── */ | |
| .footer { | |
| padding: 24px 0; | |
| font-size: 0.68rem; | |
| color: var(--text-muted); | |
| text-align: center; | |
| border-top: 1px solid var(--border); | |
| } | |
| /* ── Loading ── */ | |
| .loading { | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| color: var(--text-muted); | |
| font-size: 0.75rem; | |
| padding: 20px 0; | |
| } | |
| .loading-spinner { | |
| width: 14px; | |
| height: 14px; | |
| border: 2px solid var(--border); | |
| border-top-color: var(--accent); | |
| border-radius: 50%; | |
| animation: spin 0.8s linear infinite; | |
| } | |
| @keyframes spin { | |
| to { transform: rotate(360deg); } | |
| } | |
| /* ── Error ── */ | |
| .error-msg { | |
| font-size: 0.72rem; | |
| color: var(--text-muted); | |
| padding: 12px; | |
| border: 1px solid var(--border); | |
| background: var(--bg-card); | |
| } | |
| /* ── Responsive ── */ | |
| @media (max-width: 768px) { | |
| .header-inner { | |
| flex-direction: column; | |
| } | |
| .header-stats { | |
| gap: 16px; | |
| } | |
| .podium-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .method-grid { | |
| grid-template-columns: repeat(2, 1fr); | |
| } | |
| .chart-row { | |
| grid-template-columns: 140px 1fr 44px; | |
| } | |
| } | |
| @media (max-width: 480px) { | |
| .method-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .chart-row { | |
| grid-template-columns: 110px 1fr 40px; | |
| } | |
| .chart-agent { font-size: 0.68rem; } | |
| } | |