/* [odysee_videos] shortcode - dark card design */

.odv{
	--odv-bg:#141312;
	--odv-card:#1b1a17;
	--odv-border:#2c2b25;
	--odv-accent:#f5c518;
	--odv-text:#fff;
	--odv-cols:3;
	box-sizing:border-box;
	width:100%;
	padding:24px 12px 30px;
	background:var(--odv-bg);
	color:var(--odv-text);
}
.odv *{box-sizing:border-box}

.odv-heading{
	margin:0 0 24px;
	padding:0;
	color:var(--odv-text);
	font-family:"Archivo Black","Arial Black","Helvetica Neue",Arial,sans-serif;
	font-size:28px;
	font-weight:900;
	line-height:1.15;
	letter-spacing:.5px;
	text-transform:uppercase;
}

.odv-grid{
	display:grid;
	grid-template-columns:repeat(var(--odv-cols),minmax(0,1fr));
	gap:18px;
}

.odv-card{
	min-width:0;
	padding:14px 14px 22px;
	background:var(--odv-card);
	border:1px solid var(--odv-border);
}

.odv-media{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	aspect-ratio:16/9;
	overflow:hidden;
	background:#2a2925;
	color:#8a8677;
	font-size:13px;
	text-decoration:none;
	cursor:pointer;
}
.odv-media img{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	margin:0;
	object-fit:cover;
}

.odv-play{
	position:absolute;
	top:50%;left:50%;
	width:52px;height:52px;
	transform:translate(-50%,-50%);
	border-radius:50%;
	background:var(--odv-accent);
	transition:transform .2s ease;
}
.odv-play::after{
	content:"";
	position:absolute;
	top:50%;left:50%;
	transform:translate(-38%,-50%);
	border-style:solid;
	border-width:9px 0 9px 14px;
	border-color:transparent transparent transparent #141312;
}
.odv-media:hover .odv-play{transform:translate(-50%,-50%) scale(1.1)}

/* after click: player */
.odv-media.odf-playing{cursor:default}
.odv-media iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
}

.odv-title{
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	margin:14px 0 0;
	padding:0;
	color:var(--odv-text);
	font-size:15px;
	font-weight:700;
	line-height:1.4;
	letter-spacing:0;
	text-transform:none;
	font-family: "Inter", Sans-serif !important;
}

.odv-more{margin:28px 0 0;text-align:center}
.odv-more a{
	color:var(--odv-accent);
	font-size:14px;
	font-weight:800;
	letter-spacing:.5px;
	text-transform:uppercase;
	text-decoration:none;
	font-family: "Inter", Sans-serif;
}
.odv-more a:hover{text-decoration:underline}

@media (max-width:900px){
	.odv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
	.odv-grid{grid-template-columns:1fr}
	.odv-heading{font-size:24px}
}

/* Lightbox (popup player) - created by JS on first click */
.odv-lb,
.odv-lb *{box-sizing:border-box}
.odv-lb{
	position:fixed;
	inset:0;
	z-index:99999;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:16px;
	background:rgba(0,0,0,.88);
}
.odv-lb[hidden]{display:none}
.odv-lb-inner{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
}
.odv-lb-frame{
	position:relative;
	width:min(960px,100%,calc((100vh - 32px) * 16 / 9));
	aspect-ratio:16/9;
	background:#000;
	box-shadow:0 10px 40px rgba(0,0,0,.6);
}
.odv-lb-frame iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
}
.odv-lb-close{
	position:fixed;
	top:10px;
	right:14px;
	z-index:2;
	width:44px;
	height:44px;
	padding:0;
	border:0;
	border-radius:50%;
	background:rgba(255,255,255,.14);
	color:#fff;
	font-size:30px;
	line-height:44px;
	text-align:center;
	cursor:pointer;
}
.odv-lb-close:hover,
.odv-lb-close:focus{background:rgba(255,255,255,.28);outline:2px solid #fff;outline-offset:2px}
html.odv-lb-open{overflow:hidden}
