.hero-sub { margin-top: 14px; font-family: var(--font-display); font-size: 1rem; color: #5a6068; letter-spacing: 3px; text-transform: uppercase; }
.hero-num { font-family: var(--font-display); font-size: 5rem; font-weight: 700; background: linear-gradient(180deg, #AB2020 0%, #DE6666 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1; transition: opacity 0.3s ease; }
.hero-source { display: block; font-size: 0.7rem; color: #4a5058; letter-spacing: 1px; margin-top: 6px; text-transform: none; font-family: var(--font-body); }

.features-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; margin-top: 16px; }
.features-grid ul { list-style: none; margin: 0; padding: 0; }
.features-grid li { margin-bottom: 10px; padding-left: 22px; position: relative; font-size: 0.95rem; }
.features-grid li::before { content: '>'; position: absolute; left: 0; color: #AB2020; font-weight: bold; }

.code-block { background: rgba(6,6,6,0.95); border: 1px solid #2a2e33; border-left: 3px solid rgba(171,32,32,0.5); border-radius: 3px; padding: 20px 24px; margin: 16px 0; overflow-x: auto; font-family: var(--font-mono), 'Courier New', monospace; font-size: 0.82rem; line-height: 1.7; color: #c0b0b0; white-space: pre; }
.code-block .kw { color: #DE6666; }
.code-block .ty { color: #AB6060; }
.code-block .cm { color: #4a5058; font-style: italic; }
.code-block .st { color: #8a929a; }
.code-block .fn { color: #CCB6B6; }
.code-label { font-family: var(--font-display); font-size: 0.75rem; letter-spacing: 3px; text-transform: uppercase; color: #4a5058; margin-bottom: 8px; margin-top: 24px; }
.code-label:first-child { margin-top: 0; }

.tab-section { margin-bottom: 12px; }
.tab-label { font-family: var(--font-display); font-size: 0.75rem; color: #5a6068; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 8px; }
.tab-row { display: flex; gap: 8px; flex-wrap: wrap; }
.tab-btn { font-family: var(--font-display); font-size: 0.9rem; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: #8a929a; background: rgba(40,44,50,0.6); border: 1px solid #3a3f45; border-radius: 3px; padding: 7px 16px; cursor: pointer; transition: all 0.2s ease; }
.tab-btn:hover { color: #CCB6B6; border-color: #5a6068; background: rgba(60,66,74,0.7); }
.tab-btn.active { color: #AB2020; border-color: #AB2020; background: rgba(171,32,32,0.08); box-shadow: 0 0 12px rgba(171,32,32,0.15); }

.summary-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin: 24px 0; }
.stat-card { background: rgba(20,20,20,0.8); border: 1px solid #3a3f45; border-radius: 4px; padding: 20px; text-align: center; transition: all 0.3s ease; }
.stat-card.win { border-color: rgba(171,32,32,0.5); }
.stat-card.win:hover { border-color: #AB2020; box-shadow: 0 0 20px rgba(171,32,32,0.1); }
.stat-card.tie { border-color: rgba(130,145,165,0.4); }
.stat-card.second { border-color: rgba(80,90,100,0.4); }
.stat-num { font-family: var(--font-display); font-size: 2.8rem; font-weight: 700; line-height: 1; margin-bottom: 6px; }
.stat-card.win .stat-num { background: linear-gradient(180deg,#AB2020 0%,#DE6666 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.stat-card.tie .stat-num { color: #8a929a; }
.stat-card.second .stat-num { color: #5a6068; }
.stat-label { font-family: var(--font-display); font-size: 0.8rem; letter-spacing: 2px; text-transform: uppercase; color: #8a929a; }
.stat-sub { font-size: 0.75rem; color: #4a5058; margin-top: 4px; }

.meta-bar { display: flex; gap: 24px; flex-wrap: wrap; margin: 16px 0 24px 0; padding: 12px 16px; background: rgba(10,10,10,0.5); border: 1px solid #2a2e33; border-radius: 3px; }
.meta-item { font-size: 0.8rem; color: #5a6068; }
.meta-item span { color: #8a929a; font-family: var(--font-display); letter-spacing: 1px; }

.bench-table-wrap { overflow-x: auto; margin-top: 8px; }
.bench-table { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
.bench-table th { font-family: var(--font-display); font-size: 0.75rem; letter-spacing: 2px; text-transform: uppercase; color: #5a6068; padding: 10px 12px; text-align: left; border-bottom: 1px solid #2a2e33; white-space: nowrap; }
.bench-table td { padding: 7px 12px; border-bottom: 1px solid rgba(42,46,51,0.5); vertical-align: top; }
.bench-table tr:hover td { background: rgba(255,255,255,0.015); }
.group-row td { font-family: var(--font-display); font-size: 0.85rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #AB2020; padding: 14px 12px 6px 12px; border-bottom: 1px solid rgba(171,32,32,0.2); background: rgba(171,32,32,0.03); }
.cell-lib { font-family: var(--font-display); font-size: 0.85rem; letter-spacing: 1px; }
.cell-speed { font-family: var(--font-display); font-weight: 700; font-size: 0.95rem; }

.bar-wrap { display: flex; align-items: center; gap: 8px; }
.bar-track { flex: 1; height: 6px; background: rgba(255,255,255,0.04); border-radius: 3px; overflow: hidden; min-width: 60px; }
.bar-fill { height: 100%; border-radius: 3px; }

.winner-badge { display: inline-block; font-family: var(--font-display); font-size: 0.62rem; letter-spacing: 1px; color: #DE6666; border: 1px solid rgba(222,102,102,0.4); border-radius: 2px; padding: 1px 5px; margin-left: 6px; vertical-align: middle; text-transform: uppercase; }
.tie-badge { display: inline-block; font-family: var(--font-display); font-size: 0.62rem; letter-spacing: 1px; color: #8a929a; border: 1px solid rgba(138,146,154,0.4); border-radius: 2px; padding: 1px 5px; margin-left: 6px; vertical-align: middle; text-transform: uppercase; }

.loading-state { text-align: center; padding: 60px 20px; font-family: var(--font-display); letter-spacing: 3px; text-transform: uppercase; color: #4a5058; }
.loading-state::after { content: ''; display: inline-block; width: 6px; height: 6px; background: #AB2020; border-radius: 50%; margin-left: 8px; animation: pulse 1s infinite; vertical-align: middle; }
@keyframes pulse { 0%,100% { opacity: 0.3; } 50% { opacity: 1; } }
.error-state { text-align: center; padding: 40px 20px; color: #5a6068; font-size: 0.9rem; }
.error-state a { color: #AB2020; text-decoration: none; border-bottom: 1px solid rgba(171,32,32,0.3); }

.test-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.test-card { background: rgba(15,15,15,0.6); border: 1px solid #2a2e33; border-left: 2px solid rgba(171,32,32,0.4); border-radius: 3px; padding: 14px 18px; }
.test-card-title { font-family: var(--font-display); font-size: 0.85rem; letter-spacing: 2px; text-transform: uppercase; color: #DE6666; margin-bottom: 6px; }
.test-card-body { font-size: 0.85rem; color: #8a929a; line-height: 1.5; }

.ack-list { list-style: none; margin: 0; padding: 0; }
.ack-list li { padding: 8px 0 8px 22px; position: relative; font-size: 0.9rem; color: #8a929a; border-bottom: 1px solid rgba(42,46,51,0.4); }
.ack-list li:last-child { border-bottom: none; }
.ack-list li::before { content: '◆'; position: absolute; left: 0; color: #AB2020; font-size: 0.7rem; top: 11px; }
.ack-list strong { color: #CCB6B6; font-weight: 600; }

@media (max-width: 768px) {
    .hero-num { font-size: 3.5rem; }
    .summary-grid { grid-template-columns: 1fr 1fr; }
    .features-grid { grid-template-columns: 1fr; }
    .test-grid { grid-template-columns: 1fr; }
}