/* ===========================================================================
   TEMA — l'unico file da toccare per ricolorare la piattaforma.
   Le palette alternative sono ridefinizioni delle stesse variabili.
   Il tenant sceglie con <html data-theme="...">.
   =========================================================================== */

/* ---------------------------------------------------------------------------
   Font serviti in locale. Non usare Google Fonts: Chromium nel worker export
   impaginerebbe i PDF dipendendo dalla rete, e con la rete lenta o assente
   i documenti escono con i font di sistema senza che nessuno se ne accorga.
   --------------------------------------------------------------------------- */
@font-face{
  font-family:"Archivo"; src:url("../fonts/archivo-var.woff2") format("woff2-variations");
  font-weight:100 900; font-stretch:62% 125%; font-display:swap;
}
@font-face{
  font-family:"Instrument Sans"; src:url("../fonts/instrument-sans-var.woff2") format("woff2-variations");
  font-weight:400 700; font-stretch:75% 100%; font-display:swap;
}
@font-face{
  font-family:"IBM Plex Mono"; src:url("../fonts/ibm-plex-mono-400.woff2") format("woff2");
  font-weight:400; font-display:swap;
}
@font-face{
  font-family:"IBM Plex Mono"; src:url("../fonts/ibm-plex-mono-500.woff2") format("woff2");
  font-weight:500; font-display:swap;
}
@font-face{
  font-family:"IBM Plex Mono"; src:url("../fonts/ibm-plex-mono-600.woff2") format("woff2");
  font-weight:600; font-display:swap;
}

/* =========================================================================
   1. TOKEN — tutto il colore e la tipografia stanno qui dentro.
   Per ricolorare la piattaforma si cambia solo questo blocco.
   ========================================================================= */
:root{
  /* superfici */
  --frame:#0D0D0F;          /* barre: laterale e alta */
  --frame-2:#1B1C1F;        /* rilievo dentro le barre */
  --frame-text:#B7BABF;     /* testo dentro le barre */
  --frame-text-hi:#FFFFFF;
  --frame-text-dim:#8A8F97; /* briciole di pane, testo secondario sulle barre */
  --frame-text-faint:#6B7079; /* etichette di gruppo, numeri di schermata */
  --knob:#FFFFFF;           /* pomello degli interruttori, bianco su ogni tema */

  --paper:#F5F5F2;          /* fondo pagina */
  --panel:#FFFFFF;          /* fondo schede */
  --panel-2:#FAFAF8;        /* righe alternate, colonne calcolate */
  --rule:#E4E4E0;
  --rule-strong:#C6C6C0;

  /* testo */
  --text:#141518;
  --text-soft:#474B51;
  --muted:#767B82;
  --faint:#9CA1A8;

  /* accento */
  --accent:#FFC800;
  --accent-ink:#0D0D0F;     /* testo sopra l'accento */
  --accent-soft:#FFF4CC;
  --accent-line:#E0AE00;

  /* semantica */
  --pos:#136B4C;  --pos-soft:#E3F0EA;
  --neg:#B02A1F;  --neg-soft:#FBE9E7;
  --info:#1F4E79; --info-soft:#E8EFF6;

  /* forma e tipografia */
  --r:4px;
  --font-ui:"Instrument Sans",system-ui,-apple-system,sans-serif;
  --font-display:"Archivo",system-ui,sans-serif;
  --font-num:"IBM Plex Mono",ui-monospace,monospace;
  --shadow:0 1px 2px rgba(13,13,15,.05);
}

/* --- palette alternative: si cambia un attributo su <html> --- */
html[data-theme="istituto"]{
  --frame:#10233B; --frame-2:#1D3450; --frame-text:#A9BACC;
  --frame-text-dim:#7D93A9; --frame-text-faint:#5A738C;
  --paper:#F4F6F8; --panel-2:#FAFBFC; --rule:#DFE5EA; --rule-strong:#C0CBD4;
  --accent:#C08A2E; --accent-ink:#FFFFFF; --accent-soft:#F7EEDC; --accent-line:#A9761F;
  --text:#132234; --text-soft:#3B4A5A;
}
html[data-theme="bosco"]{
  --frame:#12211C; --frame-2:#1F3229; --frame-text:#AFC3B8;
  --frame-text-dim:#85998C; --frame-text-faint:#63776A;
  --paper:#F4F6F4; --panel-2:#FAFBFA; --rule:#E0E6E1; --rule-strong:#C2CDC5;
  --accent:#C9F24C; --accent-ink:#12211C; --accent-soft:#F0FAD5; --accent-line:#9BC22C;
  --text:#14201A; --text-soft:#3E4D45;
}
html[data-theme="notte"]{
  --frame:#08090B; --frame-2:#17191D; --frame-text:#9EA3AA;
  --paper:#111317; --panel:#191C21; --panel-2:#1E2127;
  --rule:#2A2E35; --rule-strong:#3C424B;
  --text:#EDEFF2; --text-soft:#C0C5CC; --muted:#8B929B; --faint:#6E757E;
  --frame-text-dim:#8A8F97; --frame-text-faint:#63696F;
  --accent:#FFC800; --accent-ink:#0D0D0F; --accent-soft:#33290A; --accent-line:#8A6E06;
  --pos:#4FBF8F; --pos-soft:#16302A; --neg:#F0776A; --neg-soft:#3A1E1B;
  --info:#7FB2E5; --info-soft:#16283A;
  --shadow:none;
}
