/*
 * Redizajn "9a" - sablon stranice teksta Magazina /teme/... (design_handoff_9a_tema).
 * Ucitava se POSLE redesign-2a..8 i deli njihove tokene (:root), resete (.vh-home),
 * dugmad (.vh-btn*), pilulu (.vh-pill) i "Oglas" oznaku (.vh-adr__banner-label).
 * Prefiks klasa: vh-tema.
 */

.vh-tema { background: #fff; }
.vh-tema .vh-container { padding-top: 22px; padding-bottom: 48px; }

/* ====================================================================== */
/*  ZAGLAVLJE TEKSTA (centrirano, max 800px)                              */
/* ====================================================================== */
.vh-tema__head { max-width: 800px; margin: 0 auto; text-align: center; }
.vh-tema__crumbs {
	font: 400 12px/1.4 var(--vh-sans);
	color: #B9AEB4;
	display: flex; align-items: center; justify-content: center;
	gap: 8px; flex-wrap: wrap;
}
.vh-tema__crumbs a { color: #B9AEB4 !important; }
.vh-tema__crumbs a:hover { color: var(--vh-pink-dark) !important; }
.vh-tema__badge {
	display: inline-block;
	background: var(--vh-pill);
	color: var(--vh-pink-dark) !important;
	font: 700 10px/1 var(--vh-sans);
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 6px 12px;
	border-radius: 100px;
	margin-top: 14px;
}
.vh-tema__badge:hover { background: var(--vh-tint); }
#vh-tema .vh-tema__title {
	font: 600 40px/1.2 var(--vh-serif);
	font-style: normal; letter-spacing: 0;
	color: var(--vh-text);
	padding: 0; margin: 14px 0 0;
	text-align: center;
}
.vh-tema__lead { font: 400 16px/1.7 var(--vh-sans); color: var(--vh-text-2); margin-top: 14px; }
.vh-tema__meta {
	font: 400 13px/1.4 var(--vh-sans);
	color: var(--vh-muted);
	margin-top: 16px;
	display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap;
}
.vh-tema__meta-sep { color: #F0C4D6; }

/* ====================================================================== */
/*  GLAVNA FOTOGRAFIJA                                                    */
/* ====================================================================== */
.vh-tema__hero { margin: 26px 0 0; }
.vh-tema__hero img {
	width: 100%; height: 440px;
	object-fit: cover;
	border-radius: 14px;
	display: block;
	background: var(--vh-tint);
}
.vh-tema__hero figcaption {
	font: 400 12px/1.5 var(--vh-sans);
	color: var(--vh-muted);
	text-align: center;
	margin-top: 10px;
}

/* ====================================================================== */
/*  RASPORED                                                              */
/* ====================================================================== */
.vh-tema__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 40px;
	margin-top: 30px;
	align-items: start;
}

/* ====================================================================== */
/*  TELO TEKSTA (HTML iz CMS-a)                                           */
/* ====================================================================== */
.vh-tema__body { font: 400 16px/1.85 var(--vh-sans); color: var(--vh-text); }
.vh-tema__body p { margin: 0 0 16px; padding: 0; }
#vh-tema .vh-tema__body h2 {
	font: 600 24px/1.3 var(--vh-serif);
	font-style: normal; letter-spacing: 0;
	color: var(--vh-text);
	padding: 0; margin: 28px 0 12px;
	text-align: left;
	scroll-margin-top: 90px; /* sticky header */
}
#vh-tema .vh-tema__body h3, #vh-tema .vh-tema__body h4 {
	font: 600 19px/1.35 var(--vh-sans);
	font-style: normal; letter-spacing: 0;
	color: var(--vh-text);
	padding: 0; margin: 22px 0 10px;
	text-align: left;
}
.vh-tema__body a { color: #F399C0 !important; }
.vh-tema__body a:hover { color: var(--vh-pink-dark) !important; text-decoration: underline; }
.vh-tema__body img {
	max-width: 100%; height: auto;
	border-radius: 12px;
	display: block;
	margin: 26px 0;
}
.vh-tema__body figure { margin: 26px 0; }
.vh-tema__body figure img { margin: 0; }
.vh-tema__body figcaption { font: 400 12px/1.5 var(--vh-sans); color: var(--vh-muted); margin-top: 8px; }
.vh-tema__body iframe, .vh-tema__body video { max-width: 100%; border-radius: 12px; }
.vh-tema__body table { max-width: 100%; }

/* Istaknuti citat / savet */
.vh-tema__body blockquote {
	background: var(--vh-tint);
	border-left: 3px solid var(--vh-pink);
	border-radius: 0 10px 10px 0;
	padding: 18px 22px;
	margin: 24px 0;
	font: 500 italic 17px/1.7 var(--vh-serif);
	color: var(--vh-text);
	quotes: none;
}
.vh-tema__body blockquote p { margin: 0; }
.vh-tema__body blockquote cite { display: block; font: 400 13px/1.5 var(--vh-sans); color: var(--vh-text-2); font-style: normal; margin-top: 8px; }

/* Liste sa ♥ markerom */
.vh-tema__body ul, .vh-tema__body ol { margin: 16px 0; padding: 0; list-style: none; }
.vh-tema__body ul li, .vh-tema__body ol li {
	position: relative;
	font: 400 15px/1.7 var(--vh-sans);
	color: var(--vh-text);
	padding: 0 0 0 24px;
	margin: 0 0 8px;
	background: none;
	list-style: none;
}
.vh-tema__body ul li::before {
	content: "\2665";
	position: absolute; left: 0; top: 1px;
	color: var(--vh-pink);
	font-size: 12px;
	line-height: 1.7;
}
.vh-tema__body ol { counter-reset: vhol; }
.vh-tema__body ol li { counter-increment: vhol; }
.vh-tema__body ol li::before {
	content: counter(vhol) ".";
	position: absolute; left: 0; top: 0;
	color: var(--vh-pink-dark);
	font: 600 13px/1.7 var(--vh-sans);
}

/* ====================================================================== */
/*  TAGOVI + PODELITE                                                     */
/* ====================================================================== */
.vh-tema__foot {
	display: flex; align-items: flex-start; justify-content: space-between;
	gap: 16px; flex-wrap: wrap;
	border-top: 1px solid var(--vh-border);
	margin-top: 32px;
	padding-top: 20px;
}
.vh-tema__tags { display: flex; gap: 8px; flex-wrap: wrap; flex: 1; min-width: 0; }
.vh-tema__tag {
	display: inline-flex; align-items: center;
	border: 1px solid var(--vh-border-2);
	border-radius: 100px;
	padding: 5px 12px;
	font: 400 11px/1.3 var(--vh-sans);
	color: #8A6E7B;
}
.vh-tema__share { display: flex; align-items: center; gap: 10px; flex: none; }
.vh-tema__share span { font: 400 13px/1 var(--vh-sans); color: var(--vh-text-2); }
.vh-tema__share img { width: 18px; height: 18px; display: block; opacity: .85; transition: opacity .18s ease; }
.vh-tema__share a:hover img { opacity: 1; }

/* ====================================================================== */
/*  CTA KA ADRESARU                                                       */
/* ====================================================================== */
.vh-tema__cta {
	display: flex; align-items: center; justify-content: space-between;
	gap: 18px; flex-wrap: wrap;
	background: var(--vh-tint);
	border: 1px solid var(--vh-border);
	border-radius: 12px;
	padding: 22px;
	margin-top: 24px;
}
.vh-tema__cta-title { font: 600 italic 20px/1.3 var(--vh-serif); color: var(--vh-text); }
.vh-tema__cta-sub { font: 400 13px/1.5 var(--vh-sans); color: var(--vh-text-2); margin-top: 4px; }
.vh-tema__cta-btn { padding: 13px 24px; }

/* ====================================================================== */
/*  SLICNI TEKSTOVI                                                       */
/* ====================================================================== */
.vh-tema__related { margin-top: 34px; }
#vh-tema .vh-tema__h2-section {
	font: 600 24px/1.3 var(--vh-serif);
	font-style: normal; letter-spacing: 0;
	color: var(--vh-text);
	padding: 0; margin: 0; text-align: left;
}
.vh-tema__related-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin-top: 18px;
}
.vh-tema-rel {
	display: block;
	border: 1px solid var(--vh-border);
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
	transition: border-color .18s ease, box-shadow .18s ease;
}
.vh-tema-rel:hover { border-color: var(--vh-pink); box-shadow: 0 8px 24px rgba(190,120,150,.12); }
.vh-tema-rel__photo { display: block; height: 120px; background: var(--vh-tint) center/cover no-repeat; }
.vh-tema-rel__body { display: block; padding: 13px 14px 15px; }
.vh-tema-rel__tag {
	display: block;
	font: 600 10px/1 var(--vh-sans);
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--vh-pink-dark);
}
.vh-tema-rel__title { display: block; font: 600 14px/1.4 var(--vh-sans); color: var(--vh-text); margin-top: 7px; }

