/* ===== Accessibility mode overrides =====
 * Activat cand $_SESSION['accessibility'] este setat.
 * Scop: contrast ridicat, text mai mare, link-uri subliniate, focus vizibil.
 */

html.accessibility,
html.accessibility body {
	background: #ffffff !important;
	color: #000000 !important;
	font-size: 18px !important;
	line-height: 1.6 !important;
	font-family: Arial, Helvetica, sans-serif !important;
}

html.accessibility p,
html.accessibility li,
html.accessibility td,
html.accessibility div,
html.accessibility span,
html.accessibility label {
	color: #000000 !important;
	font-size: 1rem !important;
	line-height: 1.6 !important;
}

html.accessibility h1 { font-size: 2.2rem !important; }
html.accessibility h2 { font-size: 1.8rem !important; }
html.accessibility h3 { font-size: 1.5rem !important; }
html.accessibility h4 { font-size: 1.3rem !important; }

html.accessibility a,
html.accessibility a:visited {
	color: #0b3d91 !important;
	text-decoration: underline !important;
}
html.accessibility a:hover,
html.accessibility a:focus {
	color: #ffffff !important;
	background: #0b3d91 !important;
	text-decoration: underline !important;
}

html.accessibility *:focus {
	outline: 3px solid #ff8c00 !important;
	outline-offset: 2px !important;
}

html.accessibility .top-menu,
html.accessibility #topMenu {
	font-size: 20px !important;
}
html.accessibility .top-menu a,
html.accessibility #topMenu a {
	color: #000000 !important;
	text-decoration: underline !important;
	font-size: 20px !important;
	font-weight: bold !important;
	padding: 4px 8px !important;
	line-height: 1.6 !important;
}
html.accessibility .top-menu a:hover,
html.accessibility #topMenu a:hover,
html.accessibility .top-menu a:focus,
html.accessibility #topMenu a:focus {
	color: #ffffff !important;
	background: #0b3d91 !important;
}

html.accessibility img {
	filter: contrast(1.1);
}

html.accessibility .accessibility-toggle {
	background: #ffff00 !important;
	color: #000000 !important;
	border-radius: 4px;
}

/* Skip link: vizibil doar la focus */
.skip-link {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	z-index: 10000;
}
.skip-link:focus {
	left: 10px;
	top: 10px;
	width: auto;
	height: auto;
	background: #000;
	color: #fff;
	padding: 8px 12px;
	text-decoration: underline;
}

/* Iconita din meniu */
.accessibility-toggle {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.accessibility-toggle svg {
	width: 20px;
	height: 20px;
	vertical-align: middle;
}
