*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fdf6e3;color:#2d2d2d}.schermo-centrato{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.card-login{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 4px 20px #00000014;max-width:380px;width:100%;text-align:center}.card-login h1{margin:0 0 .3rem}.sottotitolo{color:#666;font-size:.95rem;margin-bottom:1.5rem}.card-login form{display:flex;flex-direction:column;gap:.7rem}.card-login input{padding:.7rem .9rem;border:1px solid #ddd;border-radius:8px;font-size:1rem}.card-login button[type=submit]{background:#f4b400;border:none;padding:.8rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:.5rem}.card-login button[type=submit]:hover{background:#e0a600}.card-login button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.link-secondario{background:none;border:none;color:#1a73e8;cursor:pointer;margin-top:1rem;font-size:.9rem}.errore{color:#d32f2f;font-size:.85rem;margin:0}.app-shell{min-height:100vh}.topbar{background:#fff;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 4px #0000000f;font-weight:600;gap:1rem}.topbar-nav{display:flex;gap:.5rem;flex:1}.topbar-nav button{background:none;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:500;color:#666;font-size:.9rem}.topbar-nav button.attivo{background:#fdf1cf;color:#8a6400;font-weight:700}.topbar-utente{display:flex;align-items:center;gap:1rem;font-weight:400;font-size:.9rem}.topbar-utente button{background:#eee;border:none;padding:.4rem .9rem;border-radius:6px;cursor:pointer}.dashboard{padding:2rem;max-width:900px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-header select{padding:.5rem .8rem;border-radius:8px;border:1px solid #ddd;font-size:.9rem}.grafico-container{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 2px 10px #0000000f}.totale-etichetta{text-align:center;color:#666;margin-top:.5rem}.vuoto{color:#888;text-align:center;padding:2rem}.catalogo{padding:2rem;max-width:1100px;margin:0 auto}.catalogo-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.catalogo-header button{background:#f4b400;border:none;padding:.7rem 1.3rem;border-radius:8px;font-weight:600;cursor:pointer;white-space:nowrap}.catalogo-header button:disabled{opacity:.6;cursor:not-allowed}.banner-suggerimenti{background:#fff8e1;border:1px solid #f4b400;border-radius:10px;padding:1rem 1.2rem;margin-bottom:1.2rem}.banner-suggerimenti-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.banner-suggerimenti-header button{background:#2d2d2d;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;white-space:nowrap}.tabella-catalogo{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000000f}.tabella-catalogo th{background:#faf3dd;text-align:left;padding:.8rem 1rem;font-size:.85rem;color:#666}.tabella-catalogo td{padding:.7rem 1rem;border-top:1px solid #f0f0f0;font-size:.9rem}.cella-mono{font-family:JetBrains Mono,monospace;font-size:.82rem;color:#555}.tabella-catalogo input[type=text],.tabella-catalogo select{padding:.4rem .6rem;border:1px solid #ddd;border-radius:6px;font-size:.85rem;width:100%}.suggerimento-cella{display:flex;flex-direction:column;gap:.2rem;font-size:.82rem}.suggerimento-motivo{color:#888;font-style:italic}.suggerimento-cella button{align-self:flex-start;background:#e6f4ea;color:#1e7e34;border:none;padding:.3rem .7rem;border-radius:6px;font-size:.78rem;cursor:pointer;margin-top:.2rem}.suggerimento-vuoto{color:#ccc}.integrazioni{padding:2rem;max-width:900px;margin:0 auto}.sottotitolo-pagina{color:#666;margin-bottom:1.5rem}.lista-servizi{display:flex;flex-direction:column;gap:1rem}.card-servizio{background:#fff;border-radius:12px;padding:1.2rem 1.5rem;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.card-servizio-info h3{margin:0 0 .3rem}.card-servizio-info p{margin:0;color:#666;font-size:.9rem}.card-servizio-azioni{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.card-servizio-azioni button{background:#f4b400;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.85rem}.card-servizio-azioni button:disabled{opacity:.6;cursor:not-allowed}.btn-secondario{background:#eee!important;color:#333}.badge-prossimamente{background:#eee;color:#888;padding:.4rem .8rem;border-radius:20px;font-size:.8rem}.badge-connesso{background:#e6f4ea;color:#1e7e34;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600}.badge-scadenza-ok{background:#f0f0f0;color:#666;padding:.4rem .8rem;border-radius:20px;font-size:.8rem}.badge-in-scadenza{background:#fff3cd;color:#8a6400;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600}.badge-scaduto{background:#fdecea;color:#c62828;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600}.etichetta-campo{font-size:.8rem;color:#666;margin-top:.3rem}.messaggio-sync{margin-top:1rem;padding:.8rem 1rem;background:#fff;border-radius:8px;font-size:.9rem}.modale-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:50}.modale-contenuto{background:#fff;padding:2rem;border-radius:16px;max-width:400px;width:90%}.modale-contenuto form{display:flex;flex-direction:column;gap:.8rem;margin-top:1rem}.modale-contenuto input{padding:.7rem .9rem;border:1px solid #ddd;border-radius:8px;font-size:1rem}.modale-azioni{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.5rem}.nav-tabs{display:flex;gap:.5rem;padding:0 1.5rem;background:#fff;border-bottom:1px solid #eee}.nav-tabs button{background:none;border:none;padding:.9rem 1rem;cursor:pointer;font-size:.95rem;color:#666;border-bottom:2px solid transparent}.nav-tabs button.attivo{color:#2d2d2d;border-bottom-color:#f4b400;font-weight:600}
