/* RS Cookie Facile — stile intonato Renaco (verde #1D5C3A, lime #7AC143, crema #F6F8F2) */

#rscf-banner[hidden], #rscf-prefs[hidden] { display: none !important; }

/* ---------- Banner ---------- */
#rscf-banner {
	position: fixed;
	left: 20px;
	right: 20px;
	bottom: 20px;
	z-index: 99999;
	max-width: 1120px;
	margin: 0 auto;
	background: #ffffff;
	border: 1.5px solid #E2E8DA;
	border-radius: 20px;
	box-shadow: 0 24px 60px -18px rgba(18, 41, 28, .35);
	padding: 22px 26px;
}
.rscf-banner-in {
	display: flex;
	align-items: center;
	gap: 26px;
	flex-wrap: wrap;
}
.rscf-banner-txt { flex: 1; min-width: 260px; }
.rscf-banner-txt strong {
	display: block;
	font-size: 17px;
	color: #12291C;
	font-weight: 800;
	margin-bottom: 5px;
}
.rscf-banner-txt p {
	margin: 0;
	font-size: 13.5px;
	line-height: 1.55;
	color: #4a5a50;
}
.rscf-banner-txt a { color: #1D5C3A; font-weight: 700; text-decoration: underline; }
.rscf-banner-btns {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}
.rscf-btn {
	font-family: inherit;
	font-weight: 800;
	font-size: 14px;
	border: none;
	border-radius: 100px;
	padding: 12px 24px;
	cursor: pointer;
	transition: all .25s ease;
	white-space: nowrap;
}
.rscf-btn-ghost {
	background: transparent;
	color: #1D5C3A;
	border: 1.5px solid #CDDBC4;
}
.rscf-btn-ghost:hover { border-color: #7AC143; background: #F6F8F2; }
.rscf-btn-primary {
	background: #1D5C3A;
	color: #fff;
}
.rscf-btn-primary:hover { background: #7AC143; color: #12291C; }

/* ---------- Pannello preferenze ---------- */
#rscf-prefs {
	position: fixed;
	inset: 0;
	z-index: 100000;
	background: rgba(18, 41, 28, .55);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.rscf-prefs-box {
	background: #fff;
	border-radius: 22px;
	max-width: 560px;
	width: 100%;
	max-height: 86vh;
	overflow: auto;
	padding: 30px 30px 26px;
	box-shadow: 0 30px 70px -20px rgba(18, 41, 28, .5);
}
.rscf-prefs-box h3 {
	margin: 0 0 6px;
	font-size: 22px;
	color: #12291C;
	font-weight: 800;
}
.rscf-prefs-intro {
	font-size: 13.5px;
	color: #4a5a50;
	line-height: 1.55;
	margin: 0 0 18px;
}
.rscf-row {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 0;
	border-top: 1px solid #EDF1E8;
}
.rscf-row-txt { flex: 1; }
.rscf-row-txt strong { display: block; color: #12291C; font-size: 15px; font-weight: 800; }
.rscf-row-txt small { display: block; color: #4a5a50; font-size: 12.5px; line-height: 1.5; margin-top: 3px; }

/* switch */
.rscf-switch { position: relative; width: 48px; height: 27px; flex-shrink: 0; margin-top: 3px; }
.rscf-switch input { opacity: 0; width: 0; height: 0; }
.rscf-slider {
	position: absolute; inset: 0; cursor: pointer;
	background: #CBD5C0; border-radius: 100px; transition: .3s;
}
.rscf-slider::before {
	content: ''; position: absolute; height: 21px; width: 21px; left: 3px; bottom: 3px;
	background: #fff; border-radius: 50%; transition: .3s;
}
.rscf-switch input:checked + .rscf-slider { background: #7AC143; }
.rscf-switch input:checked + .rscf-slider::before { transform: translateX(21px); }
.rscf-switch input:disabled + .rscf-slider { background: #1D5C3A; cursor: not-allowed; opacity: .6; }
.rscf-prefs-actions {
	display: flex;
	gap: 10px;
	margin-top: 22px;
	flex-wrap: wrap;
}
.rscf-prefs-actions .rscf-btn { flex: 1; text-align: center; }

/* ---------- link "Preferenze cookie" nel footer ---------- */
.rscf-reopen {
	background: none; border: none; padding: 0;
	color: inherit; font: inherit; cursor: pointer; text-decoration: underline;
}

@media (max-width: 720px) {
	.rscf-banner-btns { width: 100%; }
	.rscf-banner-btns .rscf-btn { flex: 1; text-align: center; }
}
