/* Enigma Modules — stiluri comune
   Folosesc aceleași variabile de culoare ca tema Enigma (dacă tema e activă);
   au și valori de rezervă (fallback) ca să arate bine și pe alte teme. */

.enigma-toc,
.enigma-share,
.enigma-related,
.enigma-newsletter-box{
	--em-bg: var(--bg-panel, #121B2E);
	--em-line: var(--line, rgba(0,0,0,0.1));
	--em-text: var(--text, #222);
	--em-text-muted: var(--text-muted, #666);
	--em-gold: var(--gold, #C9A227);
	font-family: inherit;
}

/* Cuprins */
.enigma-toc{
	background: var(--em-bg);
	border: 1px solid var(--em-line);
	border-radius: 4px;
	padding: 18px 22px;
	margin: 0 0 28px;
}
.enigma-toc-title{
	font-family: 'JetBrains Mono', monospace;
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--em-gold);
	margin-bottom: 10px;
}
.enigma-toc ol{ margin:0; padding-left: 20px; }
.enigma-toc li{ margin-bottom: 6px; font-size: 14.5px; }
.enigma-toc li.enigma-toc-sub{ list-style:none; margin-left: 14px; font-size: 13.5px; opacity:.85; }
.enigma-toc a{ color: var(--em-text); text-decoration:none; border-bottom: 1px solid transparent; }
.enigma-toc a:hover{ color: var(--em-gold); border-color: var(--em-gold); }

/* Distribuire */
.enigma-share{
	display:flex; align-items:center; flex-wrap:wrap; gap:10px;
	margin-top: 34px; padding-top: 24px; border-top: 1px solid var(--em-line);
}
.enigma-share-label{
	font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing:.08em;
	text-transform:uppercase; color: var(--em-text-muted); margin-right: 4px;
}
.enigma-share-btn{
	font-family: 'JetBrains Mono', monospace; font-size: 12px;
	border: 1px solid var(--em-line); background: transparent; color: var(--em-text);
	padding: 8px 14px; border-radius: 999px; cursor:pointer; text-decoration:none;
	transition: border-color .2s, color .2s;
}
.enigma-share-btn:hover{ border-color: var(--em-gold); color: var(--em-gold); }

/* Articole similare */
.enigma-related{ margin-top: 34px; padding-top: 24px; border-top: 1px solid var(--em-line); }
.enigma-related-title{
	font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing:.1em;
	text-transform: uppercase; color: var(--em-text-muted); margin-bottom: 14px;
}
.enigma-related-grid{ display:grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
@media (max-width: 640px){ .enigma-related-grid{ grid-template-columns: 1fr; } }
.enigma-related-item{
	display:block; background: var(--em-bg); border: 1px solid var(--em-line); border-radius:4px;
	padding: 14px; text-decoration:none; transition: border-color .2s;
}
.enigma-related-item:hover{ border-color: var(--em-gold); }
.enigma-related-cat{
	display:block; font-family:'JetBrains Mono',monospace; font-size: 10.5px; text-transform:uppercase;
	letter-spacing:.06em; color: var(--em-gold); margin-bottom: 6px;
}
.enigma-related-name{ display:block; font-size: 14.5px; color: var(--em-text); line-height:1.4; }

/* Newsletter shortcode */
.enigma-newsletter-box{
	background: var(--em-bg); border: 1px solid var(--em-line); border-radius: 4px; padding: 22px; margin: 24px 0;
}
.enigma-newsletter-title{
	font-family:'JetBrains Mono',monospace; font-size: 11px; letter-spacing:.1em; text-transform:uppercase;
	color: var(--em-text-muted); margin-bottom: 10px;
}
.enigma-newsletter-box p{ font-size: 14px; color: var(--em-text-muted); margin: 0 0 14px; }
.enigma-nl-form{ display:flex; gap:10px; flex-wrap:wrap; }
.enigma-nl-form input{
	flex:1; min-width: 180px; padding: 10px 12px; border: 1px solid var(--em-line); border-radius:2px;
	background: transparent; color: var(--em-text);
}
.enigma-nl-form button{
	background: var(--em-gold); color: #101010; border:none; padding: 10px 18px; border-radius:2px;
	font-family:'JetBrains Mono',monospace; font-size:12px; text-transform:uppercase; cursor:pointer;
}
.enigma-nl-note{ font-size: 11.5px !important; margin-top: 10px !important; }

/* Buton Sus */
.enigma-back-to-top{
	position: fixed; right: 22px; bottom: 22px; z-index: 60;
	width: 44px; height: 44px; border-radius: 50%;
	background: var(--em-gold, #C9A227); color: #101010; border: none;
	font-size: 18px; cursor: pointer; opacity: 0; visibility: hidden;
	transform: translateY(8px);
	transition: opacity .25s, transform .25s, visibility .25s;
	box-shadow: 0 6px 18px rgba(0,0,0,0.25);
}
.enigma-back-to-top.is-visible{ opacity: 1; visibility: visible; transform: translateY(0); }
