/* ==========================================================
   ONSIDE TIMELINE WIDGET — Frontend Styles
   Adapts to JNews sidebar; white background; mobile-friendly.
   ========================================================== */

.otc-widget-wrapper {
	background: #ffffff;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #e5e5e5;
	font-family: inherit;
}

/* ── Header ── */
.otc-widget-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	padding: 13px 15px 10px;
	border-bottom: 2px solid #111111;
}

.otc-widget-title {
	font-size: 14px;
	font-weight: 800;
	color: #111111;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.otc-widget-date {
	font-size: 11px;
	color: #999999;
	font-weight: 500;
	flex-shrink: 0;
}

/* ── Scrollable events area ── */
.otc-events-container {
	max-height: 460px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #ddd transparent;
}

.otc-events-container::-webkit-scrollbar { width: 3px; }
.otc-events-container::-webkit-scrollbar-track { background: transparent; }
.otc-events-container::-webkit-scrollbar-thumb { background: #ddd; }

/* ── Sport group ── */
.otc-sport-group {
	border-bottom: 1px solid #f0f0f0;
}

.otc-sport-group:last-of-type { border-bottom: none; }

.otc-sport-header {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 9px 15px 6px;
	background: #f9f9f9;
	border-bottom: 1px solid #f0f0f0;
}

.otc-sport-icon  { font-size: 15px; line-height: 1; }

.otc-sport-name  {
	font-size: 13px;
	font-weight: 800;
	color: #111111;
}

/* ── Event list ── */
.otc-event-list {
	list-style: none;
	margin: 0;
	padding: 3px 0;
}

.otc-event-item {
	display: flex;
	align-items: baseline;
	gap: 7px;
	padding: 5px 15px;
	font-size: 13px;
	color: #333333;
	line-height: 1.4;
	transition: background 0.1s;
}

.otc-event-item:hover { background: #f5f5f5; }

/* Hidden entries (>10) */
.otc-entry-hidden { display: none !important; }

.otc-event-time {
	font-weight: 700;
	color: #111111;
	min-width: 36px;
	flex-shrink: 0;
	font-size: 13px;
}

.otc-event-sep  { color: #bbbbbb; flex-shrink: 0; }

.otc-event-teams { color: #333333; font-size: 13px; }

/* ── Show more button ── */
.otc-show-more-btn {
	display: block;
	width: 100%;
	background: none;
	border: none;
	border-top: 1px solid #f0f0f0;
	padding: 9px 15px;
	font-size: 12px;
	font-weight: 700;
	color: #888888;
	cursor: pointer;
	text-align: center;
	transition: all 0.15s;
}

.otc-show-more-btn:hover { background: #f5f5f5; color: #333333; }

/* ── Empty / loading ── */
.otc-no-events,
.otc-widget-loading {
	padding: 22px 15px;
	text-align: center;
	color: #aaaaaa;
	font-size: 13px;
	margin: 0;
}

/* ── Footer / Sutra button ── */
.otc-widget-footer {
	border-top: 1px solid #e5e5e5;
	padding: 10px 15px;
}

.otc-sutra-btn {
	display: block;
	width: 100%;
	background: #111111;
	color: #ffffff;
	border: none;
	padding: 10px 14px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	cursor: pointer;
	text-align: center;
	transition: background 0.15s;
}

.otc-sutra-btn:hover          { background: #333333; }
.otc-sutra-btn.view-tomorrow  { background: #444444; }

/* ── Mobile ── */
@media (max-width: 480px) {
	.otc-event-item    { padding: 6px 12px; }
	.otc-sport-header  { padding: 8px 12px 5px; }
	.otc-widget-header { padding: 11px 12px 8px; }
}
