.ws-scoreboard{
	position:relative;
	border-radius:10px;
	overflow:hidden;
	margin:10px 0 15px 0;
	color:#fff;
	background:
		linear-gradient(90deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.15) 40%, rgba(0,0,0,.15) 60%, rgba(0,0,0,.45) 100%),
		linear-gradient(90deg,
			var(--ws-home1, #0e4aa8) 0%,
			var(--ws-home2, var(--ws-home1, #0e4aa8)) 50%,
			var(--ws-guest2, var(--ws-guest1, #1c6bd6)) 50%,
			var(--ws-guest1, #1c6bd6) 100%);
	box-shadow:0 8px 22px rgba(0,0,0,.25);
}

.ws-scoreboard:after{
	content:"";
	position:absolute;
	left:50%;
	top:0;
	bottom:0;
	width:2px;
	transform:translateX(-1px);
	background:rgba(0,0,0,.35);
	pointer-events:none;
}

.ws-scoreboard__top{
	position:relative;
	display:flex;
	gap:14px;
	padding:14px 16px 10px 16px;
	align-items:stretch;
}

.ws-scoreboard__competition{
	position:absolute;
	left:16px;
	top:14px;
	width:110px;
	min-width:110px;
	display:flex;
	align-items:flex-start;
	justify-content:flex-start;
	pointer-events:none;
}

.ws-scoreboard__competitionLogo{
	max-width:96px;
	max-height:54px;
	object-fit:contain;
	filter:drop-shadow(0 2px 8px rgba(0,0,0,.35));
}

.ws-scoreboard__competitionFallback{
	font-weight:700;
	font-size:12px;
	line-height:1.2;
	opacity:.95;
}

.ws-scoreboard__center{
	flex:1;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:100%;
}

.ws-scoreboard__teams{
	width:100%;
	min-height:110px;
	position:relative;
}

.ws-scoreboard__team{
	position:absolute;
	top:50%;
	transform:translate(-50%, -55%);
	width:auto;
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:2;
}
.ws-scoreboard__team--home{ left:25%; }
.ws-scoreboard__team--guest{ left:75%; }

.ws-scoreboard__teamLogo{
	max-width:84px;
	max-height:84px;
	object-fit:contain;
	filter:drop-shadow(0 3px 10px rgba(0,0,0,.35));
}

.ws-scoreboard__scoreCenter{
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%, -45%);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:6px;
	width:auto;
	z-index:3;
}

.ws-scoreboard__scoreLine{
	position:relative;
	display:block;
	line-height:1;
	height:80px;
	width:190px;
}

.ws-scoreboard__goals{
	position:absolute;
	top:0;
	font-weight:900;
	font-size:76px;
	letter-spacing:0.5px;
	line-height:1;
	text-shadow:0 6px 14px rgba(0,0,0,.40);
	color:#ffffff;
	z-index:3;
}

.ws-scoreboard__sep{
	position:absolute;
	left:50%;
	top:0;
	transform:translateX(-50%);
	font-weight:900;
	font-size:76px;
	text-shadow:0 6px 14px rgba(0,0,0,.40);
	color:#ffffff;
	z-index:4;
}

/* Bring the left digit closer to ':' */
.ws-scoreboard__goals--home{ right:calc(50% - 4px); }
/* Keep the right digit at the previous (better) spacing */
.ws-scoreboard__goals--guest{ left:calc(50% + 14px); }

.ws-scoreboard__time{
	padding:4px 12px;
	border-radius:8px;
	font-weight:800;
	letter-spacing:.5px;
	background:rgba(0,0,0,.25);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
	color:#ffffff;
	position:relative;
	z-index:3;
}

.ws-scoreboard__bottom{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:10px 16px 14px 16px;
	background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.22) 100%);
}

.ws-scoreboard__stadium{
	display:flex;
	align-items:center;
	gap:10px;
	min-width:0;
}

.ws-scoreboard__stadiumIcon{
	width:52px;
	height:28px;
	opacity:.92;
	background-repeat:no-repeat;
	background-size:contain;
	background-position:center;
	filter:drop-shadow(0 2px 8px rgba(0,0,0,.25));
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='56' viewBox='0 0 96 56'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 46h76'/%3E%3Cpath d='M14 46V26c0-2 1-4 3-5l18-10c8-4 18-4 26 0l18 10c2 1 3 3 3 5v20'/%3E%3Cpath d='M24 22v22'/%3E%3Cpath d='M72 22v22'/%3E%3Cpath d='M34 18v26'/%3E%3Cpath d='M62 18v26'/%3E%3Cpath d='M44 16v28'/%3E%3Cpath d='M52 16v28'/%3E%3C/g%3E%3C/svg%3E");
}

.ws-scoreboard__stadiumName{
	font-weight:800;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	max-width:520px;
}

.ws-scoreboard__audience{
	font-weight:800;
	white-space:nowrap;
	opacity:.95;
	min-height:20px;
}

@media (max-width: 767px){
	.ws-scoreboard__competition{display:none;}
	.ws-scoreboard__teams{min-height:90px;}
	.ws-scoreboard__team--home{ left:22%; }
	.ws-scoreboard__team--guest{ left:78%; }
	.ws-scoreboard__sep{ font-size:48px; }
	.ws-scoreboard__goals{ font-size:48px; }
	.ws-scoreboard__scoreLine{ height:54px; width:150px; }
	.ws-scoreboard__goals--home{ right:calc(50% - 2px); }
	.ws-scoreboard__goals--guest{ left:calc(50% + 16px); }
	.ws-scoreboard__stadiumName{max-width:220px;}
}

