/* ⚔️ Кулинарный бой дня */
.battle-section { margin-bottom: 24px; padding: 16px; background: #fff; border-radius: 16px; border: 1px solid #e2e8f0; }
.battle-grid { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; }
.battle-item { text-align: center; padding: 8px; border: 2px solid transparent; border-radius: 12px; transition: border-color 0.2s; }
.battle-item.is-selected { border-color: #22c55e; background: #f0fdf4; }
.battle-item img { width: 100%; max-height: 160px; object-fit: cover; border-radius: 8px; }
.battle-title { display: block; margin: 6px 0; font-weight: 700; color: #1e293b; text-decoration: none; }
.battle-title:hover { color: #d97706; }
.battle-stat { color: #64748b; font-size: 13px; margin-bottom: 6px; }
.battle-vs { font-weight: 900; font-size: 20px; color: #f59e0b; }
.battle-badge { background: #fef3c7; color: #92400e; padding: 4px 10px; border-radius: 12px; font-size: 12px; font-weight: 700; }
.battle-bar { height: 6px; background: #e2e8f0; border-radius: 3px; margin-top: 12px; overflow: hidden; }
.battle-bar-fill { height: 100%; background: linear-gradient(90deg, #f59e0b, #d97706); transition: width 0.3s; }
@media (max-width: 480px) {
    .battle-grid { grid-template-columns: 1fr; }
    .battle-vs { display: none; }
}

/* === Отдельная страница /battle.php === */
.battle-page-wrap { max-width: 960px; margin: 24px auto; padding: 0 16px; }
.battle-page-header { text-align: center; margin-bottom: 24px; }
.battle-page-title { font-size: 28px; font-weight: 800; color: #0f172a; margin: 8px 0; }
.battle-page-subtitle { color: #64748b; font-size: 15px; }
.battle-page-card { padding: 24px; box-shadow: 0 4px 20px rgba(0,0,0,0.06); }
.battle-grid-large { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: start; }
.battle-card-large { background: #f8fafc; border: 2px solid #e2e8f0; border-radius: 16px; padding: 16px; text-align: center; display: flex; flex-direction: column; height: 100%; transition: border-color 0.2s; }
.battle-card-large.is-selected { border-color: #22c55e; background: #f0fdf4; }
.battle-img-box { position: relative; width: 100%; height: 220px; border-radius: 12px; overflow: hidden; margin-bottom: 12px; }
.battle-img-box img { width: 100%; height: 100%; object-fit: cover; }
.battle-score-pill { position: absolute; top: 10px; right: 10px; background: rgba(15,23,42,0.85); color: #fff; font-weight: 800; padding: 4px 10px; border-radius: 20px; font-size: 14px; }
.battle-title-large { font-size: 18px; font-weight: 700; color: #1e293b; text-decoration: none; margin-bottom: 8px; line-height: 1.3; }
.battle-title-large:hover { color: #f59e0b; }
.battle-meta { display: flex; justify-content: center; gap: 12px; font-size: 13px; color: #64748b; margin-bottom: 16px; flex-wrap: wrap; }
.battle-actions { margin-top: auto; display: flex; gap: 8px; justify-content: center; }
.battle-vs-large { align-self: center; font-size: 28px; font-weight: 900; color: #f59e0b; background: #fffbeb; width: 56px; height: 56px; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 2px solid #fef3c7; }
.battle-counts-row { display: flex; justify-content: space-between; font-size: 13px; color: #64748b; font-weight: 600; margin-top: 6px; }
.battle-share-box { text-align: center; margin-top: 24px; padding-top: 16px; border-top: 1px solid #e2e8f0; }
.btn-telegram-share { background: #229ED9; color: #fff; border-radius: 24px; padding: 10px 20px; font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.btn-telegram-share:hover { background: #1c88bd; color: #fff; }
@media (max-width: 680px) { .battle-grid-large { grid-template-columns: 1fr; } .battle-vs-large { margin: 8px auto; } }
