/* Portale dimensionatori.paolosavoia.com — colori dello studio */
:root{--carta:#f7f5f0;--ink:#191b1c;--soft:#636669;--terra:#c9502a;--terra2:#9a3a1e;
  --blu:#12507e;--linea:#ded8cc;--bianco:#fff;--errore:#a4231a;--ok:#2f6f3a}
*{box-sizing:border-box}
html,body{margin:0;background:var(--carta);color:var(--ink);
  font:15px/1.5 "Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--blu)}
.testata{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 24px;background:#1f2225;color:#fff}
.testata img{height:34px;background:#fff;border-radius:4px;padding:3px 6px}
.testata .esci{color:#fff;font-size:13px}
.centro{max-width:430px;margin:48px auto;padding:0 16px}
.riquadro{background:var(--bianco);border:1px solid var(--linea);border-radius:12px;
  padding:26px 28px;box-shadow:0 6px 24px rgba(0,0,0,.06)}
.riquadro h1{font-size:20px;margin:0 0 4px;color:var(--terra)}
.riquadro .sotto{color:var(--soft);font-size:13px;margin:0 0 18px}
label{display:block;font-size:13px;color:var(--soft);margin:12px 0 4px}
input,select,textarea{width:100%;padding:10px 12px;border:1px solid #cfc7b8;border-radius:7px;
  font:inherit;background:#fffef7}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(201,80,42,.35);border-color:var(--terra)}
button{margin-top:18px;width:100%;padding:11px;border:0;border-radius:7px;
  background:var(--terra);color:#fff;font:600 15px/1 inherit;cursor:pointer}
button:hover{background:var(--terra2)}
button:disabled{opacity:.6;cursor:default}
.esito{margin-top:14px;font-size:13.5px;min-height:1.2em}
.esito.errore{color:var(--errore)}
.esito.ok{color:var(--ok)}
.collegamenti{margin-top:16px;font-size:13px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.piede{text-align:center;color:var(--soft);font-size:11.5px;margin:30px 16px}
/* vetrina */
.largo{max-width:1180px;margin:28px auto;padding:0 20px}
.avviso{background:#fff4d6;border:1px solid #e9d39a;color:#6f4708;border-radius:10px;padding:14px 18px;margin-bottom:22px}
h3.fam{font-size:13px;letter-spacing:.5px;text-transform:uppercase;color:var(--blu);
  border-bottom:1px solid var(--linea);padding-bottom:4px;margin:26px 0 12px}
.griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.scheda{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:14px 16px;opacity:.62}
.scheda .ico{width:24px;height:24px;color:var(--blu)}
.scheda .ico svg{width:100%;height:100%}
.scheda h4{margin:8px 0 6px;font-size:14px;color:var(--blu)}
.scheda p{margin:0;font-size:12.5px;color:var(--soft);line-height:1.4}
/* richiesta di accesso */
.centro.medio{max-width:620px}
fieldset{border:1px solid var(--linea);border-radius:9px;margin:14px 0 4px;padding:6px 14px 14px}
legend{font-size:12px;letter-spacing:.4px;text-transform:uppercase;color:var(--blu);padding:0 6px}
.due{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media (max-width:520px){.due{grid-template-columns:1fr}.riquadro{padding:20px 16px}}
input[type=file]{padding:8px;background:#fff}
.anteprima{margin-top:8px;font-size:13px;color:var(--soft)}
.anteprima img{max-width:100%;max-height:260px;border:1px solid var(--linea);border-radius:6px}
.nascosto{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.spunta{display:flex;gap:10px;align-items:flex-start;color:var(--ink);margin-top:16px}
.spunta input{width:auto;margin-top:3px}
.informativa{font-size:12.5px;color:var(--soft);margin-top:6px}
.informativa p{margin:6px 0 0}
/* approvazione delle richieste (anche da cellulare) */
.largo.stretto{max-width:760px}
.richiesta{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:14px 16px;margin-bottom:16px}
.richiesta h3{margin:0 0 8px;color:var(--terra);font-size:17px}
.richiesta .corpo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){.richiesta .corpo{grid-template-columns:1fr}}
.richiesta dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:13.5px;align-content:start}
.richiesta dt{color:var(--soft)}
.richiesta dd{margin:0;word-break:break-word}
.richiesta img.fattura{width:100%;max-height:380px;object-fit:contain;border:1px solid var(--linea);border-radius:6px;background:#fafafa}
.richiesta a.pdf{display:inline-block;padding:10px 14px;border:1px solid var(--linea);border-radius:7px;background:#fafafa}
.richiesta .decidi{border-top:1px solid var(--linea);margin-top:12px;padding-top:4px}
.richiesta button.rifiuta{background:#fff;color:var(--errore);border:1px solid var(--errore)}
.richiesta button.rifiuta:hover{background:#fbeceb}
.richiesta .nota{background:#fff4d6;border-radius:6px;padding:6px 10px;font-size:13px;margin:0 0 8px}
.richiesta.chiusa{opacity:.85;padding:10px 16px}
.richiesta.chiusa h3{font-size:15px;margin:0}
.stato{font-size:11.5px;font-weight:600;text-transform:uppercase;padding:2px 8px;border-radius:10px;margin-left:6px}
.stato.approvata{background:#e3f1e5;color:var(--ok)}
.stato.rifiutata{background:#fbeceb;color:var(--errore)}
/* richiesta: le due strade, il conto, la fatturazione */
[hidden]{display:none !important}
.tre{display:grid;grid-template-columns:1fr 2fr 70px;gap:0 12px}
.nota-campo{font-size:12px;color:var(--soft);margin:8px 0 0}
.scelta{display:flex;gap:10px;align-items:flex-start;color:var(--ink);margin:10px 0 0;font-size:14px}
.scelta input{width:auto;margin-top:4px}
.conto table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}
.conto td{padding:5px 2px;border-bottom:1px solid var(--linea)}
.conto td:last-child{text-align:right;white-space:nowrap}
.conto tr.sconto td{color:var(--ok)}
.conto tr.totale td{font-weight:700;font-size:16px;border-bottom:0}
.conto .errore{color:var(--errore);font-size:13.5px;margin:10px 0 0}
.conto .ok{color:var(--ok);font-size:13.5px;margin:10px 0 0}
@media (max-width:520px){.tre{grid-template-columns:1fr 1fr}.tre div:nth-child(2){grid-column:1/-1;order:-1}}
/* amministrazione: codici e accesso a mano */
.riquadro-admin{background:#fff;border:1px solid var(--linea);border-radius:10px;padding:6px 16px 16px;margin-bottom:16px}
.riquadro-admin fieldset .spunta{margin:6px 0 0}
.scorre{overflow-x:auto;margin-bottom:12px}
table.codici{border-collapse:collapse;width:100%;background:#fff;font-size:13px}
table.codici td,table.codici th{border:1px solid var(--linea);padding:5px 8px;text-align:left;vertical-align:middle}
table.codici th{background:#f0ebe1}
button.piccolo{width:auto;margin:0;padding:5px 10px;font-size:12.5px;background:#fff;color:var(--errore);border:1px solid var(--errore)}
button.piccolo:hover{background:#fbeceb}
.fogli-corso{margin-top:10px;font-size:13.5px}
.fogli-corso summary{cursor:pointer;color:var(--ink)}
.fogli-corso ul{columns:2 220px;margin:6px 0 0 18px;color:var(--soft);font-size:13px}
.fogli-corso .errore{color:var(--errore)}
/* iscrizioni */
.filtri{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 14px}
.filtri input{width:260px;margin:0}
button.filtro{width:auto;margin:0;padding:6px 12px;font-size:13px;background:#fff;color:var(--ink);border:1px solid var(--linea)}
button.filtro.on{background:var(--ink);color:#fff;border-color:var(--ink)}
table.iscrizioni{border-collapse:collapse;width:100%;background:#fff;font-size:13px}
table.iscrizioni th,table.iscrizioni td{border:1px solid var(--linea);padding:6px 8px;text-align:left;vertical-align:top}
table.iscrizioni th{background:#f0ebe1;white-space:nowrap}
table.iscrizioni .piccolo{font-size:11.5px;color:var(--soft)}
table.iscrizioni .nota-riga{display:inline-block;max-width:280px}
table.iscrizioni details ul{margin:4px 0 0 16px;font-size:12px;color:var(--soft);max-height:220px;overflow:auto}
table.iscrizioni summary{cursor:pointer;white-space:nowrap}
.st{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;white-space:nowrap}
.st.attiva{background:#e3f1e5;color:var(--ok)}
.st.scade{background:#fdf1dc;color:#9a5b00}
.st.scaduta,.st.opzione,.st.inizio{background:#eee;color:var(--soft)}
.st.sospesa{background:#fbeceb;color:var(--errore)}
.st.futura{background:#e6eef6;color:var(--blu)}
.azioni-iscr{white-space:nowrap}
.azioni-iscr .proroga{display:flex;gap:4px;margin-top:6px}
.azioni-iscr .proroga input{width:140px;margin:0;padding:4px 6px;font-size:12.5px}
button.piccolo.riattiva{color:var(--ok);border-color:var(--ok)}
button.piccolo.neutro{color:var(--blu);border-color:var(--blu)}
.azioni-iscr .esito{font-size:12px;white-space:normal;max-width:220px}
/* pagina /demo */
.demo-pagina{max-width:1120px;margin:28px auto;padding:0 20px}
.demo-testa{text-align:center;margin-bottom:22px}
.demo-occhiello{font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:var(--terra);font-weight:600;margin:0 0 6px}
.demo-testa h1{font-size:30px;margin:0 0 10px;color:var(--ink)}
.demo-lead{max-width:760px;margin:0 auto;color:var(--soft);font-size:15px;line-height:1.55}
.demo-colonne{display:grid;grid-template-columns:1.15fr 1fr;gap:26px;align-items:start}
.demo-cosa h2,.demo-modulo h2{font-size:17px;color:var(--terra);margin:0 0 10px}
.demo-elenco{margin:0 0 16px 18px;padding:0;font-size:14px;line-height:1.55}
.demo-elenco li{margin-bottom:6px}
.demo-figure{display:grid;grid-template-columns:1fr;gap:12px}
.demo-figure figure{margin:0;background:#fff;border:1px solid var(--linea);border-radius:9px;overflow:hidden}
.demo-figure img{display:block;width:100%;height:auto;max-height:260px;object-fit:cover;object-position:left top}
.demo-figure figcaption{font-size:12.5px;color:var(--soft);padding:7px 10px}
.demo-abbonati{font-size:14px;margin-top:14px}
.demo-modulo{max-width:none;position:sticky;top:16px}
@media (max-width:860px){.demo-colonne{grid-template-columns:1fr}.demo-modulo{position:static}}

/* /admin — pannello «Piano e fogli» */
tr.pannello-piano > td { background: #fbf8f2; border-top: 2px solid #C9502A; padding: 14px 16px 18px; }
tr.pannello-piano h3 { margin: 0 0 10px; font-size: 16px; }
.piano-testa { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 10px; }
.piano-testa select { margin-left: 6px; padding: 5px 8px; }
.piano-conta { font-size: 13px; color: #555; margin-right: auto; }
.piano-fogli { columns: 3 260px; column-gap: 18px; }
.piano-fogli fieldset { break-inside: avoid; border: 1px solid #ddd3c3; border-radius: 8px; margin: 0 0 12px; padding: 6px 10px 8px; background: #fff; }
.piano-fogli legend { font-weight: 600; font-size: 13px; padding: 0 4px; }
.spunta-foglio { display: flex; gap: 6px; align-items: flex-start; font-size: 13px; padding: 2px 0; font-weight: 400; }
.spunta-foglio input { margin-top: 3px; flex: none; }
.spunta-foglio.fuori-piano span { color: #1f6f2b; font-weight: 600; }
.spunta-foglio.tolto span { color: #a4231a; text-decoration: line-through; }
.piano-piede { display: flex; gap: 10px; align-items: center; margin-top: 6px; }
.iscrizioni .pers { background: #fdf1dc; color: #9a5b00; font-size: 11px; padding: 1px 6px; border-radius: 8px; }
.piano-fogli .spunta-foglio { display: flex; flex-direction: row; margin: 0; }
.piano-fogli .spunta-foglio input { width: auto; min-width: 0; height: auto; margin: 3px 0 0; padding: 0; }
.piano-fogli .spunta-foglio span { flex: 1; line-height: 1.35; }
.piano-testa label { display: flex; align-items: center; gap: 6px; margin: 0; font-weight: 600; }
.piano-testa select { width: auto; margin: 0; }
.piano-piede button { width: auto; }

/* l'avviso della versione di valutazione (/codice, 21/10/2026) */
.avviso-valutazione{border:2px solid #c2410c;background:#fff7ed;border-radius:10px;padding:14px 16px;margin:0 0 18px;font-size:15px;line-height:1.5;color:#3b1d0a}
.avviso-valutazione b:first-child{font-size:17px;color:#9a3412}
.avviso-valutazione ul{margin:6px 0 8px 18px;padding:0}
/* l'uso dei fogli (/admin/uso) */
table.uso td.num{text-align:right;font-variant-numeric:tabular-nums}
.barra-uso{width:160px;height:10px;background:#eef1f4;border-radius:5px;overflow:hidden}
.barra-uso span{display:block;height:100%;background:#12507e}
.nota-newsletter{font-size:13px;color:#9a3412;background:#fff7ed;border-left:3px solid #c2410c;padding:6px 10px;margin:4px 0 8px}
.pulsante-uso{display:inline-block;background:#12507e;color:#fff !important;text-decoration:none;padding:8px 14px;border-radius:6px;font-weight:600}
ul.mai-aperti li{color:#8a6d3b}
