/* ==========================================================================
   Event detail page (channel table view)
   ========================================================================== */

/* -------------------------------------------------------- header strip */
.event-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.event-header-left {
	display: flex;
	align-items: center;
	gap: 10px;
}
.event-header-text { line-height: 1.3; }
.event-league-name {
	font-weight: 700;
	font-size: 14px;
	color: var(--text);
}
.event-time-row {
	font-size: 12px;
	color: var(--muted);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.event-time-row .fa { font-size: 11px; }

/* -------------------------------------------------------- team banner */
.event-banner {
	background: var(--banner);
	color: var(--banner-text);
	border-radius: var(--radius-md);
	padding: 18px 16px;
	margin-bottom: 14px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	gap: 16px;
	align-items: center;
}
.event-banner.is-live {
	background: linear-gradient(135deg, #2c3e57 0%, #344a6c 100%);
}

.banner-team {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-align: center;
}
.banner-team img {
	width: 48px; height: 48px;
	border-radius: 50%;
	background: #fff;
	padding: 4px;
	object-fit: contain;
}
.banner-team-left  { justify-self: start;  }
.banner-team-right { justify-self: end;    }
.banner-team-name {
	font-size: 13px;
	font-weight: 600;
	color: #fff;
}

.banner-center {
	text-align: center;
	display: flex; flex-direction: column; gap: 4px;
}
.badge-live-lg {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #dc2626;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	padding: 6px 14px;
	border-radius: 999px;
	letter-spacing: .3px;
}
.badge-live-lg .dot {
	width: 8px; height: 8px;
	border-radius: 50%;
	background: #fff;
	animation: pulse 1.4s infinite;
}
@keyframes pulse {
	0%   { opacity: 1; }
	50%  { opacity: .35; }
	100% { opacity: 1; }
}
.badge-upcoming {
	display: inline-block;
	background: rgba(255,255,255,.15);
	color: #fff;
	font-weight: 600;
	font-size: 12px;
	padding: 4px 10px;
	border-radius: 999px;
}
.banner-start {
	font-size: 12px;
	color: rgba(255,255,255,.85);
}

@media (max-width: 480px) {
	.event-banner { padding: 14px 10px; gap: 8px; }
	.banner-team img { width: 40px; height: 40px; }
	.banner-team-name { font-size: 11px; }
	.badge-live-lg { font-size: 12px; padding: 4px 10px; }
}

/* -------------------------------------------------------- channel table */
.channel-table-wrap {
	background: var(--card-2);
	border-radius: var(--radius-md);
	padding: 8px 8px 4px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.channel-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
	min-width: 560px;
}
.channel-table caption { text-align: left; }
.channel-table th {
	text-align: left;
	font-weight: 600;
	color: var(--text);
	padding: 12px 10px;
	border-bottom: 1px solid var(--border);
	background: transparent;
	white-space: nowrap;
}
.channel-table td {
	padding: 12px 10px;
	color: var(--text);
	border-bottom: 1px solid rgba(0,0,0,.04);
	vertical-align: middle;
	text-align: left;
}
.channel-table tbody tr:last-child td { border-bottom: 0; }
.channel-table tbody tr:hover td { background: rgba(25,135,84,.04); }

.channel-table .col-icon { width: 36px; text-align: center; }
.channel-table .col-icon .fa { color: var(--brand); font-size: 14px; }
.channel-table .col-mobile,
.channel-table .col-ads,
.channel-table .col-lang { width: 90px; }
.channel-table .col-link { width: 80px; text-align: right; }

.watch-btn {
	display: inline-block;
	color: var(--accent);
	font-weight: 700;
	padding: 4px 8px;
	border-radius: 4px;
	transition: color .15s, background .15s;
}
.watch-btn:hover {
	color: var(--accent-dark);
	background: rgba(249,115,22,.08);
}
.watch-btn-disabled {
	color: var(--muted);
	cursor: not-allowed;
}
.watch-btn-disabled:hover { background: transparent; color: var(--muted); }

@media (max-width: 480px) {
	.channel-table { font-size: 12px; min-width: 460px; }
	.channel-table th, .channel-table td { padding: 10px 6px; }
	.channel-table .col-mobile,
	.channel-table .col-ads,
	.channel-table .col-lang { width: auto; }
}

/* -------------------------------------------------------- SEO copy below table */
.event-seo {
	margin-top: 16px;
	padding: 0 4px;
}
.event-seo h2 {
	font-size: 18px;
	font-weight: 700;
	color: var(--text);
	margin: 0 0 8px;
}
.event-seo h3 {
	font-size: 14px;
	font-weight: 600;
	color: var(--text);
	margin: 0 0 10px;
}
.event-seo p {
	font-size: 13px;
	color: var(--text);
	line-height: 1.6;
	margin: 0 0 10px;
}

/* -------------------------------------------------------- FAQ block */
.event-faq {
	margin-top: 18px;
	padding: 0 4px;
}
.event-faq h2 {
	font-size: 16px;
	font-weight: 700;
	color: var(--text);
	margin: 0 0 10px;
}
.faq-item {
	background: var(--card-2);
	border-radius: var(--radius-sm);
	margin-bottom: 8px;
	padding: 10px 14px;
}
.faq-item summary {
	font-weight: 600;
	cursor: pointer;
	font-size: 13px;
	color: var(--text);
	list-style: none;
	padding-right: 20px;
	position: relative;
}
.faq-item summary::after {
	content: '+';
	position: absolute;
	right: 0;
	top: -1px;
	font-size: 16px;
	font-weight: 400;
	color: var(--muted);
}
.faq-item[open] summary::after { content: '−'; }
.faq-item p {
	margin: 8px 0 0;
	font-size: 13px;
	color: var(--muted);
	line-height: 1.55;
}

/* -------------------------------------------------------- related-events block */
.related-events {
	margin-top: 22px;
	padding: 0 4px;
}
.related-events h2 {
	font-size: 16px;
	font-weight: 700;
	color: var(--text);
	margin: 0 0 10px;
}
.related-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.related-list li { margin: 0 0 6px; }
.related-list a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 8px 12px;
	background: var(--card-2);
	border-radius: var(--radius-sm);
	color: var(--text);
	font-size: 13px;
	transition: background .15s;
}
.related-list a:hover {
	background: rgba(25,135,84,.07);
	color: var(--text);
}
.related-title {
	font-weight: 500;
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.related-meta {
	flex-shrink: 0;
	color: var(--muted);
	font-size: 12px;
}
