/*
Theme Name: F6UP
Theme URI: https://www.f6up.it
Description: Tema child di Twenty Twenty-Five per il sito dello Studio F6UP, amministrazioni condominiali. Costruito su blocchi core: l'identità visiva vive in theme.json e nei pattern, non in CSS.
Author: Studio F6UP
Author URI: https://www.f6up.it
Template: twentytwentyfive
Version: 0.1.0
Requires at least: 6.7
Requires PHP: 7.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: f6up
Tags: full-site-editing, block-patterns, blog, one-column
*/

/*
 * Colori, tipografia e spaziature si definiscono in theme.json, non qui.
 * Qui sta solo cio che theme.json non puo raggiungere.
 *
 * Tutto quanto segue usa le variabili generate da theme.json, non valori
 * scritti a mano: se cambia la palette, cambiano anche queste regole.
 */

/*
 * Fluent Forms stampa il proprio CSS, fuori dalla portata di theme.json: il
 * modulo arriverebbe con il bottone azzurro predefinito del plugin e bordi
 * dei campi troppo chiari per la soglia 3:1 di WCAG 1.4.11.
 */
.fluentform .ff-btn-submit {
	background-color: var(--wp--preset--color--accent-1);
	border-color: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--base);
	border-radius: 4px;
	font-size: var(--wp--preset--font-size--medium);
	padding: 0.9rem 2rem;
}

.fluentform .ff-btn-submit:hover,
.fluentform .ff-btn-submit:focus {
	background-color: var(--wp--preset--color--accent-2);
	border-color: var(--wp--preset--color--accent-2);
	color: var(--wp--preset--color--base);
}

.fluentform .ff-btn-submit:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-1);
	outline-offset: 3px;
}

.fluentform input[type="text"],
.fluentform input[type="email"],
.fluentform input[type="tel"],
.fluentform textarea {
	border-color: var(--wp--preset--color--accent-5);
}

.fluentform input:focus-visible,
.fluentform textarea:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-1);
	outline-offset: 2px;
}

/*
 * Header fisso in alto.
 *
 * Il supporto "position: sticky" dei blocchi non basta: la regola del core e
 * `.wp-site-blocks > .is-position-sticky`, quindi vale solo per i blocchi
 * figli diretti. Un template part inserisce un <header> in mezzo, e
 * l'attributo sul gruppo interno non produce alcun effetto: verificato sul
 * CSS emesso, dove non compare nessun position: sticky.
 *
 * L'offset segue l'altezza della barra di amministrazione, altrimenti da
 * loggati l'header ci finisce sotto.
 */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 20;
}

:root {
	scroll-padding-top: 6rem;
}
