/* Glossario com tooltip (item 3 do plano, 03-11-2026) */

.ng-gl{
	font:inherit;
	color:inherit;
	background:none;
	border:0;
	padding:0;
	margin:0;
	display:inline;
	line-height:inherit;
	border-bottom:1px dotted var(--ng-link,#359138);
	cursor:help;
}
.ng-gl:focus-visible{
	outline:2px solid var(--ng-link,#359138);
	outline-offset:2px;
}
html[data-ng-theme="dark"] .ng-gl{ border-bottom-color:var(--ng-link,#7ed382); }
@media (prefers-color-scheme: dark){
	html:not([data-ng-theme="light"]) .ng-gl{ border-bottom-color:var(--ng-link,#7ed382); }
}

.ng-gl-pop{
	background:var(--ng-card-bg,#fff);
	color:var(--ng-text,#333);
	border:1px solid var(--ng-border,#ddd);
	border-radius:8px;
	box-shadow:0 4px 18px rgba(0,0,0,.15);
	padding:14px 16px;
	z-index:99990;
	font-size:14px;
	line-height:1.5;
}
.ng-gl-pop-term{
	margin:0 0 6px 0;
	font-weight:700;
	color:var(--ng-heading,#3a4a2e);
	padding-right:20px;
}
.ng-gl-pop-def{ margin:0 0 10px 0; }
.ng-gl-pop-actions{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.ng-gl-pop-link{ font-size:13px; font-weight:600; color:var(--ng-link,#359138); text-decoration:none; }
.ng-gl-pop-link:hover{ text-decoration:underline; }
.ng-gl-pop-off{
	font:inherit;
	font-size:12px;
	color:var(--ng-text,#777);
	background:none;
	border:1px solid var(--ng-border,#ddd);
	border-radius:4px;
	padding:3px 8px;
	cursor:pointer;
}
.ng-gl-pop-close{
	position:absolute;
	top:8px;
	right:8px;
	width:28px;
	height:28px;
	min-width:44px;
	min-height:44px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:-8px;
	background:none;
	border:0;
	font-size:18px;
	line-height:1;
	color:var(--ng-text,#777);
	cursor:pointer;
}
.ng-gl-pop{ position:fixed; }

@media (prefers-reduced-motion: no-preference){
	.ng-gl-pop{ transition:opacity .1s ease; }
}
@media print{
	.ng-gl{ border-bottom:none; }
	.ng-gl-pop{ display:none !important; }
}

/* Pagina do glossario */
.ng-glossary-page{ margin:0 0 40px 0; }
.ng-glossary-letter{
	font-size:20px;
	font-weight:700;
	color:var(--ng-heading,#3a4a2e);
	margin:28px 0 10px 0;
	padding-bottom:4px;
	border-bottom:2px solid var(--ng-border,#e2e2e2);
}
.ng-glossary-letter:first-child{ margin-top:0; }
.ng-glossary-list{ margin:0; }
.ng-glossary-list dt{
	font-size:17px;
	font-weight:700;
	color:var(--ng-heading,#3a4a2e);
	margin:18px 0 4px 0;
}
.ng-glossary-list dd{ margin:0 0 4px 0; }
.ng-glossary-def{ margin:0 0 6px 0; font-size:15px; line-height:1.6; color:var(--ng-text,#444); }
.ng-glossary-see{ margin:0 0 4px 0; font-size:13px; color:var(--ng-text,#666); }
.ng-glossary-see a{ color:var(--ng-link,#359138); text-decoration:none; }
.ng-glossary-see a:hover{ text-decoration:underline; }
.ng-glossary-source{ margin:0; font-size:12px; color:var(--ng-text,#999); font-style:italic; }

html[data-ng-theme="dark"] .ng-gl-pop{ background:var(--ng-card-bg,#1e2217); border-color:var(--ng-border,#363c2e); }
html[data-ng-theme="dark"] .ng-gl-pop-term{ color:var(--ng-heading,#f0f3ea); }
html[data-ng-theme="dark"] .ng-glossary-letter{ color:var(--ng-heading,#f0f3ea); border-bottom-color:var(--ng-border,#363c2e); }
html[data-ng-theme="dark"] .ng-glossary-list dt{ color:var(--ng-heading,#f0f3ea); }
@media (prefers-color-scheme: dark){
	html:not([data-ng-theme="light"]) .ng-gl-pop{ background:var(--ng-card-bg,#1e2217); border-color:var(--ng-border,#363c2e); }
	html:not([data-ng-theme="light"]) .ng-gl-pop-term{ color:var(--ng-heading,#f0f3ea); }
	html:not([data-ng-theme="light"]) .ng-glossary-letter{ color:var(--ng-heading,#f0f3ea); border-bottom-color:var(--ng-border,#363c2e); }
	html:not([data-ng-theme="light"]) .ng-glossary-list dt{ color:var(--ng-heading,#f0f3ea); }
}
