/* ANTA Scheda Socio – profilo, informazioni interne, titoli di merito
   Palette del sito: verde scuro #14532d, verde #15803d, verde chiaro #f0fdf4, bordo #bbf7d0 */

.anta-ss-card {
	--anta-ss-verde-scuro: #14532d;
	--anta-ss-verde: #15803d;
	--anta-ss-verde-chiaro: #f0fdf4;
	--anta-ss-bordo: #bbf7d0;
	--anta-ss-testo: #1f2937;
	--anta-ss-grigio: #6b7280;
	box-sizing: border-box;
	background: #ffffff;
	border: 1px solid var(--anta-ss-bordo);
	border-radius: 12px;
	padding: 22px 24px;
	margin: 0 0 24px;
	color: var(--anta-ss-testo);
	box-shadow: 0 1px 2px rgba(20, 83, 45, 0.06), 0 6px 18px rgba(20, 83, 45, 0.05);
}
.anta-ss-card *,
.anta-ss-card *::before,
.anta-ss-card *::after {
	box-sizing: border-box;
}
.anta-ss-ico {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
}

/* Intestazione della scheda */
.anta-ss-card-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid #e5e7eb;
}
.anta-ss-badge-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: var(--anta-ss-verde-chiaro);
	color: var(--anta-ss-verde-scuro);
	border: 1px solid var(--anta-ss-bordo);
}
.anta-ss-badge-ico .anta-ss-ico {
	width: 24px;
	height: 24px;
}
.anta-ss-card-title {
	margin: 0 0 2px !important;
	font-size: 1.2rem;
	line-height: 1.3;
	color: var(--anta-ss-verde-scuro);
}
.anta-ss-card-sub {
	margin: 0 !important;
	font-size: 0.92rem;
	color: var(--anta-ss-grigio);
}
.anta-ss-vuoto {
	margin: 0 !important;
	padding: 16px;
	border: 1px dashed var(--anta-ss-bordo);
	border-radius: 10px;
	background: var(--anta-ss-verde-chiaro);
	color: var(--anta-ss-verde-scuro);
	font-size: 0.95rem;
}

