/* Stato vuoto condiviso (rete pubblica, workspace, backoffice).
   I colori vengono dai token dell'area che lo ospita: lo stesso partial si
   adatta al tema chiaro/scuro senza duplicare regole. */
.empty { text-align: center; padding: 46px 24px 52px; }
.empty-art { width: 150px; margin: 0 auto 18px; }
.empty-art svg { width: 100%; height: auto; display: block; }
.empty-art .e-shadow { fill: currentColor; opacity: .07; }
.empty-art .e-fill   { fill: currentColor; opacity: .16; }
.empty-art .e-bg     { stroke: currentColor; stroke-width: 3; stroke-linecap: round; opacity: .38; fill: none; }
.empty-art .e-line   { stroke: currentColor; stroke-width: 3; stroke-linecap: round; opacity: .5; fill: none; }
.empty h3 { margin: 0 0 8px; font-size: 18px; }
/* Colore esplicito e non `opacity`: l'opacità si fonde con lo sfondo e
   faceva scendere il contrasto a 3.3:1, sotto la soglia leggibile. */
.empty p { margin: 0 auto 18px; max-width: 46ch; line-height: 1.6; font-size: 15px;
  color: var(--muted, #5a5478); }
.empty .btn { display: inline-flex; }
