/* ==========================================================================
   2.17.0 – Színházterem: minden előadás egy korabeli színlap (affiche). Krémszínű, foltos papír, kettős keret,
   vörös fejléc a bemutató évével, a cím nagy, ritkított verzálokkal, csillagos díszsor, alul a bemutató napja.
   A korszakok fejléce egy vörös függöny-szalag. A lapok saját színűek, így sötét és világos módban is így.
   ========================================================================== */
.nszh-terem { --nszh-tinta: #231a12; --nszh-papir: #f4e9cf; --nszh-voros: #8e1f1a; --nszh-arany: #b0893f; }
.nszh-terem__bev { max-width: 64ch; margin: 0 auto 1.2rem; font-style: italic; text-align: center; opacity: .85; }

.nszh-korszak { margin: 2.2rem 0 0; }
.nszh-korszak[hidden] { display: none; }
.nszh-korszak__cim { position: relative; margin: 0 0 1.4rem; text-align: center; font-size: 1.05rem; line-height: 1.3; }
.nszh-korszak__cim::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px solid var(--nszh-arany); opacity: .7; }
.nszh-korszak__cim span {
	position: relative; display: inline-block; max-width: 90%; padding: .45rem 1.4rem;
	background: linear-gradient(180deg, #a52a22, var(--nszh-voros) 60%, #6b1712); color: #f6e7c4;
	font-family: var(--n-cimke-font, Georgia, serif); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: .86rem;
	box-shadow: 0 3px 0 rgba(0, 0, 0, .35); clip-path: polygon(0 0, 100% 0, 97% 50%, 100% 100%, 0 100%, 3% 50%);
}

.nszh-lapok { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(15.5rem, 1fr)); gap: 1.4rem 1.2rem; }
.nszh-lap {
	position: relative; margin: 0; padding: 1.1rem 1.1rem 1rem; color: var(--nszh-tinta); text-align: center;
	background:
		radial-gradient(ellipse at 20% 15%, rgba(140, 100, 40, .10), transparent 55%),
		radial-gradient(ellipse at 85% 90%, rgba(120, 80, 30, .12), transparent 50%),
		var(--nszh-papir);
	border: 1px solid #6b5432; outline: 3px double #6b5432; outline-offset: -8px;
	box-shadow: 0 6px 16px rgba(0, 0, 0, .35);
}
.nszh-lap[hidden] { display: none; }
.nszh-lap__fej { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; margin: .2rem .3rem .5rem; padding-bottom: .35rem; border-bottom: 1px solid rgba(35, 26, 18, .35); font-family: var(--n-cimke-font, Georgia, serif); text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; }
.nszh-lap__ev { color: var(--nszh-voros); font-size: 1.2rem; font-weight: 700; letter-spacing: .06em; }
.nszh-lap__orszag { opacity: .75; text-align: end; }
.nszh-lap__szinhaz { margin: .3rem 0 0; font-variant: small-caps; letter-spacing: .06em; font-size: .9rem; line-height: 1.3; }
.nszh-lap__disz { margin: .35rem 0 .15rem; color: var(--nszh-voros); font-size: .7rem; letter-spacing: .6em; }
.nszh-lap__cim { margin: .1rem 0 .45rem; font-family: var(--n-cimke-font, Georgia, serif); font-size: 1.12rem; font-weight: 700; line-height: 1.25; letter-spacing: .05em; text-transform: uppercase; }
.nszh-terem .nszh-lap__cim a, .nszh-terem .nszh-lap__cim a:visited { color: var(--nszh-tinta) !important; text-decoration: none; }
.nszh-lap__cim a:hover, .nszh-lap__cim a:focus-visible { color: var(--nszh-voros) !important; }
.nszh-lap__mufaj { margin: 0 0 .35rem; font-style: italic; font-size: .92rem; line-height: 1.35; }
.nszh-lap__alkotok { margin: 0 0 .4rem; font-size: .84rem; line-height: 1.35; }
.nszh-lap__meghat { margin: 0 0 .4rem; font-size: .88rem; line-height: 1.4; text-align: start; }
.nszh-lap__bemutato { margin: .55rem .3rem 0; padding-top: .4rem; border-top: 1px solid rgba(35, 26, 18, .35); font-family: var(--n-cimke-font, Georgia, serif); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; color: var(--nszh-voros); }
.nszh-lap .nsz-film__jelek { margin: .45rem 0 0; }
@media (max-width: 560px) { .nszh-lapok { grid-template-columns: 1fr; } }
@media print {
	.nszh-szuro { display: none; }
	.nszh-lap { box-shadow: none; break-inside: avoid; }
}
