/**
 * DESIGN TOKENS · il visual theme del servizio.
 *
 * Questo è l'unico file che definisce come appare il servizio. Non contiene
 * selettori di componente, solo variabili: chi vorrà rifare la grafica da zero
 * lavorerà qui, senza toccare database, logica pratica, pagamenti, documenti,
 * firma, stati, backend o email (sez. 21, requisito architetturale).
 *
 * DIREZIONE approvata (rif. "versione grafica fatta nuova"): ufficio digitale
 * privato contemporaneo, palette blu istituzionale. Ordine, autorevolezza,
 * gerarchia nettissima. Non un ecommerce, non una startup giocosa, non un
 * vecchio portale pubblico, non un tema WordPress.
 */

:root {
	/* ---------------------------------------------------------------- */
	/* Colore                                                            */
	/* Palette volutamente stretta: due neutri, un accento istituzionale, */
	/* due segnali. L'autorevolezza viene dalla disciplina.               */
	/* ---------------------------------------------------------------- */
	--pc-color-ink: #17324d;          /* testo principale: blu-nero d'inchiostro */
	--pc-color-ink-muted: #5b6d7f;    /* micro-label, note, metadati */
	--pc-color-ink-faint: #5d7084;    /* testo terziario (4.9:1 su bianco) */
	--pc-color-paper: #ffffff;        /* superfici */
	--pc-color-paper-alt: #f5f7fa;    /* superfici secondarie */
	--pc-color-paper-deep: #eaf3fa;   /* fondali */
	--pc-color-rule: #d7e0e8;         /* separatori sottili */
	--pc-color-rule-strong: #b7c6d3;

	/* Accento: blu istituzionale, non brillante. Deve leggere come una
	   penna d'ufficio, non come un bottone "compra". */
	--pc-color-accent: #0b4f9e;
	--pc-color-accent-hover: #0a3d7c;
	--pc-color-accent-deep: #0b2a54;
	--pc-color-accent-ink: #ffffff;
	--pc-color-accent-soft: #eaf0f8;

	/* Testata e chiusura: sempre sul blu istituzionale, indipendentemente
	   dal tema chiaro/scuro del contenuto (identità stabile). */
	--pc-color-header-bg: #123d78;
	--pc-color-header-ink: #ffffff;
	--pc-color-header-muted: rgba(255, 255, 255, .82);
	--pc-color-header-line: rgba(255, 255, 255, .18);
	--pc-color-footer-bg: #0f3567;
	--pc-color-footer-deep: #0b2a54;

	/* Segnali: usati con parsimonia, mai decorativi. */
	--pc-color-confirm: #1d6b48;
	--pc-color-confirm-soft: #e7f3ed;
	--pc-color-danger: #96242a;
	--pc-color-star: #f3c84d;
	--pc-color-notice: #49647d;

	/* ---------------------------------------------------------------- */
	/* Tipografia                                                        */
	/* Stack di sistema: nessun webfont da scaricare, resa immediata su   */
	/* mobile anche a rete lenta (sez. 13, 19).                           */
	/* Per adottare un font proprietario basta cambiare queste tre righe. */
	/* ---------------------------------------------------------------- */
	--pc-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		"Helvetica Neue", Arial, sans-serif;
	--pc-font-display: var(--pc-font-body);
	--pc-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
		"Liberation Mono", monospace;

	--pc-weight-normal: 400;
	--pc-weight-medium: 500;
	--pc-weight-bold: 650;

	/* Scala tipografica fluida: una sola definizione per ogni livello,
	   nessuna media query sparsa nei componenti. */
	--pc-text-micro: .6875rem;   /* micro-label amministrative */
	--pc-text-small: .8125rem;
	--pc-text-base: 1rem;
	--pc-text-lead: 1.125rem;
	--pc-text-h3: clamp(1.0625rem, 1rem + .3vw, 1.1875rem);
	--pc-text-h2: clamp(1.375rem, 1.2rem + .8vw, 1.75rem);
	--pc-text-h1: clamp(1.875rem, 1.5rem + 1.8vw, 2.375rem);
	--pc-text-hero: clamp(2.125rem, 1.5rem + 3vw, 3.4rem);

	--pc-leading-tight: 1.14;
	--pc-leading-snug: 1.35;
	--pc-leading-normal: 1.62;

	/* Il tracking largo sulle micro-label è ciò che dà il carattere
	   "documento amministrativo" senza aggiungere un solo grammo. */
	--pc-tracking-label: .1em;
	--pc-tracking-code: .07em;
	--pc-tracking-tight: -.014em;

	/* ---------------------------------------------------------------- */
	/* Spazio · scala unica, usata ovunque                               */
	/* ---------------------------------------------------------------- */
	--pc-space-1: .25rem;
	--pc-space-2: .5rem;
	--pc-space-3: .75rem;
	--pc-space-4: 1rem;
	--pc-space-5: 1.5rem;
	--pc-space-6: 2rem;
	--pc-space-7: 3rem;
	--pc-space-8: 4.5rem;
	--pc-space-9: 6rem;

	/* ---------------------------------------------------------------- */
	/* Forma                                                             */
	/* Raggi minimi: l'arrotondamento morbido legge come consumer.        */
	/* ---------------------------------------------------------------- */
	--pc-radius: 6px;
	--pc-radius-lg: 10px;
	--pc-border-width: 1px;
	--pc-border-strong: 2px;

	/* Ombre quasi assenti: l'ordine si costruisce con le linee, non con
	   la profondità finta. */
	--pc-shadow-none: none;
	--pc-shadow-raised: 0 1px 2px rgb(23 50 77 / .06),
		0 8px 24px -12px rgb(23 50 77 / .16);

	/* ---------------------------------------------------------------- */
	/* Misura e layout                                                   */
	/* ---------------------------------------------------------------- */
	--pc-measure: 34rem;          /* colonna del percorso e dei documenti */
	--pc-measure-text: 44rem;     /* colonna di lettura */
	--pc-measure-wide: 82.5rem;   /* contenitore principale (1320px) */
	--pc-gutter: var(--pc-space-4);

	/* ---------------------------------------------------------------- */
	/* Movimento · solo funzionale (sez. 22.7)                           */
	/* ---------------------------------------------------------------- */
	--pc-motion: 170ms cubic-bezier(.22, .61, .36, 1);
	--pc-motion-slow: 260ms cubic-bezier(.22, .61, .36, 1);
}

/**
 * Contrasto elevato: si irrobustiscono le linee, che sono l'ossatura del
 * sistema visivo.
 */
@media (prefers-contrast: more) {
	:root {
		--pc-color-rule: var(--pc-color-ink-muted);
		--pc-border-width: 1.5px;
	}
}