/* Komentari (legacy blok, zadrzana funkcionalnost) */
.vh-tema__comments { margin-top: 34px; border-top: 1px solid var(--vh-border); padding-top: 22px; }
.vh-tema__comments .row { margin: 0; }
.vh-tema__comments [class*="col-"] { padding: 0; }
#vh-tema .vh-tema__comments h3,
#vh-tema .vh-tema__comments h4 {
	font: 600 22px/1.3 var(--vh-serif);
	font-style: normal; letter-spacing: 0; color: var(--vh-text);
	padding: 0; margin: 0 0 14px; text-align: left;
}
/* comment.php head: naslov levo, dugme desno (bootstrap col-* je odsecen u slim CSS-u) */
.vh-tema__comments .comment-head .row { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
#vh-tema .vh-tema__comments h4 { margin: 0; }
/* legacy .btn (btn-pink) bez bootstrap padding pravila -> stil kao vh-btn--primary */
#vh-tema .vh-tema__comments a.btn {
	display: inline-flex; align-items: center; justify-content: center;
	font: 600 12px/1 var(--vh-sans); letter-spacing: 2px; text-transform: uppercase;
	white-space: nowrap; padding: 13px 24px; border-radius: 8px;
	background: var(--vh-pink); color: #fff !important;
	transition: background .18s ease;
}
#vh-tema .vh-tema__comments a.btn:hover { background: var(--vh-pink-dark); }

