/* COPIA da depy/static/css/anagrafiche.css (commit 1360520, 10/11/2026). Non modificare qui:
   se cambia in Depy si ricopia (vedi web/css/depy/LEGGIMI.md). */
/* Anagrafiche: articoli, articoli per fornitore, listini.
   Le finestre davanti alla pagina (.an-velo), la tabella con le righe
   che si aprono sotto (.an-tab, .an-sotto-riga), i campi a griglia.
   Nasce dai mockup di ottobre 2026. */
.an-sotto { font-size: .86rem; color: var(--testo-2); margin-top: 3px; }
.an-sotto b { color: var(--primario); }
/* Nella riga di riepilogo sotto il titolo i conteggi cliccabili («8 senza
   categoria», «3 con unita' dubbia») sono link: il colore standard dei link,
   il blu del logo. Il rosso --no resta solo per i problemi veri. */
.an-sotto .e-giallo { color: var(--primario); font-weight: 600; }
.an-sotto .e-rosso { color: var(--no); font-weight: 600; }
.an-vigore { display: flex; flex-wrap: wrap; gap: 8px; margin: -4px 0 14px; }
.an-vigore span { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-sm); color: var(--blu-700); background: var(--hb-lavoro-ico); border-radius: var(--r-pill); padding: 4px 12px; }
.an-chip { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-sm); font-weight: 600; color: var(--primario); background: var(--hb-lavoro-ico); border-radius: var(--r-pill); padding: 4px 6px 4px 12px; margin: 0 0 12px; }
.an-chip a { width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--testo-2); text-decoration: none; }
.an-chip a:hover { background: var(--superficie); color: var(--no); }

/* il riquadro di creazione / modifica / duplica: si apre sopra all'elenco */
.an-crea { display: none; margin-bottom: 18px; border: 1px solid var(--bordo); border-radius: var(--r-lg); background: var(--superficie); box-shadow: var(--ombra-4); overflow: hidden; }
.an-crea.e-su { display: block; animation: anScendi .18s ease-out; }
@keyframes anScendi { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.an-crea-testa { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--bordo); }
.an-crea-ico { width: 40px; height: 40px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; font-size: var(--fs-lg); background: var(--hb-lavoro-ico); color: var(--blu-500); flex: 0 0 auto; }
.an-crea-ico.e-copia { background: var(--verde-50); color: var(--ok); }
.an-crea-ico.e-mod { background: var(--ambra-50); color: var(--ambra-800); }
.an-crea-testa h3 { margin: 0; font-size: var(--fs-md); font-weight: 700; color: var(--primario); }
.an-crea-testa p { margin: 1px 0 0; font-size: var(--fs-sm); color: var(--testo-2); }
.an-crea-x { margin-left: auto; border: 0; background: none; width: 34px; height: 34px; border-radius: var(--r-sm); color: var(--testo-2); cursor: pointer; }
.an-crea-x:hover { background: var(--velo); color: var(--primario); }
.an-crea-corpo { padding: 16px 18px 6px; }
.an-sez { margin-bottom: 16px; }
.an-sez-tit { display: flex; align-items: center; gap: 7px; font-size: .68rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--testo-2); margin-bottom: 10px; }
.an-sez-tit i { font-size: .85rem; color: var(--blu-500); }
.an-griglia { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 16px; }
.an-campo { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.an-campo.c2 { grid-column: span 2; } .an-campo.c3 { grid-column: span 3; } .an-campo.c4 { grid-column: span 4; }
.an-campo label { font-size: .76rem; font-weight: 700; color: var(--testo-2); }
.an-campo label .obbl { color: var(--no); }
.an-campo label .fac { font-weight: 500; color: var(--testo-2); font-size: var(--fs-xs); }
.an-campo input[type=text], .an-campo input[type=number], .an-campo input[type=date], .an-campo input[type=email], .an-campo input[type=password], .an-campo input[type=tel], .an-campo textarea {
    width: 100%; height: 40px; padding: 0 12px; font: inherit; font-size: var(--fs-base); color: var(--primario);
    background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--r-md);
}
.an-campo textarea { height: auto; padding: 9px 12px; resize: vertical; }
.an-campo .tnd-cerca input, .el-pannello .an-campo .tnd-cerca input { height: 34px; padding: 0 10px 0 32px; font-size: .85rem; border-radius: var(--r-sm); background: var(--velo); }
.an-campo .tnd-cerca input:focus { background: var(--superficie); box-shadow: none; }
.an-campo input:focus, .an-campo textarea:focus { outline: 0; border-color: var(--primario); box-shadow: 0 0 0 3px rgba(var(--primario-rgb),.09); }
.an-campo input[readonly], .an-campo input:disabled { background: var(--velo); color: var(--testo-2); }
.an-campo .tnd { display: block; width: 100%; } .an-campo .tnd-campo { height: 40px; }
.an-aiuto { font-size: var(--fs-xs); color: var(--testo-2); line-height: 1.4; }
.an-pre { position: relative; } .an-pre span { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--testo-2); font-size: .85rem; }
.an-pre input { padding-left: 26px; }
.an-suf { position: relative; } .an-suf span { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); color: var(--testo-2); font-size: var(--fs-sm); }
.an-suf input { padding-right: 52px; }
.an-cerca-campo { position: relative; } .an-cerca-campo i { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--testo-2); }
.an-cerca-campo input { padding-left: 34px; }
.an-interr { display: inline-flex; align-items: center; gap: 10px; height: 40px; font-size: .86rem; font-weight: 600; color: var(--testo-2); cursor: pointer; }
.an-interr input { width: 38px; height: 22px; accent-color: var(--ok); }
.an-suggerito { display: flex; align-items: center; gap: 8px; margin: -4px 0 14px; padding: 8px 12px; border-radius: var(--r-md); background: var(--blu-50); color: var(--blu-700); font-size: var(--fs-sm); }
.an-riassunto { padding: 12px 14px; border-radius: var(--r-md); background: var(--verde-50); color: var(--verde-700); font-size: .86rem; line-height: 1.5; }
.an-riassunto.e-vuoto { background: var(--velo); color: var(--testo-2); }
.an-avviso { padding: 10px 12px; border-radius: var(--r-md); background: var(--hb-compra-ico); color: var(--hb-compra-testo); font-size: var(--fs-sm); line-height: 1.45; }
.an-opz { display: flex; flex-direction: column; gap: 8px; }
.an-opz label { display: flex; gap: 10px; align-items: flex-start; font-size: .86rem; color: var(--testo-2); cursor: pointer; padding: 10px 12px; border: 1px solid var(--bordo); border-radius: var(--r-md); }
.an-opz label small { display: block; color: var(--testo-2); font-size: .76rem; }
.an-opz input { width: 18px; height: 18px; accent-color: var(--ok); margin-top: 2px; }
.an-crea-piede { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; padding: 14px 18px; border-top: 1px solid var(--bordo); background: var(--velo); }
.an-crea-piede .an-dice { font-size: var(--fs-sm); color: var(--testo-2); }
.an-crea-piede .an-bt { display: flex; gap: 8px; }