/* 1. Profilo */
.anta-ss-profilo-body {
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 24px;
	align-items: start;
}
.anta-ss-foto {
	width: 150px;
	aspect-ratio: 4 / 5;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--anta-ss-bordo);
	background: var(--anta-ss-verde-chiaro);
}
.anta-ss-foto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.anta-ss-foto-vuota {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 100%;
	padding: 10px;
	text-align: center;
	color: var(--anta-ss-verde);
	font-size: 0.8rem;
	line-height: 1.3;
}
.anta-ss-foto-vuota .anta-ss-ico {
	width: 40px;
	height: 40px;
	opacity: 0.6;
}
.anta-ss-nome {
	margin: 0 0 8px !important;
	font-size: 1.45rem;
	font-weight: 800;
	line-height: 1.2;
	color: var(--anta-ss-verde-scuro);
}
.anta-ss-stato {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 16px !important;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: 700;
}
.anta-ss-stato .anta-ss-ico {
	width: 16px;
	height: 16px;
}
.anta-ss-stato--attiva { background: #dcfce7; color: #14532d; }
.anta-ss-stato--in_rinnovo { background: #fef9c3; color: #854d0e; }
.anta-ss-stato--sospesa { background: #ffedd5; color: #9a3412; }
.anta-ss-stato--scaduta { background: #fee2e2; color: #991b1b; }
.anta-ss-stato--nd { background: #f3f4f6; color: #4b5563; }

.anta-ss-dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 20px;
	margin: 0;
}
.anta-ss-dl-row {
	min-width: 0;
}
.anta-ss-dl-row--wide {
	grid-column: 1 / -1;
}
.anta-ss-dl dt {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 2px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	color: var(--anta-ss-grigio);
}
.anta-ss-dl dt .anta-ss-ico {
	width: 16px;
	height: 16px;
	color: var(--anta-ss-verde);
}
.anta-ss-dl dd {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	overflow-wrap: anywhere;
}
.anta-ss-nd {
	font-weight: 400;
	font-style: italic;
	color: #9ca3af;
}
.anta-ss-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 4px 0 0;
	padding: 0;
	list-style: none;
}
.anta-ss-tag-list li {
	margin: 0;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--anta-ss-verde-chiaro);
	border: 1px solid var(--anta-ss-bordo);
	color: var(--anta-ss-verde-scuro);
	font-size: 0.85rem;
	font-weight: 600;
}

/* 2. Informazioni interne e 3. Titoli: voci apribili */
.anta-ss-lista,
.anta-ss-titoli-griglia {
	margin: 0;
	padding: 0;
	list-style: none;
}
.anta-ss-lista {
	display: grid;
	gap: 10px;
}
.anta-ss-titoli-griglia {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	align-items: start;
}
.anta-ss-voce,
.anta-ss-titolo {
	margin: 0;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #ffffff;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.anta-ss-voce:hover,
.anta-ss-titolo:hover,
.anta-ss-voce:has(details[open]),
.anta-ss-titolo:has(details[open]) {
	border-color: var(--anta-ss-bordo);
	box-shadow: 0 4px 14px rgba(20, 83, 45, 0.08);
}
.anta-ss-voce.is-evidenza {
	border-left: 4px solid var(--anta-ss-verde);
}
.anta-ss-card summary {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	cursor: pointer;
	list-style: none;
}
.anta-ss-card summary::-webkit-details-marker {
	display: none;
}
.anta-ss-card summary:focus-visible {
	outline: 2px solid var(--anta-ss-verde);
	outline-offset: 2px;
	border-radius: 10px;
}
.anta-ss-voce-ico,
.anta-ss-titolo-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--anta-ss-verde-chiaro);
	color: var(--anta-ss-verde-scuro);
}
.anta-ss-voce--convocazione .anta-ss-voce-ico { background: #eff6ff; color: #1e3a8a; }
.anta-ss-voce--disposizione .anta-ss-voce-ico { background: #fff7ed; color: #9a3412; }
.anta-ss-voce--incarico .anta-ss-voce-ico { background: #f5f3ff; color: #5b21b6; }
.anta-ss-voce--informazione .anta-ss-voce-ico { background: #f3f4f6; color: #374151; }
.anta-ss-titolo--medaglia .anta-ss-titolo-ico,
.anta-ss-titolo--ricompensa .anta-ss-titolo-ico,
.anta-ss-titolo--onorificenza .anta-ss-titolo-ico { background: #fefce8; color: #a16207; }

.anta-ss-voce-testo,
.anta-ss-titolo-testo {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1 1 auto;
	min-width: 0;
}
.anta-ss-voce-meta,
.anta-ss-titolo-meta {
	font-size: 0.8rem;
	color: var(--anta-ss-grigio);
}
.anta-ss-voce-titolo,
.anta-ss-titolo-nome {
	font-weight: 700;
	line-height: 1.35;
	color: var(--anta-ss-testo);
	overflow-wrap: anywhere;
}
.anta-ss-chip {
	align-self: flex-start;
	padding: 2px 8px;
	border-radius: 999px;
	background: var(--anta-ss-verde-chiaro);
	color: var(--anta-ss-verde-scuro);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
.anta-ss-scaduto {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 7px;
	border-radius: 999px;
	background: #fee2e2;
	color: #991b1b;
	font-size: 0.7rem;
	font-weight: 700;
}
.anta-ss-voce-apri {
	flex: 0 0 auto;
	width: 10px;
	height: 10px;
	margin-right: 4px;
	border-right: 2px solid var(--anta-ss-verde);
	border-bottom: 2px solid var(--anta-ss-verde);
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}
details[open] > summary .anta-ss-voce-apri {
	transform: rotate(-135deg);
}
.anta-ss-voce-corpo {
	padding: 0 16px 16px 66px;
	font-size: 0.95rem;
	line-height: 1.6;
}
.anta-ss-voce-corpo > :first-child {
	margin-top: 0;
}
.anta-ss-voce-corpo p {
	margin: 0 0 10px;
}
.anta-ss-voce-info {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
	color: var(--anta-ss-verde-scuro);
	font-weight: 600;
}
.anta-ss-voce-info span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.anta-ss-voce-info .anta-ss-ico {
	width: 16px;
	height: 16px;
}
.anta-ss-dl--compatta {
	margin-bottom: 12px;
}
.anta-ss-dl--compatta dd {
	font-size: 0.95rem;
}
.anta-ss-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 16px;
	border-radius: 8px;
	background: var(--anta-ss-verde-scuro);
	color: #ffffff !important;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none !important;
}
.anta-ss-btn:hover,
.anta-ss-btn:focus-visible {
	background: var(--anta-ss-verde);
}
.anta-ss-btn .anta-ss-ico {
	width: 16px;
	height: 16px;
}

/* Telefono e tablet */
@media (max-width: 720px) {
	.anta-ss-titoli-griglia {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 600px) {
	.anta-ss-card {
		padding: 18px 16px;
	}
	.anta-ss-profilo-body {
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 16px;
	}
	.anta-ss-profilo-dati {
		width: 100%;
		text-align: center;
	}
	.anta-ss-dl {
		grid-template-columns: 1fr;
		text-align: left;
	}
	.anta-ss-foto {
		width: 130px;
	}
	.anta-ss-voce-corpo {
		padding-left: 16px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.anta-ss-voce,
	.anta-ss-titolo,
	.anta-ss-voce-apri {
		transition: none;
	}
}

/* Rifiniture tipografiche: indipendenti dalle dimensioni dei titoli del tema */
.anta-ss-card-title {
	font-weight: 700 !important;
	font-size: 1.15rem !important;
	letter-spacing: 0 !important;
}
.anta-ss-voce-titolo,
.anta-ss-titolo-nome {
	font-size: 1rem;
}
.anta-ss-titoli .anta-ss-voce-corpo {
	padding-left: 16px;
}
.anta-ss-dl--compatta dt {
	font-size: 0.7rem;
	letter-spacing: 0.4px;
}

/* 4. Modulistica */
.anta-ss-avviso {
	margin: 0 0 18px;
	padding: 12px 16px;
	border-radius: 10px;
	font-size: 0.95rem;
	font-weight: 600;
}
.anta-ss-avviso--ok { background: #f0fdf4; border: 1px solid #bbf7d0; color: #14532d; }
.anta-ss-avviso--errore { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }
.anta-ss-passo {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 20px 0 10px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: var(--anta-ss-verde-scuro);
}
.anta-ss-passo:first-of-type {
	margin-top: 0 !important;
}
.anta-ss-passo span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--anta-ss-verde-scuro);
	color: #ffffff;
	font-size: 0.85rem;
}
.anta-ss-passo-testo {
	margin: 0 0 4px 36px !important;
	color: var(--anta-ss-grigio);
	font-size: 0.95rem;
}
.anta-ss-moduli {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.anta-ss-modulo {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
}
.anta-ss-modulo-testo {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1 1 auto;
	min-width: 0;
}
.anta-ss-modulo-desc {
	font-size: 0.85rem;
	color: var(--anta-ss-grigio);
}
.anta-ss-modulo .anta-ss-btn {
	flex: 0 0 auto;
	white-space: nowrap;
}
.anta-ss-form {
	margin: 0;
	padding: 16px;
	border: 1px solid var(--anta-ss-bordo);
	border-radius: 10px;
	background: var(--anta-ss-verde-chiaro);
}
.anta-ss-form p {
	margin: 0 0 14px;
}
.anta-ss-form p:last-child {
	margin-bottom: 0;
}
.anta-ss-form label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
}
.anta-ss-form select,
.anta-ss-form textarea,
.anta-ss-form input[type="file"] {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	background: #ffffff;
	font-size: 16px;
	font-family: inherit;
}
.anta-ss-form select:focus,
.anta-ss-form textarea:focus,
.anta-ss-form input[type="file"]:focus {
	outline: 2px solid var(--anta-ss-verde);
	outline-offset: 1px;
}
.anta-ss-help {
	display: block;
	margin-top: 4px;
	font-size: 0.85rem;
	font-weight: 400;
	color: var(--anta-ss-grigio);
}
.anta-ss-btn--pieno {
	justify-content: center;
	width: 100%;
	padding: 13px 18px;
	border: 0;
	font-size: 1rem;
	cursor: pointer;
}
@media (max-width: 600px) {
	.anta-ss-modulo {
		flex-wrap: wrap;
	}
	.anta-ss-modulo .anta-ss-btn {
		width: 100%;
		justify-content: center;
	}
	.anta-ss-passo-testo {
		margin-left: 0 !important;
	}
}
.anta-ss-form label {
	font-size: 0.95rem !important;
	line-height: 1.4;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* 5. Videoconferenze e corsi online */
.anta-ss-passo--icona .anta-ss-ico {
	width: 22px;
	height: 22px;
	color: var(--anta-ss-verde);
}
.anta-ss-diretta {
	padding: 14px 16px;
}
.anta-ss-diretta.is-live {
	border-color: #fecaca;
	box-shadow: 0 0 0 3px #fef2f2;
}
.anta-ss-diretta-testa {
	display: flex;
	align-items: center;
	gap: 14px;
}
.anta-ss-data-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 56px;
	height: 60px;
	border-radius: 10px;
	background: var(--anta-ss-verde-scuro);
	color: #ffffff;
	line-height: 1;
}
.anta-ss-data-g {
	font-size: 1.45rem;
	font-weight: 800;
}
.anta-ss-data-m {
	margin-top: 4px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.anta-ss-live,
.anta-ss-oggi {
	display: inline-block;
	margin-right: 6px;
	padding: 1px 8px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 800;
}
.anta-ss-live { background: #fee2e2; color: #b91c1c; }
.anta-ss-oggi { background: #fef9c3; color: #854d0e; }
.anta-ss-diretta-desc {
	margin: 10px 0 0 70px;
	font-size: 0.93rem;
	line-height: 1.6;
}
.anta-ss-diretta-desc p {
	margin: 0 0 8px;
}
.anta-ss-diretta-azioni {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 12px 0 0 70px;
}
.anta-ss-btn--chiaro {
	background: #ffffff;
	color: var(--anta-ss-verde-scuro) !important;
	border: 1px solid var(--anta-ss-bordo);
}
.anta-ss-btn--chiaro:hover,
.anta-ss-btn--chiaro:focus-visible {
	background: var(--anta-ss-verde-chiaro);
}
.anta-ss-codici {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
	margin: 12px 0 0 70px;
	padding: 10px 12px;
	border-radius: 8px;
	background: #f9fafb;
	font-size: 0.88rem;
}
.anta-ss-video-corpo .anta-ss-codici {
	margin-left: 0;
}
.anta-ss-codici div {
	display: flex;
	align-items: center;
	gap: 8px;
}
.anta-ss-codici dt {
	margin: 0;
	color: var(--anta-ss-grigio);
	font-weight: 600;
}
.anta-ss-codici dd {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0;
}
.anta-ss-codici code {
	padding: 2px 6px;
	border-radius: 4px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	font-size: 0.9rem;
	letter-spacing: 0.5px;
}
.anta-ss-copia {
	padding: 3px 9px;
	border: 1px solid var(--anta-ss-bordo);
	border-radius: 6px;
	background: #ffffff;
	color: var(--anta-ss-verde-scuro);
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
}
.anta-ss-copia.is-copiato {
	background: var(--anta-ss-verde-scuro);
	color: #ffffff;
}
.anta-ss-video-frame {
	position: relative;
	margin: 0 0 12px;
	border-radius: 10px;
	overflow: hidden;
	background: #000000;
	aspect-ratio: 16 / 9;
}
.anta-ss-video-frame iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}
.anta-ss-video .anta-ss-voce-corpo {
	padding-left: 16px;
}
@media (max-width: 600px) {
	.anta-ss-diretta-desc,
	.anta-ss-diretta-azioni,
	.anta-ss-codici {
		margin-left: 0;
	}
	.anta-ss-diretta-azioni .anta-ss-btn {
		flex: 1 1 100%;
		justify-content: center;
	}
}
.anta-ss-video-frame video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	background: #000000;
}