/* ====================================================================== */
/*  DESNI STUB                                                            */
/* ====================================================================== */
.vh-tema__rail { display: flex; flex-direction: column; gap: 20px; }
.vh-tema__rail-title {
	font: 600 12px/1 var(--vh-sans);
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--vh-text);
}

.vh-tema__toc { background: var(--vh-tint); border-radius: 12px; padding: 20px; }
.vh-tema__toc-item {
	display: block;
	font: 400 13px/1.45 var(--vh-sans);
	color: var(--vh-text) !important;
	border-left: 2px solid var(--vh-border-2);
	padding: 7px 0 7px 12px;
	margin-top: 10px;
}
.vh-tema__toc-item:hover { color: var(--vh-pink-dark) !important; border-left-color: var(--vh-pink); }
.vh-tema__toc-item.is-active { color: var(--vh-pink-dark) !important; border-left-color: var(--vh-pink); }

.vh-tema__rail-banners { position: relative; display: flex; flex-direction: column; gap: 20px; line-height: 0; }
.vh-tema__rail-banners img { width: 100%; height: auto; border-radius: 12px; display: block; }
.vh-tema__rail-banners h3 { display: none; }
.vh-tema__rail-banners .vh-adr__banner-label { top: 10px; right: 10px; }

.vh-tema__box { background: var(--vh-tint); border-radius: 12px; padding: 20px; }
.vh-tema__top { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-direction: column; gap: 12px; }
.vh-tema__top li { display: flex; gap: 10px; padding: 0; background: none; }
.vh-tema__top-num { flex: none; font: 600 16px/1.45 var(--vh-serif); color: #F0C4D6; }
.vh-tema__top a { font: 500 13px/1.45 var(--vh-sans); color: var(--vh-text) !important; }
.vh-tema__top a:hover { color: var(--vh-pink-dark) !important; }

.vh-tema__cat {
	display: flex; align-items: center; justify-content: space-between;
	gap: 10px;
	font: 400 13px/1.4 var(--vh-sans);
	color: var(--vh-text) !important;
	padding: 10px 0;
	border-bottom: 1px solid var(--vh-border-2);
}
.vh-tema__cat:last-child { border-bottom: 0; padding-bottom: 0; }
.vh-tema__cat:first-of-type { margin-top: 6px; }
.vh-tema__cat:hover { color: var(--vh-pink-dark) !important; }
.vh-tema__cat.is-current { color: var(--vh-pink-dark) !important; font-weight: 600; }

.vh-tema__plan {
	border: 1px solid var(--vh-border);
	border-radius: 12px;
	box-shadow: var(--vh-shadow-card);
	background: #fff;
	padding: 24px 20px;
	text-align: center;
}
.vh-tema__plan-heart { color: var(--vh-pink); font-size: 15px; line-height: 1; display: block; }
.vh-tema__plan-title { font: 600 italic 22px/1.3 var(--vh-serif); color: var(--vh-text); margin-top: 8px; }
.vh-tema__plan-text { font: 400 13px/1.55 var(--vh-sans); color: var(--vh-text-2); margin-top: 8px; }
.vh-tema__plan-btn { width: 100%; margin-top: 16px; padding: 13px 16px; }

/* ====================================================================== */
/*  RESPONSIVE                                                            */
/* ====================================================================== */
@media (max-width: 991px) {
	.vh-tema__layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.vh-tema__rail { flex-direction: row; flex-wrap: wrap; }
	.vh-tema__rail > * { flex: 1 1 300px; }
	.vh-tema__toc { flex-basis: 100%; }
	.vh-tema__hero img { height: 340px; }
}
@media (max-width: 767px) {
	.vh-tema .vh-container { padding-top: 14px; padding-bottom: 32px; padding-left: 18px; padding-right: 18px; }
	#vh-tema .vh-tema__title { font-size: 26px; margin-top: 12px; }
	.vh-tema__lead { font-size: 14px; margin-top: 10px; }
	.vh-tema__meta { font-size: 11px; margin-top: 12px; }
	.vh-tema__hero { margin-top: 18px; }
	.vh-tema__hero img { height: 220px; border-radius: 12px; }
	.vh-tema__layout { margin-top: 22px; gap: 24px; }
	.vh-tema__body { font-size: 15px; }
	#vh-tema .vh-tema__body h2 { font-size: 20px; margin-top: 24px; }
	#vh-tema .vh-tema__body h3, #vh-tema .vh-tema__body h4 { font-size: 17px; }
	.vh-tema__body blockquote { padding: 14px 16px; font-size: 16px; }
	.vh-tema__foot { flex-direction: column; gap: 14px; }
	.vh-tema__share { width: 100%; }
	.vh-tema__cta { flex-direction: column; align-items: stretch; text-align: center; padding: 18px; }
	.vh-tema__cta-btn { width: 100%; text-align: center; justify-content: center; }
	#vh-tema .vh-tema__h2-section { font-size: 22px; }
	/* Slicni tekstovi kao lista sa sličicom 88x66 */
	.vh-tema__related-grid { grid-template-columns: 1fr; gap: 12px; }
	.vh-tema-rel { display: flex; align-items: center; gap: 12px; padding: 10px; }
	.vh-tema-rel__photo { flex: none; width: 88px; height: 66px; border-radius: 8px; }
	.vh-tema-rel__body { padding: 0; flex: 1; min-width: 0; }
	.vh-tema-rel__title { font-size: 13px; margin-top: 5px; }
	.vh-tema__rail { flex-direction: column; }
	.vh-tema__rail-banners { flex-direction: column; }
	.vh-tema__toc { display: none; } /* ToC nema smisla bez bocne kolone */
}
