/* ==========================================================================
   SHS Italia – banner cookie (inc/consent.php)
   "Accetta" e "Rifiuta" hanno lo stesso peso visivo, come chiede il Garante.
   ========================================================================== */
.shs-consent {
	position: fixed; left: 20px; bottom: calc(20px + env(safe-area-inset-bottom, 0px)); z-index: 950;
	width: 440px; max-width: calc(100vw - 40px);
	padding: 22px 22px 20px;
	background: #fff; color: var(--shs-text);
	border: 1px solid var(--shs-line); border-top: 3px solid var(--shs-navy); border-radius: var(--shs-radius);
	box-shadow: 0 24px 48px -24px rgba(10, 26, 43, .45);
	font-family: var(--shs-font); font-size: 14px; line-height: 1.55;
}
.shs-consent[hidden] { display: none !important; }
body.shs .shs-consent button { margin: 0; font-family: inherit; text-transform: none; letter-spacing: normal; line-height: 1; min-height: 0; }
.shs-consent__title { margin: 0 0 6px; padding-right: 28px; font-weight: 600; font-size: 16px; letter-spacing: -.01em; color: var(--shs-ink); }
.shs-consent__text { margin: 0 0 14px; color: var(--shs-muted); }
.shs-consent__text a { color: var(--shs-navy); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
body.shs .shs-consent__x {
	position: absolute; top: 12px; right: 12px;
	display: inline-flex; padding: 5px; border: 0; border-radius: var(--shs-radius-sm);
	background: transparent; color: var(--shs-muted); cursor: pointer;
}
body.shs .shs-consent__x:hover { background: var(--shs-bg); color: var(--shs-ink); }

.shs-consent__prefs { display: flex; flex-direction: column; gap: 0; margin: 0 0 14px; border-top: 1px solid var(--shs-line); }
.shs-consent__opt { display: flex; align-items: flex-start; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--shs-line); cursor: pointer; font-size: 13px; color: var(--shs-muted); }
.shs-consent__opt input { margin: 2px 0 0; width: 16px; height: 16px; accent-color: var(--shs-navy); flex-shrink: 0; }
.shs-consent__opt strong { display: block; font-weight: 600; font-size: 14px; color: var(--shs-ink); }
.shs-consent__opt.is-locked { cursor: default; }

.shs-consent__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
body.shs .shs-consent__btn {
	height: 44px; padding: 0 14px; border: 0; border-radius: var(--shs-radius-sm); cursor: pointer;
	background: var(--shs-navy); color: #fff; font-weight: 600; font-size: 14px;
	transition: background-color .15s, box-shadow .15s;
}
body.shs .shs-consent__btn:hover { background: var(--shs-ink); color: #fff; }
body.shs .shs-consent__btn--ghost { grid-column: 1 / -1; order: -1; background: transparent; color: var(--shs-navy); box-shadow: inset 0 0 0 1px var(--shs-line-strong); }
body.shs .shs-consent__btn--ghost:hover { background: transparent; color: var(--shs-navy); box-shadow: inset 0 0 0 1px var(--shs-navy); }

/* Link "Preferenze cookie" nel footer */
body.shs .shs-footer__cookies { padding: 0; border: 0; background: none; cursor: pointer; font: inherit; font-size: 13px; color: rgba(255, 255, 255, .72); text-decoration: underline; text-underline-offset: 3px; }
body.shs .shs-footer__cookies:hover { color: #fff; background: none; }

@media (max-width: 767px) {
	.shs-consent { left: 8px; right: 8px; bottom: calc(8px + env(safe-area-inset-bottom, 0px)); width: auto; max-width: none; padding: 18px 16px 16px; max-height: calc(100vh - 16px); overflow-y: auto; }
	/* Il pulsante contatti torna visibile dopo la scelta */
	body.shs-consent-open .shs-fab { display: none; }
}
@media print { .shs-consent { display: none; } }
