:root{color:var(--testo);background-color:var(--sfondo);-webkit-text-size-adjust:100%;--testo:#2b211a;--testo-tenue:#6f6256;--sfondo:#f6efe4;--card:#fffaf2;--bordo:#cdbba3;--marrone:#8b5a2b;--marrone-scuro:#6b4423;--pericolo:#a12a1e;--ombra:0 1px 3px #2b211a26;--ombra-barra:0 -1px 3px #2b211a26;--su-marrone:#fff;--evidenza:#f1e3cc;--stato-neutro-sfondo:#e6e1da;--stato-neutro-testo:#44403b;--stato-in-corso-testo:#1e5a1f;--stato-in-corso-sfondo:#dcefd8;--stato-programmato-testo:#6b4a00;--stato-programmato-sfondo:#fbe8b8;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100dvh;margin:0}.app{padding:16px;padding-top:max(16px, env(safe-area-inset-top));max-width:640px;margin:0 auto}button{min-height:44px;font:inherit;color:var(--marrone-scuro);background:var(--card);border:1px solid var(--marrone);cursor:pointer;border-radius:10px;padding:0 16px}button.primario,button[type=submit]{color:var(--su-marrone);background:var(--marrone);border-color:var(--marrone);font-weight:700}button.distruttivo,.lista-clienti button.distruttivo{color:var(--pericolo);border-color:var(--pericolo)}button[type=submit].distruttivo,.lista-clienti button[type=submit].distruttivo{color:var(--su-marrone);background:var(--pericolo)}button:disabled{opacity:.6;cursor:default}button:focus-visible{outline:3px solid var(--testo);outline-offset:2px}.accesso{flex-direction:column;gap:8px;display:flex}.accesso input{min-height:44px;font:inherit;padding:0 12px;font-size:16px}.accesso button{margin-top:8px}.barra-esci{padding-top:0;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.testata{align-items:center;gap:12px;margin-bottom:8px;display:flex}.testata h1{color:var(--marrone-scuro);margin:0;font-size:1.25rem}.logo-piccolo{border-radius:10px;flex:none}.logo-grande{width:128px;height:128px;box-shadow:var(--ombra);border-radius:28px;margin:24px auto 8px;display:block}.titolo-accesso{text-align:center;color:var(--marrone-scuro)}.vuoto{background:var(--card);border:1px dashed var(--bordo);border-radius:12px;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;display:flex}.vuoto p{margin:0}.clienti{flex-direction:column;gap:8px;display:flex}.clienti input{min-height:44px;font:inherit;padding:0 12px;font-size:16px}.accesso textarea{font:inherit;padding:8px 12px;font-size:16px}.lista-clienti{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lista-clienti button{text-align:left;overflow-wrap:anywhere;width:100%;min-height:56px;color:var(--testo);background:var(--card);border:1px solid var(--bordo);box-shadow:var(--ombra);border-radius:12px;flex-direction:column;padding:8px 16px;display:flex}.lista-clienti button span{color:var(--testo-tenue)}.accesso select{min-height:44px;font:inherit;padding:0 12px;font-size:16px}.barra-sezioni{z-index:10;padding-bottom:env(safe-area-inset-bottom);background:var(--card);border-top:1px solid var(--bordo);box-shadow:var(--ombra-barra);display:flex;position:fixed;bottom:0;left:0;right:0}.barra-sezioni button{min-width:0;min-height:64px;color:var(--testo-tenue);background:0 0;border:0;border-top:3px solid #0000;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 4px;font-size:.8125rem;display:flex}.barra-sezioni button[aria-pressed=true]{color:var(--marrone-scuro);background:var(--evidenza);border-top-color:var(--marrone);font-weight:700}.azioni.viste button[aria-pressed=true]{color:var(--su-marrone);background:var(--marrone-scuro);border-color:var(--marrone-scuro);font-weight:700}.lista-cantieri li{color:var(--testo);background:var(--card);border:1px solid var(--bordo);box-shadow:var(--ombra);overflow-wrap:anywhere;border-radius:12px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.lista-cantieri .azioni{flex-wrap:wrap;gap:8px;display:flex}.lista-cantieri .azioni button{width:auto;min-height:44px}.sezione-cantieri{margin-top:8px}.intestazione-sezione{text-align:left;width:100%;min-height:44px;font-weight:700}.stato{color:var(--testo);background:var(--stato-neutro-sfondo);border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:.875rem;font-weight:700}.stato-in_corso{color:var(--stato-in-corso-testo);background:var(--stato-in-corso-sfondo)}.stato-programmato{color:var(--stato-programmato-testo);background:var(--stato-programmato-sfondo)}.stato-finito{color:var(--stato-neutro-testo);background:var(--stato-neutro-sfondo)}.stato-annullato{color:var(--stato-neutro-testo);background:var(--stato-neutro-sfondo);text-decoration:line-through}.accesso fieldset{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.riga-data{gap:8px;display:flex}.riga-data input{flex:1;min-width:0}.riga-data button{margin-top:0}.clienti .azioni{flex-wrap:wrap;gap:8px;display:flex}.mese-testata{justify-content:space-between;align-items:center;display:flex}.griglia-mese{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.giorno-nome{text-align:center;font-size:12px;font-weight:700}.giorno{border:1px solid var(--bordo);background:var(--card);min-width:0;min-height:48px;color:var(--testo);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:0;display:flex}.giorno .conteggio{font-size:12px;font-weight:700}.giorno.scelto{background:var(--evidenza);outline:2px solid var(--marrone-scuro)}.voce-in_corso{border-left:6px solid var(--marrone)}.voce-programmato{border-left:6px dashed var(--testo-tenue)}.versione{color:var(--testo-tenue);text-align:center;margin-top:24px;font-size:.75rem}
