.sum-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.sum-side { position: sticky; top: 80px; }
.flag-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px 16px; margin-top: 6px; }
.mob-stage { margin-top: 0; }
.mob-stage canvas { image-rendering: pixelated; }
.mob-info { display: grid; gap: 4px; }
.mob-info > b { font-size: 18px; }
.mob-info > .mono { font-size: 12.5px; color: var(--ink-3); }
.hearts { display: flex; flex-wrap: wrap; gap: 2px; align-items: center; margin: 6px 0; font-size: 12px; color: var(--ink-3); }
.ht { width: 12px; height: 11px; background: #d8231e; clip-path: polygon(0 20%, 20% 0, 45% 0, 50% 15%, 55% 0, 80% 0, 100% 20%, 100% 50%, 50% 100%, 0 50%); display: inline-block; }
.ht.half { background: linear-gradient(90deg, #d8231e 50%, var(--line-strong) 50%); }
@media (max-width: 900px) { .sum-grid { grid-template-columns: 1fr; } .sum-side { position: static; } }