/* l'import: zona file e anteprima */
.an-import { display: none; margin-bottom: 18px; }
.an-import.e-su { display: block; }
.an-drop { display: flex; gap: 16px; align-items: center; padding: 20px 18px; border: 2px dashed var(--bordo-forte); border-radius: var(--r-lg); background: var(--velo); cursor: pointer; }
.an-drop:hover { border-color: var(--ok); background: var(--verde-50); }
.an-drop > i { font-size: var(--fs-3xl); color: var(--ok); }
.an-drop small { display: block; color: var(--testo-2); font-size: .76rem; margin-top: 4px; }
.an-fogli { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; font-size: var(--fs-sm); color: var(--testo-2); margin-top: 12px; }
.an-letto { margin-top: 14px; border: 1px solid var(--bordo); border-radius: var(--r-md); overflow: hidden; }
.an-letto-testa { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 14px; background: var(--verde-50); color: var(--verde-700); font-size: .84rem; }
.an-letto-testa b { font-size: .95rem; }
.an-numeri { display: inline-flex; gap: 6px; margin-left: auto; }
.an-numeri span { padding: 2px 10px; border-radius: var(--r-pill); background: var(--superficie); font-size: .76rem; font-weight: 600; }
.an-numeri .e-err { color: var(--no); }

/* la barra delle righe scelte */
.an-scelte { display: none; align-items: center; gap: 12px; padding: 10px 14px; margin-bottom: 10px; border-radius: var(--r-md); background: var(--primario); color: #fff; font-size: .86rem; }
.an-scelte.e-su { display: flex; }
.an-scelte button { border: 0; border-radius: var(--r-pill); height: 32px; padding: 0 14px; font: inherit; font-size: var(--fs-sm); font-weight: 600; cursor: pointer; }
.an-scelte .e-via { background: var(--no); color: #fff; margin-left: auto; }
.an-scelte .e-togli { background: rgba(255,255,255,.15); color: #fff; }

/* la tabella */
.an-tab { width: 100%; border-collapse: separate; border-spacing: 0; }
.an-tab th { font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--testo-2); padding: 11px 10px; border-bottom: 1px solid var(--bordo); background: var(--velo); white-space: nowrap; text-align: left; }
.an-tab th.destra, .an-tab td.destra { text-align: right; }
.an-tab th .bi-chevron-expand { font-size: .62rem; opacity: .6; }
.an-tab td { padding: 12px 10px; border-bottom: 1px solid var(--bordo); vertical-align: middle; font-size: var(--fs-base); color: var(--primario); }
.an-tab tr.an-riga:hover td { background: var(--velo); }
.an-tab tr.an-riga.e-scelta td { background: var(--blu-50); }
.an-tab tr.an-riga.e-spenta td { color: var(--testo-2); }
.an-tab td:first-child, .an-tab th:first-child { padding-left: 16px; width: 40px; }
.an-tab input[type=checkbox] { width: 17px; height: 17px; accent-color: var(--primario); }
.an-cod { font-weight: 700; color: var(--primario); text-decoration: none; border-bottom: 1px solid transparent; }
a.an-cod:hover { border-bottom-color: var(--primario); }
.an-des { display: block; font-size: var(--fs-sm); color: var(--testo-2); margin-top: 1px; }
.an-pic { display: block; font-size: var(--fs-xs); color: var(--testo-2); margin-top: 2px; }
.an-pic b { color: var(--testo-2); font-weight: 600; }
.an-um { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 22px; padding: 0 7px; border: 1px solid var(--bordo-forte); border-radius: var(--r-sm); font-size: var(--fs-xs); font-weight: 700; color: var(--testo-2); background: var(--superficie); }
.an-freccia { color: var(--testo-2); margin: 0 4px; font-size: var(--fs-xs); }
.an-pill { display: inline-flex; align-items: center; gap: 5px; font-size: var(--fs-xs); font-weight: 700; padding: 3px 9px; border-radius: var(--r-pill); white-space: nowrap; }
/* piene, come tutte le pillole di stato (docs/STILE.md) */
.an-pill.e-giallo { background: var(--ambra-500); color: var(--ambra-testo); }
.an-pill.e-rosso { background: var(--rosso-700); color: #fff; }
.an-pill.e-verde { background: var(--verde-600); color: #fff; }
.an-pill.e-grigio { background: var(--grigio-600); color: #fff; }
.an-pill.e-blu { background: var(--blu-500); color: #fff; }
.an-cat { cursor: pointer; border: 0; font: inherit; }
.an-cat:hover { filter: brightness(.96); box-shadow: 0 0 0 2px rgba(var(--primario-rgb),.12); }
/* Giacenza: allineata a sinistra sotto la sua intestazione, numero e poi
   unita' e scorta. */
.an-giac { display: flex; gap: 6px; align-items: baseline; }
.an-giac b { font-size: var(--fs-base); font-variant-numeric: tabular-nums; }
.an-giac small { color: var(--testo-2); white-space: nowrap; }
/* La giacenza: verde se c'e', rossa se sotto zero, neutra a zero */
.an-giac.e-pos b, .an-giac.e-pos .an-giac-um { color: var(--ok); }
.an-giac.e-neg b, .an-giac.e-neg .an-giac-um { color: var(--no); }
.an-stella { border: 0; background: none; font-size: 1.1rem; cursor: pointer; color: var(--testo-debole); padding: 2px 6px; }
.an-stella.on { color: var(--ambra-500); }
.an-stella:hover { transform: scale(1.12); }
.an-prezzo b { font-size: var(--fs-base); }
.an-azioni { display: inline-flex; gap: 6px; justify-content: flex-end; }
.an-ico { width: 32px; height: 32px; border-radius: var(--r-sm); border: 1px solid var(--bordo); background: var(--superficie); color: var(--testo-2); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; text-decoration: none; font-size: var(--fs-base); position: relative; }
.an-ico:hover { background: var(--velo); color: var(--primario); border-color: var(--bordo-forte); }
.an-ico.e-via:hover { background: var(--rosso-100); border-color: var(--rosso-200); color: var(--no); }
.an-ico.e-aperto { background: var(--primario); border-color: var(--primario); color: #fff; }
.an-ico .an-conta { position: absolute; top: -6px; right: -6px; min-width: 17px; height: 17px; border-radius: var(--r-sm); background: var(--blu-500); color: #fff; font-size: .62rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; padding: 0 4px; }

/* la riga che si apre sotto */
.an-tab .an-sotto-riga td { padding: 0; background: var(--sfondo); border-bottom: 1px solid var(--bordo); }
.an-dentro { padding: 14px 18px 16px 56px; }
.an-dentro-testa { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 10px; font-size: .84rem; color: var(--testo-2); }
.an-dentro-testa b { color: var(--primario); }
.an-dentro-bt { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.an-mini-bt { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border-radius: var(--r-pill); border: 1px solid var(--bordo-forte); background: var(--superficie); font-size: .76rem; font-weight: 600; color: var(--primario); text-decoration: none; cursor: pointer; }
.an-mini-bt:hover { background: var(--hb-lavoro-ico); }
.an-mini-tab { width: 100%; border: 1px solid var(--bordo); border-radius: var(--r-md); border-collapse: separate; border-spacing: 0; background: var(--superficie); overflow: hidden; }
.an-mini-tab th { font-size: .64rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--testo-2); padding: 8px 10px; background: var(--sfondo); border-bottom: 1px solid var(--bordo); text-align: left; }
.an-mini-tab td { font-size: var(--fs-sm); padding: 8px 10px; border-bottom: 1px solid var(--bordo); }
.an-mini-tab tr:last-child td { border-bottom: 0; }
.an-mini-tab .destra { text-align: right; }
.an-dati { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 16px; }
.an-dati div span { display: block; font-size: .66rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--testo-2); }
.an-dati div b { font-size: .86rem; color: var(--primario); font-weight: 600; }
.an-dati div.c2 { grid-column: span 2; }
.an-strisce { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.an-strisce span { font-size: .76rem; padding: 4px 10px; border-radius: var(--r-sm); background: var(--superficie); border: 1px solid var(--bordo); color: var(--testo-2); }
.an-strisce span b { color: var(--primario); }
.an-simula { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 10px; padding: 10px 12px; border-radius: var(--r-md); background: var(--superficie); border: 1px solid var(--bordo); font-size: var(--fs-sm); }
.an-simula input { width: 90px; height: 32px; border: 1px solid var(--bordo); border-radius: var(--r-sm); padding: 0 8px; text-align: right; }
.an-simula .an-esito b { color: var(--ok); }

/* il menu della categoria */
.an-menu { position: absolute; z-index: 50; min-width: 220px; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--r-md); box-shadow: var(--ombra-4); padding: 6px; display: none; }
.an-menu.e-su { display: block; }
.an-menu button { display: flex; align-items: center; gap: 8px; width: 100%; border: 0; background: none; text-align: left; padding: 8px 10px; border-radius: var(--r-sm); font-size: .84rem; color: var(--primario); cursor: pointer; }
.an-menu button:hover { background: var(--velo); }
.an-menu hr { margin: 4px 0; }
.an-menu .an-menu-tit { font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--testo-2); padding: 6px 10px 4px; }

/* il piede: pagine */
.an-piede { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; padding: 12px 16px; font-size: var(--fs-sm); color: var(--testo-2); }
.an-pagine { display: inline-flex; gap: 4px; }
.an-pagine a { min-width: 32px; height: 32px; border-radius: var(--r-sm); display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--bordo); color: var(--testo-2); text-decoration: none; font-size: var(--fs-sm); background: var(--superficie); }
.an-pagine a.on { background: var(--primario); border-color: var(--primario); color: #fff; }
.an-pagine span { padding: 0 4px; align-self: center; }

@media (max-width: 991.98px) {
    .an-griglia { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .an-campo.c3, .an-campo.c4 { grid-column: span 2; }
    .an-dati { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .an-tab .an-solo-pc { display: none; }
}
@media (max-width: 767.98px) {
    .an-griglia { grid-template-columns: 1fr; }
    .an-campo.c2, .an-campo.c3, .an-campo.c4 { grid-column: auto; }
    .an-tab thead { display: none; }
    .an-tab, .an-tab tbody, .an-tab tr, .an-tab td { display: block; width: 100%; }
    .an-tab tr.an-riga { position: relative; border: 1px solid var(--bordo); border-radius: var(--r-md); margin: 0 12px 10px; width: auto; background: var(--superficie); padding: 10px 12px 10px 40px; }
    .an-tab tr.an-riga td { border: 0; padding: 3px 0; }
    .an-tab tr.an-riga td.an-td-sel { position: absolute; left: 12px; top: 12px; width: auto; padding: 0; }
    .an-tab tr.an-riga td[data-eti]::before { content: attr(data-eti) ' '; font-size: .66rem; font-weight: 700; text-transform: uppercase; color: var(--testo-2); margin-right: 6px; }
    .an-tab tr.an-riga td.destra { text-align: left; }
    .an-azioni { justify-content: flex-start; margin-top: 6px; }
    .an-sotto-riga { margin: -6px 12px 10px; }
    .an-dentro { padding: 12px; }
    .an-drop { flex-direction: column; text-align: center; }
}
[data-bs-theme="dark"] .an-tab td { color: var(--testo); border-color: var(--bordo); }
[data-bs-theme="dark"] .an-tab .an-sotto-riga td { background: var(--superficie); }
[data-bs-theme="dark"] .an-mini-tab, [data-bs-theme="dark"] .an-ico, [data-bs-theme="dark"] .an-um, [data-bs-theme="dark"] .an-campo input, [data-bs-theme="dark"] .an-campo textarea { background: var(--superficie); border-color: var(--bordo-forte); color: var(--testo); }
.an-pre.an-suf span:last-child { left: auto; right: 12px; }
.an-pre.an-suf input { padding-right: 78px; }
/* dentro .an-campo le regole dei campi hanno la precedenza: qui si ridice
   lo spazio per € e per l'unita', se no il simbolo copre la prima cifra */
.an-campo .an-pre input[type=number] { padding-left: 26px; }
.an-campo .an-pre.an-suf input[type=number] { padding-right: 78px; }
.an-tab .an-mini-tab th, .an-tab .an-mini-tab td { width: auto; padding: 8px 12px; font-size: var(--fs-sm); white-space: nowrap; vertical-align: middle; }
.an-tab .an-mini-tab th { font-size: .64rem; }
.an-tab .an-mini-tab tr:last-child td { border-bottom: 0; }

/* ===== finestre davanti alla pagina ===== */
.an-velo { position: fixed; inset: 0; z-index: 1085; display: none; align-items: flex-start; justify-content: center; padding: 4vh 16px; background: rgba(16,24,40,.45); overflow-y: auto; }
.an-velo.e-su { display: flex; animation: anVelo .15s ease-out; }
@keyframes anVelo { from { opacity: 0; } to { opacity: 1; } }
.an-velo > .an-crea { display: block; width: min(980px, 100%); margin: 0 auto; box-shadow: var(--ombra-4); border: 0; border-radius: 18px; animation: anScendi .18s ease-out; }
.an-velo > .an-crea.an-crea-piccola { width: min(560px, 100%); }
.an-velo > .an-crea.an-crea-import { width: min(900px, 100%); background: var(--superficie); }
.an-velo .an-crea-testa { position: sticky; top: 0; background: var(--superficie); z-index: 2; border-radius: 18px 18px 0 0; }
.an-velo .an-crea-piede { position: sticky; bottom: 0; z-index: 2; border-radius: 0 0 18px 18px; }
body.an-velo-aperto { overflow: hidden; }
.an-opz input[type=radio] { width: 18px; height: 18px; accent-color: var(--primario); margin-top: 2px; }
@media (max-width: 767.98px) {
    .an-velo { padding: 0; align-items: stretch; }
    .an-velo > .an-crea, .an-velo > .an-crea.an-crea-piccola, .an-velo > .an-crea.an-crea-import { width: 100%; min-height: 100%; border-radius: 0; }
    .an-velo .an-crea-testa, .an-velo .an-crea-piede { border-radius: 0; }
    .an-crea-piede { flex-direction: column; align-items: stretch; }
    .an-crea-piede .an-bt { width: 100%; } .an-crea-piede .an-bt > * { flex: 1 1 0; justify-content: center; }
}

/* ===== le icone delle righe: come le commesse ===== */
.an-azioni { gap: 4px; }
.el-ico-altro { background: var(--superficie-2); color: var(--testo-2); position: relative; }
.el-ico-altro:hover { background: var(--velo); border-color: var(--bordo-forte); color: var(--primario); }
.el-ico-mod { background: var(--ambra-50); color: var(--ambra-800); }
.el-ico-mod:hover { background: var(--ambra-100); border-color: var(--ambra-200); color: var(--ambra-800); }
.el-ico.e-aperto { background: var(--blu-500); border-color: var(--blu-500); color: #fff; }
.el-ico .an-conta { position: absolute; top: -6px; right: -6px; min-width: 17px; height: 17px; border-radius: var(--r-sm); background: var(--blu-500); color: #fff; font-size: .62rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; padding: 0 4px; }
.el-ico.e-aperto .an-conta { background: var(--superficie); color: var(--blu-500); }
[data-bs-theme="dark"] .el-ico-altro { background: var(--superficie); color: var(--testo); }
[data-bs-theme="dark"] .el-ico-mod { background: rgba(var(--attenzione-rgb),.3); color: var(--ambra-300); }

/* ===== telefono: le righe che si aprono sotto ===== */
@media (max-width: 767.98px) {
    .an-tab tr.an-sotto-riga { display: block; margin: -4px 12px 12px; border: 1px solid var(--bordo); border-top: 0; border-radius: 0 0 var(--r-md) var(--r-md); overflow: hidden; }
    .an-tab tr.an-sotto-riga > td { display: block; width: 100%; padding: 0; }
    .an-dentro { padding: 12px; overflow-x: auto; }
    .an-dentro-testa { flex-direction: column; align-items: flex-start; }
    .an-tab .an-mini-tab { display: table; width: 100%; min-width: 460px; }
    .an-tab .an-mini-tab thead { display: table-header-group; }
    .an-tab .an-mini-tab tbody { display: table-row-group; }
    .an-tab .an-mini-tab tr { display: table-row; position: static; margin: 0; padding: 0; border: 0; width: auto; }
    .an-tab .an-mini-tab td, .an-tab .an-mini-tab th { display: table-cell; width: auto; position: static; }
    .an-tab .an-mini-tab td::before { content: none; }
    .an-dati { grid-template-columns: 1fr 1fr; }
    .an-simula { font-size: var(--fs-sm); }
    .an-tab tr.an-riga.e-ha-sotto { border-radius: var(--r-md) var(--r-md) 0 0; margin-bottom: 0; }
}

/* ===== telefono, seconda passata: tabelline a schedine, finestre piccole dal basso ===== */
@media (max-width: 767.98px) {
    .an-tab tr.an-sotto-riga { margin: -4px 0 12px; }
    .an-dentro { overflow: visible; }
    .an-tab .an-mini-tab { display: block; min-width: 0; border: 0; background: none; }
    .an-tab .an-mini-tab thead { display: none; }
    .an-tab .an-mini-tab tbody { display: flex; flex-direction: column; gap: 8px; }
    .an-tab .an-mini-tab tr { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 12px; padding: 10px 12px; background: var(--superficie); border: 1px solid var(--bordo); border-radius: var(--r-md); }
    .an-tab .an-mini-tab td { display: block; padding: 0; border: 0; white-space: normal; text-align: left; font-size: .84rem; min-width: 0; overflow-wrap: anywhere; }
    .an-tab .an-mini-tab td[data-l]::before { content: attr(data-l); display: block; font-size: .62rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--testo-2); margin-bottom: 1px; }
    .an-tab .an-mini-tab td:empty, .an-tab .an-mini-tab td[data-l=""] { display: none; }
    .an-tab .an-mini-tab td:not([data-l]) { grid-column: 1 / -1; }
    .an-tab .an-mini-tab td .an-azioni { justify-content: flex-start; }
    .an-tab .an-mini-tab tr input { width: 100%; }
    .an-dentro-bt { display: flex; flex-wrap: wrap; gap: 6px; }
    .an-simula input { width: 70px; }
    /* le finestre piccole salgono dal basso */
    .an-velo:has(> .an-crea-piccola) { align-items: flex-end; }
    .an-velo > .an-crea.an-crea-piccola { min-height: 0; max-height: 92vh; overflow-y: auto; border-radius: 18px 18px 0 0; animation: anSale .2s ease-out; }
    .an-velo > .an-crea.an-crea-piccola .an-crea-testa { border-radius: 18px 18px 0 0; }
    .an-crea-piccola .an-griglia { grid-template-columns: 1fr 1fr; }
    .an-crea-piccola .an-campo.c2 { grid-column: 1 / -1; }
    .an-velo > .an-crea:not(.an-crea-piccola) { display: flex; flex-direction: column; }
    .an-velo > .an-crea:not(.an-crea-piccola) .an-crea-corpo { flex: 1 1 auto; }
}
@keyframes anSale { from { transform: translateY(40px); opacity: .4; } to { transform: none; opacity: 1; } }
[data-bs-theme="dark"] .an-tab .an-mini-tab tr { background: var(--superficie); }
@media (max-width: 767.98px) { .an-tab .an-mini-tab td, .an-tab .an-mini-tab tr:nth-child(even) td, .an-tab .an-mini-tab tr td:hover { background: transparent; } .an-tab tr.an-sotto-riga { margin: -4px 12px 12px; } }
@media (max-width: 767.98px) { .an-tab tr.an-sotto-riga { width: auto; max-width: none; box-sizing: border-box; } .an-tab tr.an-sotto-riga > td { box-sizing: border-box; width: auto; } .an-dentro { box-sizing: border-box; } }

/* ===== nell'applicazione ===== */
/* il campo che cerca (fornitori, articoli, unita') dentro le finestre */
.an-campo .lazy-select-wrap { width: 100%; }
.an-campo .lazy-select-wrap input.form-control { height: 40px; border-radius: var(--r-md); border-color: var(--bordo); font-size: var(--fs-base); color: var(--primario); padding-right: 30px; }
.an-campo .lazy-select-wrap input.form-control:focus { border-color: var(--primario); box-shadow: 0 0 0 3px rgba(var(--primario-rgb),.09); }
.an-velo .lazy-select-dropdown { z-index: 5; }
.an-campo select:not([data-tendina]) { height: 40px; border-radius: var(--r-md); border: 1px solid var(--bordo); padding: 0 10px; font-size: var(--fs-base); color: var(--primario); background: var(--superficie); }
/* le intestazioni che ordinano */
.an-tab th a.el-ord { color: inherit; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; }
.an-tab th a.el-ord:hover, .an-tab th a.el-ord.e-ord { color: var(--primario); }
.an-tab th a.el-ord .bi { font-size: .6rem; }
.an-tab th.destra a.el-ord { justify-content: flex-end; }
.an-sotto a, .an-sotto a:hover { color: inherit; text-decoration: none; }
.an-sotto a:hover { text-decoration: underline; }
.an-vuoto { text-align: center; padding: 36px 16px !important; color: var(--testo-2); }
.an-vuoto i { font-size: 1.6rem; display: block; margin-bottom: 6px; }
.an-carica { padding: 14px; color: var(--testo-2); font-size: .84rem; }
.an-drop.e-sopra { border-color: var(--ok); background: var(--verde-50); }
.an-modello { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 12px; padding: 10px 14px; border-radius: var(--r-md); background: var(--hb-lavoro-ico); font-size: var(--fs-sm); color: var(--blu-700); }
.an-modello a { margin-left: auto; }
.an-letto-err { padding: 10px 14px; font-size: var(--fs-sm); color: var(--no); line-height: 1.5; }
.an-letto-tab { max-height: 340px; overflow: auto; }
.an-letto-tab .an-mini-tab { border: 0; border-top: 1px solid var(--bordo); border-radius: 0; }
.an-letto-tab .an-mini-tab td, .an-letto-tab .an-mini-tab th { white-space: nowrap; }
.an-fogli button { border: 1px solid var(--bordo-forte); background: var(--superficie); border-radius: var(--r-pill); height: 30px; padding: 0 12px; font-size: var(--fs-sm); cursor: pointer; }
.an-fogli button.on { background: var(--primario); border-color: var(--primario); color: #fff; }
.an-lavora { display: inline-block; width: 14px; height: 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: anGira .7s linear infinite; vertical-align: -2px; }
@keyframes anGira { to { transform: rotate(360deg); } }
.an-stato-futuro { background: var(--blu-100); color: var(--blu-500); }
.an-netto-per { display: block; font-size: var(--fs-xs); color: var(--testo-2); white-space: nowrap; }
.an-mini-tab td.an-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
@media (max-width: 767.98px) { .an-modello a { margin-left: 0; } }
[data-bs-theme="dark"] .an-modello { background: rgba(var(--primario-rgb),.35); color: var(--blu-200); }
[data-bs-theme="dark"] .an-campo .lazy-select-wrap input.form-control, [data-bs-theme="dark"] .an-campo select:not([data-tendina]) { background: var(--superficie); border-color: var(--bordo-forte); color: var(--testo); }
[data-bs-theme="dark"] .an-tab tr.an-riga:hover td { background: var(--superficie); }
[data-bs-theme="dark"] .an-tab th { background: var(--superficie); border-color: var(--bordo); }
[data-bs-theme="dark"] .an-mini-tab th { background: var(--superficie); }
[data-bs-theme="dark"] .an-mini-bt, [data-bs-theme="dark"] .an-strisce span, [data-bs-theme="dark"] .an-simula, [data-bs-theme="dark"] .an-fogli button { border-color: var(--bordo-forte); color: var(--testo); }
[data-bs-theme="dark"] .an-crea-piede { background: var(--superficie); border-color: var(--bordo); }

/* la colonna delle spunte: anche vuota (chi non e' amministratore) tiene il posto */
.an-tab th.an-td-sel, .an-tab td.an-td-sel { width: 40px; padding-left: 16px; padding-right: 4px; }

/* le tabelline: i numeri non si attaccano alla colonna dopo */
.an-mini-tab td.an-num, .an-mini-tab th.destra { padding-right: 22px; }
.an-mini-tab td:first-child, .an-mini-tab th:first-child { padding-left: 14px; }
.an-pic b { white-space: nowrap; }
/* telefono: i pulsanti in testa due per riga, quello principale largo */
@media (max-width: 767.98px) {
    .hb .el-testata .el-bt-gruppo { width: 100%; }
    .hb .el-testata .el-bt-gruppo > * { flex: 1 1 calc(50% - 4px); min-width: 0; justify-content: center; white-space: nowrap; }
    .hb .el-testata .el-bt-gruppo > .el-bt-testa { flex-basis: 100%; }
}
.an-maiuscolo::placeholder { text-transform: none; }

/* ===== utenti: i permessi nella finestra ===== */
.an-perm { display: flex; flex-direction: column; gap: 10px; }
.an-perm-gruppo { border: 1px solid var(--bordo); border-radius: var(--r-md); padding: 10px 12px; }
.an-perm-testa { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 6px; }
.an-perm-testa b { font-size: .86rem; color: var(--primario); }
.an-perm-testa button { border: 0; background: none; color: var(--blu-500); font-size: .76rem; font-weight: 600; cursor: pointer; }
.an-perm-voci { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 14px; }
.an-perm-voci label { display: flex; gap: 8px; align-items: flex-start; font-size: .84rem; color: var(--primario); cursor: pointer; }
.an-perm-voci label input { width: 17px; height: 17px; margin-top: 2px; accent-color: var(--ok); flex: 0 0 auto; }
.an-perm-voci label small { display: block; color: var(--testo-2); font-size: var(--fs-xs); }
.an-perm.e-spento { opacity: .45; pointer-events: none; }
.an-perm-azioni { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.an-ruolo { display: inline-flex; align-items: center; gap: 5px; }
@media (max-width: 767.98px) { .an-perm-voci { grid-template-columns: 1fr; } }
[data-bs-theme="dark"] .an-perm-voci label, [data-bs-theme="dark"] .an-perm-testa b { color: var(--testo); }

/* ===== fornitori: gli sconti concordati nella finestra ===== */
.an-sconti { width: 100%; border: 1px solid var(--bordo); border-radius: var(--r-md); border-collapse: separate; border-spacing: 0; overflow: hidden; }
.an-sconti th { font-size: .64rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--testo-2); padding: 8px 10px; background: var(--velo); text-align: left; }
.an-sconti td { padding: 6px 8px; border-top: 1px solid var(--bordo); vertical-align: middle; }
.an-sconti select, .an-sconti input { width: 100%; height: 34px; border: 1px solid var(--bordo); border-radius: var(--r-sm); padding: 0 8px; font-size: .84rem; color: var(--primario); background: var(--superficie); }
.an-sconti .an-suf input { padding-right: 26px; } .an-sconti .an-suf span { right: 8px; }
.an-sconti .e-via { width: 30px; height: 30px; }
@media (max-width: 767.98px) {
    .an-sconti, .an-sconti tbody { display: block; } .an-sconti thead { display: none; }
    .an-sconti tr { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 8px; border-top: 1px solid var(--bordo); }
    .an-sconti td { display: block; padding: 0; border: 0; } .an-sconti td.c2 { grid-column: 1 / -1; }
}
[data-bs-theme="dark"] .an-sconti, [data-bs-theme="dark"] .an-sconti select, [data-bs-theme="dark"] .an-sconti input { background: var(--superficie); border-color: var(--bordo-forte); color: var(--testo); }
[data-bs-theme="dark"] .an-sconti th { background: var(--superficie); }

/* ===== tabelle generiche: la finestra prende meno spazio quando i campi sono pochi ===== */
.an-velo > .an-crea.an-crea-media { width: min(760px, 100%); }
.an-tab td .an-pill.e-spento { background: var(--superficie-2); color: var(--testo-2); }
.an-tab a.an-mail { color: var(--primario); text-decoration: none; border-bottom: 1px dotted var(--bordo-forte); }
.an-tab a.an-mail:hover { border-bottom-style: solid; }

/* ===== causali e tipi documento ===== */
.an-eff-pill { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: var(--r-sm); font-weight: 800; font-size: var(--fs-sm); line-height: 1; }
.an-eff-pill.e-piu { background: var(--verde-50); color: var(--ok); }
.an-eff-pill.e-meno { background: var(--rosso-100); color: var(--no); }
.an-eff-pill.e-zero { background: var(--superficie-2); color: var(--testo-debole); }
.an-eff-lista { display: inline-flex; gap: 10px; flex-wrap: wrap; }
.an-eff-lista > span { display: inline-flex; align-items: center; gap: 4px; }
.an-eff-lista small { font-size: .68rem; color: var(--testo-2); }
.an-effetti { display: flex; flex-direction: column; gap: 8px; }
.an-eff-riga { display: flex; align-items: center; gap: 14px; padding: 8px 10px; border: 1px solid var(--bordo); border-radius: var(--r-md); }
.an-eff-riga > div:last-child { min-width: 0; }
.an-eff-riga b { display: block; font-size: .86rem; color: var(--primario); }
.an-eff-dice { display: block; font-size: .76rem; color: var(--testo-2); }
.an-eff-dice.e-piu { color: var(--ok); } .an-eff-dice.e-meno { color: var(--no); }
.an-eff-scelta { display: inline-flex; border: 1px solid var(--bordo-forte); border-radius: var(--r-md); overflow: hidden; flex: 0 0 auto; }
.an-eff-scelta label { margin: 0; cursor: pointer; }
.an-eff-scelta input { position: absolute; opacity: 0; width: 0; height: 0; }
.an-eff-scelta span { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 36px; font-weight: 800; font-size: var(--fs-md); color: var(--testo-debole); background: var(--superficie); border-right: 1px solid var(--bordo); }
.an-eff-scelta label:last-child span { border-right: 0; }
.an-eff-scelta input:focus-visible + span { outline: 2px solid var(--primario); outline-offset: -2px; }
.an-eff-scelta .e-meno input:checked + span { background: var(--no); color: #fff; }
.an-eff-scelta .e-zero input:checked + span { background: var(--grigio-600); color: #fff; }
.an-eff-scelta .e-piu input:checked + span { background: var(--ok); color: #fff; }
.an-spunte { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 14px; }
.an-spunte-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.an-spunta { display: flex; gap: 8px; align-items: flex-start; font-size: .84rem; color: var(--primario); cursor: pointer; margin: 0; }
.an-spunta input { width: 17px; height: 17px; margin-top: 2px; accent-color: var(--ok); flex: 0 0 auto; }
.an-spunta small { display: block; color: var(--testo-2); font-size: var(--fs-xs); }
.an-pallino { display: inline-block; width: 11px; height: 11px; border-radius: 50%; margin-right: 6px; vertical-align: -1px; border: 1px solid rgba(0,0,0,.08); }
.an-colore { display: flex; align-items: center; gap: 10px; }
.an-colore input[type=color] { width: 54px; height: 40px; padding: 3px; border: 1px solid var(--bordo); border-radius: var(--r-md); background: var(--superficie); cursor: pointer; }
@media (max-width: 767.98px) { .an-spunte, .an-spunte-3 { grid-template-columns: 1fr; } .an-eff-riga { gap: 10px; } }
 [data-bs-theme="dark"] .an-eff-riga b, [data-bs-theme="dark"] .an-spunta { color: var(--testo); }
[data-bs-theme="dark"] .an-eff-scelta span { border-color: var(--bordo-forte); } [data-bs-theme="dark"] .an-eff-pill.e-zero { background: var(--superficie); }
.an-dati b .an-pill { align-self: flex-start; display: inline-flex; }
.an-dati b .an-pallino { display: inline-block; }

/* la barra delle scelte: il conteggio a sinistra; il titolo dentro al pannello sotto la riga */
.an-scelte-n { font-weight: 600; color: inherit; }
.an-dentro-tit { font-size: var(--fs-sm); font-weight: 700; color: var(--primario); margin-bottom: 8px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
