/* Recesso Facile (Hokuto Studio) - stili front-end
 *
 * Ogni valore usa var(--rfac-xxx, fallback) dove il fallback e' il valore
 * statico originale del plugin: se il pannello "Aspetto" non e' mai stato
 * configurato, l'output visivo resta identico a prima. Le variabili vengono
 * impostate a :root da RFAC_Appearance::generate_css() (vedi
 * includes/class-rfac-appearance.php), accodato dinamicamente a questo
 * foglio tramite wp_add_inline_style() - nessuna scrittura su file.
 */
.rfac-box{
	max-width:var(--rfac-max-width,560px);
	margin:0 auto;
	padding:var(--rfac-box-padding,24px);
	border:var(--rfac-border-width,1px) solid var(--rfac-box-border,#e5e5e5);
	border-radius:var(--rfac-radius,10px);
	background:var(--rfac-box-bg,#fff);
	color:var(--rfac-text,#1f2937);
	font-size:var(--rfac-text-size,1em);
	font-weight:var(--rfac-font-weight,400);
	line-height:var(--rfac-line-height,1.5);
	letter-spacing:var(--rfac-letter-spacing,normal);
	box-shadow:var(--rfac-shadow,none);
	transition:box-shadow .15s ease;
}
.rfac-box:hover{box-shadow:var(--rfac-hover-shadow,var(--rfac-shadow,none));}
.rfac-title{
	margin-top:0;
	font-size:var(--rfac-title-size,1.4em);
	text-transform:var(--rfac-text-transform,none);
}
.rfac-intro{
	color:var(--rfac-text-secondary,#555);
	font-size:var(--rfac-subtitle-size,1em);
}
.rfac-form p{margin:0 0 16px}
.rfac-form label{display:block;font-weight:600;margin-bottom:6px}
.rfac-form input[type=text],
.rfac-form input[type=email],
.rfac-form input[type=number],
.rfac-form select,
.rfac-form textarea{
	width:100%;
	padding:var(--rfac-input-padding,10px);
	border:var(--rfac-border-width,1px) solid var(--rfac-input-border,#ccc);
	border-radius:var(--rfac-radius-sm,6px);
	box-sizing:border-box;
	font-size:var(--rfac-text-size,1em);
	color:var(--rfac-text,inherit);
	background:var(--rfac-popup-bg,#fff);
}
.rfac-form input[type=text]:focus,
.rfac-form input[type=email]:focus,
.rfac-form input[type=number]:focus,
.rfac-form select:focus,
.rfac-form textarea:focus{
	border-color:var(--rfac-input-focus,#1a1a1a);
	outline:2px solid transparent;
	box-shadow:0 0 0 1px var(--rfac-input-focus,#1a1a1a);
}
.rfac-form input[type=checkbox],
.rfac-form input[type=radio]{accent-color:var(--rfac-primary,#1a1a1a);}
.rfac-form input:disabled{background:#f5f5f5;color:#666}
/* Asterisco dei campi obbligatori (es. Motivazione). */
.rfac-required{color:var(--rfac-error,#b32d2e);font-weight:700}
.rfac-btn{
	display:inline-block;
	padding:var(--rfac-button-padding,12px 22px);
	border:0;
	border-radius:var(--rfac-radius-sm,6px);
	font-size:var(--rfac-button-size,1em);
	font-weight:var(--rfac-font-weight,400);
	text-transform:var(--rfac-text-transform,none);
	cursor:pointer;
	transition:background-color .15s ease,box-shadow .15s ease;
}
.rfac-btn-primary{background:var(--rfac-primary,#1a1a1a);color:var(--rfac-button-text,#fff);}
.rfac-btn-primary:hover{background:var(--rfac-button-hover,#333);}
.rfac-btn-danger{background:var(--rfac-button-secondary-bg,var(--rfac-secondary,#b32d2e));color:var(--rfac-button-text,#fff);}
.rfac-btn-danger:disabled{background:#d9a3a3;cursor:not-allowed}
.rfac-select-all{
	padding-bottom:8px;
	margin-bottom:8px !important;
	border-bottom:var(--rfac-border-width,1px) solid #eee;
}
.rfac-select-all label{
	display:flex;
	align-items:center;
	gap:8px;
	font-weight:400;
}
.rfac-items{width:100%;table-layout:fixed;border-collapse:collapse;margin:0 0 16px}
.rfac-items td{padding:0;border-bottom:1px solid #f0f0f0;overflow:hidden}
.rfac-items tr:last-child td{border-bottom:0}
.rfac-item-card{
	display:flex;
	align-items:center;
	gap:12px;
	padding:10px 4px;
	font-weight:400;
	cursor:pointer;
}
.rfac-items .rfac-item-card{
	display:flex;
	margin-bottom:0;
}
.rfac-item-card input[type=checkbox]{flex:0 0 auto;margin:0}
.rfac-item-thumb{
	flex:0 0 auto;
	width:56px;
	height:56px;
	border-radius:var(--rfac-radius-sm,6px);
	overflow:hidden;
	background:#f5f5f5;
	border:1px solid #eee;
}
.rfac-item-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rfac-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.rfac-item-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rfac-item-meta{color:var(--rfac-text-secondary,#777);font-size:.9em;display:flex;align-items:center;gap:6px}
.rfac-item-qty{color:var(--rfac-text-secondary,#777)}
.rfac-item-list{display:flex;flex-direction:column;gap:10px}
.rfac-item-card-static{padding:0;cursor:default}
.rfac-item-card-static .rfac-item-thumb{width:40px;height:40px}
.rfac-summary{width:100%;table-layout:fixed;border-collapse:collapse;margin:16px 0}
.rfac-summary th,.rfac-summary td{
	text-align:left;
	padding:8px 10px;
	border:var(--rfac-border-width,1px) solid #eee;
	vertical-align:top;
	overflow:hidden;
}
.rfac-summary th{background:#fafafa;width:35%}
.rfac-ack{font-size:.95em}
a.rfac-inline-link,
.rfac-box a{color:var(--rfac-link,inherit);}
.rfac-box a:hover{color:var(--rfac-link-hover,inherit);}
.rfac-notice{
	max-width:var(--rfac-max-width,560px);
	margin:0 auto 16px;
	padding:12px 16px;
	border-radius:var(--rfac-radius-sm,8px);
	background:var(--rfac-popup-bg,#fff);
}
.rfac-notice-info{background:var(--rfac-info-bg,#eef4fb);border:1px solid var(--rfac-info-border,#bcd6f2);color:var(--rfac-info,inherit);}
.rfac-notice-success{background:var(--rfac-success-bg,#edf7ed);border:1px solid var(--rfac-success-border,#bfe3bf);color:var(--rfac-success,inherit);}
.rfac-notice-error{background:var(--rfac-error-bg,#fbeaea);border:1px solid var(--rfac-error-border,#f0bcbc);color:var(--rfac-error,inherit);}
/* Footer: badge auto-contenuto, leggibile su qualsiasi sfondo */
.rfac-footer-link{margin:0 auto;padding:18px 0 32px;width:100%;text-align:center;box-sizing:border-box}
.rfac-footer-link .rfac-pill{
	display:inline-flex;align-items:center;gap:9px;
	padding:11px 20px 11px 14px;
	border-radius:999px;
	background:var(--rfac-badge-bg,#ffffff);
	color:var(--rfac-badge-text,#1f2937);
	font-size:14px;font-weight:600;line-height:1;
	text-decoration:none !important;
	border:1px solid var(--rfac-badge-border,#e5e7eb);
	box-shadow:var(--rfac-badge-shadow,0 1px 2px rgba(15,23,42,.14),0 6px 16px rgba(15,23,42,.18));
	transition:transform .15s ease,box-shadow .15s ease;
	-webkit-font-smoothing:antialiased;
}
.rfac-footer-link .rfac-pill:hover{
	transform:translateY(-1px);
	box-shadow:0 2px 4px rgba(15,23,42,.16),0 10px 24px rgba(15,23,42,.24);
	color:var(--rfac-badge-text,#1f2937);
}
.rfac-footer-link .rfac-pill:focus-visible{outline:2px solid #ea580c;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.rfac-footer-link .rfac-pill,.rfac-btn,.rfac-box{transition:none}}
