/* sports_top.css */
.page-title { font-size: 1.2rem; font-weight: bold; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid var(--accent-color); }

.sport-section { margin-bottom: 30px; }
.sport-title { font-size: 1rem; font-weight: bold; color: var(--accent-color); padding: 5px 10px; border-left: 4px solid var(--accent-color); background: var(--bg-light); margin-bottom: 15px; }

.link-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }

/* リンクアイテム：左寄せに戻し、矢印を削除 */
.link-item { 
    display: flex; 
    align-items: center; 
    justify-content: flex-start; 
    padding: 12px 15px; 
    background: #fff; 
    border: 1px solid var(--border-soft); 
    border-radius: 6px; 
    text-decoration: none; 
    color: var(--text-main); 
    transition: 0.2s; 
}
.link-item:hover { background: #f8fbff; border-color: var(--accent-color); }

/* バッジの余白：全角1.5文字分 */
.status-badge { 
    font-size: 0.7rem; 
    padding: 2px 6px; 
    border-radius: 10px; 
    background-color: #e74c3c; 
    color: #fff; 
    margin-left: 1.5em; 
    white-space: nowrap;
}

@media (max-width: 768px) {
    .link-grid { grid-template-columns: 1fr; }
    .status-badge { margin-left: 1em; }
}