/* _content/Farmaimport.Web/Components/Layout/MainLayout.razor.rz.scp.css */
/* ── Shell responsive mobile-first ── */
.app-shell[b-q4o7kno21d] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh; /* mobile: tiene conto delle barre browser */
    overflow: hidden;
}

/* Top bar */
.app-topbar[b-q4o7kno21d] {
    display: flex;
    align-items: center;
    gap: .5rem;
    height: 52px;
    flex-shrink: 0;
    padding: 0 .75rem;
    background: #0d3b66;
    color: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,.15);
    z-index: 30;
}

.app-brand[b-q4o7kno21d] { font-weight: 600; font-size: 1.05rem; letter-spacing: .01em; }
.app-topbar-right[b-q4o7kno21d] { margin-left: auto; display: flex; align-items: center; gap: .6rem; }
.app-user[b-q4o7kno21d] { font-size: .85rem; opacity: .9; }

.app-burger[b-q4o7kno21d] {
    display: none;
    background: transparent;
    border: 0;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1;
    padding: .1rem .35rem;
    cursor: pointer;
}

.app-body[b-q4o7kno21d] { flex: 1; display: flex; min-height: 0; position: relative; }

/* Sidebar */
.app-sidebar[b-q4o7kno21d] {
    width: 250px;
    flex-shrink: 0;
    background: #12263a;
    overflow-y: auto;
    z-index: 25;
}

.app-content[b-q4o7kno21d] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #f6f7f9;
}

.app-nav-toggle[b-q4o7kno21d] { position: absolute; opacity: 0; pointer-events: none; }

.app-backdrop[b-q4o7kno21d] { display: none; }

/* ── MOBILE: sidebar off-canvas via checkbox CSS ── */
@media (max-width: 820px) {
    .app-burger[b-q4o7kno21d] { display: inline-flex; }

    .app-sidebar[b-q4o7kno21d] {
        position: fixed;
        top: 52px;
        left: 0;
        bottom: 0;
        transform: translateX(-100%);
        /* FIX A10: la sola translateX toglie il menu dagli occhi e non dal resto.
           I sette collegamenti restavano nell'ordine di tabulazione e nell'albero di
           accessibilità: chi naviga da tastiera premeva Tab sette volte senza vedere
           accadere niente (il focus era a x=-250, fuori schermo, con il suo anello
           invisibile), e uno screen reader annunciava un menu che sullo schermo non
           c'era. Peggio: dare fuoco a un figlio di un contenitore fixed con
           overflow-y:auto spinge il browser a portarlo in vista, cioè a trascinare di
           lato un pannello che dovrebbe stare fermo.
           visibility:hidden lo toglie da entrambi. Messo nella transizione, non rovina
           l'animazione: aprendo diventa visible subito (la scivolata si vede), chiudendo
           resta visible per tutta la durata e sparisce alla fine (si vede anche quella). */
        visibility: hidden;
        transition: transform .22s ease, visibility .22s;
        box-shadow: 4px 0 18px rgba(0,0,0,.3);
    }
    /* checkbox spuntata → sidebar aperta + backdrop visibile */
    .app-nav-toggle:checked ~ .app-shell .app-sidebar[b-q4o7kno21d] {
        transform: translateX(0);
        visibility: visible;
    }

    /* FIX A10: la casella che comanda il menu è opacity:0, quindi prende il fuoco senza
       mostrarlo da nessuna parte — ed è l'unico modo di aprire il menu da tastiera, perché
       una <label> non è raggiungibile con Tab. Qui il fuoco della casella si vede sul
       pulsante che le corrisponde. :focus-visible e non :focus, per non disegnare l'anello
       a chi ha appena toccato lo schermo. */
    .app-nav-toggle:focus-visible ~ .app-shell .app-burger[b-q4o7kno21d] {
        outline: 2px solid #fff;
        outline-offset: 2px;
        border-radius: 4px;
    }
    .app-nav-toggle:checked ~ .app-shell .app-backdrop[b-q4o7kno21d] {
        display: block;
        position: fixed; inset: 52px 0 0 0;
        background: rgba(0,0,0,.4); z-index: 20;
    }
}

/* Error UI */
#blazor-error-ui[b-q4o7kno21d] {
    background: #ffe9a8;
    bottom: 0;
    box-shadow: 0 -1px 3px rgba(0,0,0,.2);
    display: none;
    left: 0;
    padding: .75rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}
#blazor-error-ui .dismiss[b-q4o7kno21d] { cursor: pointer; position: absolute; right: .75rem; top: .5rem; }
/* _content/Farmaimport.Web/Components/Layout/NavMenu.razor.rz.scp.css */
.nav-scroll[b-wq79ghf1xb] { padding: .5rem 0; }

.nav-section[b-wq79ghf1xb] {
    color: #6b8299;
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    padding: .9rem 1rem .3rem;
}

[b-wq79ghf1xb] .nav-item {
    display: flex;
    align-items: center;
    gap: .7rem;
    padding: .6rem 1rem;
    color: #c7d3e0;
    text-decoration: none;
    font-size: .92rem;
    border-left: 3px solid transparent;
}

[b-wq79ghf1xb] .nav-item:hover { background: rgba(255,255,255,.06); color: #fff; }

[b-wq79ghf1xb] .nav-item.active {
    background: rgba(13,110,253,.18);
    color: #fff;
    border-left-color: #4593e0;
}

[b-wq79ghf1xb] .nav-item.disabled {
    color: #5f7488;
    cursor: default;
    pointer-events: none;
}

[b-wq79ghf1xb] .nav-item i { width: 1.2rem; text-align: center; font-size: 1.05rem; }

[b-wq79ghf1xb] .nav-item .soon {
    margin-left: auto;
    font-size: .6rem;
    text-transform: uppercase;
    background: #24384d;
    color: #8aa0b6;
    padding: .1rem .4rem;
    border-radius: 10px;
}
/* _content/Farmaimport.Web/Components/Shared/ModuloInPreparazione.razor.rz.scp.css */
.mip[b-8v13ukdbwx] { display: flex; align-items: center; justify-content: center; height: 100%; padding: 1.5rem; background: #f6f7f9; }
.mip-card[b-8v13ukdbwx] { max-width: 520px; background: #fff; border: 1px solid #e3e8ef; border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 4px 20px rgba(0,0,0,.05); }
.mip-icon[b-8v13ukdbwx] { font-size: 2.6rem; color: #0d6efd; margin-bottom: .5rem; }
.mip-title[b-8v13ukdbwx] { font-size: 1.4rem; margin: 0 0 .4rem; }
.mip-desc[b-8v13ukdbwx] { color: #6c757d; margin-bottom: 1rem; }
.mip-list[b-8v13ukdbwx] { text-align: left; display: inline-block; margin: 0 auto 1rem; padding: 0; list-style: none; font-size: .9rem; color: #495057; }
.mip-list li[b-8v13ukdbwx] { margin: .3rem 0; }
.mip-badge[b-8v13ukdbwx] { display: inline-block; font-size: .78rem; color: #8a6d3b; background: #fcf4e3; border: 1px solid #f5e2b8; border-radius: 20px; padding: .3rem .8rem; }
/* _content/Farmaimport.Web/Features/Anagrafica/AnagraficaFarmaciePage.razor.rz.scp.css */
.anf[b-j955pz3r7j] { background: #f6f7f9; }
.anf-toolbar[b-j955pz3r7j] { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.anf-search[b-j955pz3r7j] { max-width: 300px; }
.anf-body[b-j955pz3r7j] { flex: 1; overflow: auto; padding: .75rem; }
.anf-center[b-j955pz3r7j] { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; }

.anf-grid[b-j955pz3r7j] { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: .6rem; }
.anf-card[b-j955pz3r7j] { display: flex; align-items: center; gap: .7rem; background: #fff; border: 1px solid #e3e8ef; border-radius: .6rem; padding: .6rem .8rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.anf-avatar[b-j955pz3r7j] { width: 42px; height: 42px; flex-shrink: 0; border-radius: 50%; background: #0d3b66; color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: .9rem; }
.anf-name[b-j955pz3r7j] { font-weight: 600; line-height: 1.2; }
.anf-code[b-j955pz3r7j] { font-size: .75rem; color: #6c757d; }
/* _content/Farmaimport.Web/Features/Analisi/AnalisiPage.razor.rz.scp.css */
.anv[b-5addzfz70a] { background: #f6f7f9; }
.anv-toolbar[b-5addzfz70a] { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.anv-periodo[b-5addzfz70a] { max-width: 190px; }

.anv-tabs[b-5addzfz70a] { display: flex; gap: .3rem; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; overflow-x: auto; }
.anv-tab[b-5addzfz70a] { border: 1px solid #cdd6e0; background: #fff; border-radius: 18px; padding: .3rem .8rem; font-size: .84rem; white-space: nowrap; cursor: pointer; color: #495057; }
.anv-tab.on[b-5addzfz70a] { background: #0d3b66; color: #fff; border-color: #0d3b66; }

.anv-body[b-5addzfz70a] { flex: 1; overflow: auto; padding: .75rem; }
.anv-center[b-5addzfz70a] { display: flex; align-items: center; justify-content: center; height: 100%; flex-direction: column; }

.anv-kpis[b-5addzfz70a] { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .6rem; margin-bottom: .75rem; }
.anv-kpi[b-5addzfz70a] { background: #fff; border: 1px solid #e3e8ef; border-radius: .7rem; padding: .7rem .9rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.anv-kpi-lbl[b-5addzfz70a] { font-size: .72rem; text-transform: uppercase; letter-spacing: .03em; color: #898781; }
.anv-kpi-val[b-5addzfz70a] { font-size: 1.5rem; font-weight: 700; color: #0b0b0b; line-height: 1.15; }
.anv-kpi-sub[b-5addzfz70a] { font-size: .78rem; color: #52514e; }

.anv-chart-card[b-5addzfz70a] { background: #fff; border: 1px solid #e3e8ef; border-radius: .7rem; padding: .8rem 1rem 1rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.anv-chart-head[b-5addzfz70a] { display: flex; align-items: center; justify-content: space-between; margin-bottom: .5rem; }
.anv-table-wrap[b-5addzfz70a] { max-height: 460px; overflow: auto; }
/* _content/Farmaimport.Web/Features/GestioneOrdiniFsc/GestioneOrdiniFscPage.razor.rz.scp.css */
.gof[b-xf9c6nbgyf] { background: #f6f7f9; }
.gof-toolbar[b-xf9c6nbgyf] { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.gof-search[b-xf9c6nbgyf] { max-width: 320px; }

.gof-filters[b-xf9c6nbgyf] { display: flex; gap: .4rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; overflow-x: auto; }
.gof-chip[b-xf9c6nbgyf] { display: inline-flex; align-items: center; gap: .35rem; border: 1px solid #cdd6e0; background: #fff; border-radius: 18px; padding: .25rem .7rem; font-size: .82rem; white-space: nowrap; cursor: pointer; }
.gof-chip.on[b-xf9c6nbgyf] { background: #0d3b66; color: #fff; border-color: #0d3b66; }
.gof-chip .n[b-xf9c6nbgyf] { background: rgba(0,0,0,.08); border-radius: 10px; padding: 0 .4rem; font-size: .72rem; }
.gof-chip.on .n[b-xf9c6nbgyf] { background: rgba(255,255,255,.25); }
.gof-dot[b-xf9c6nbgyf] { width: .5rem; height: .5rem; padding: 0; border-radius: 50%; }

.gof-body[b-xf9c6nbgyf] { flex: 1; overflow: auto; background: #fff; }
.gof-center[b-xf9c6nbgyf] { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; padding: 2rem; }

.gof-table thead th[b-xf9c6nbgyf] { position: sticky; top: 0; background: #f2f4f7; white-space: nowrap; z-index: 1; }
.gof-table tbody tr[b-xf9c6nbgyf] { cursor: pointer; }
.gof-sel[b-xf9c6nbgyf] { background: #eaf2fb !important; }
.gof-detail-row td[b-xf9c6nbgyf] { background: #f8fafc; }
.gof-detail[b-xf9c6nbgyf] { padding: .25rem .5rem .5rem; }

.gof-cards[b-xf9c6nbgyf] { padding: .5rem; display: flex; flex-direction: column; gap: .5rem; }
.gof-card[b-xf9c6nbgyf] { border: 1px solid #dee2e6; border-radius: .6rem; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.gof-card.sel[b-xf9c6nbgyf] { border-color: #6ea8fe; }
.gof-card-head[b-xf9c6nbgyf] { display: flex; justify-content: space-between; gap: .5rem; padding: .6rem .7rem; cursor: pointer; }
.gof-sub[b-xf9c6nbgyf] { font-size: .72rem; color: #6c757d; }
.gof-card-detail[b-xf9c6nbgyf] { border-top: 1px dashed #e0e0e0; padding: .5rem .7rem .7rem; }
.gof-card-line[b-xf9c6nbgyf] { display: flex; justify-content: space-between; font-size: .82rem; padding: .1rem 0; }
/* _content/Farmaimport.Web/Features/Gruppi/GruppiPage.razor.rz.scp.css */
.grp[b-0qehdspku0] { background: #f6f7f9; }

.grp-toolbar[b-0qehdspku0] {
    display: flex; align-items: center; gap: .4rem; flex-wrap: wrap;
    padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6;
}

.grp-body[b-0qehdspku0] { flex: 1; display: grid; grid-template-columns: 340px 1fr; min-height: 0; }

.grp-list[b-0qehdspku0] {
    background: #fff; border-right: 1px solid #dee2e6;
    display: flex; flex-direction: column; min-height: 0;
}
.grp-items[b-0qehdspku0] { list-style: none; margin: 0; padding: 0 0 .5rem; overflow: auto; flex: 1; }

.grp-item[b-0qehdspku0] {
    width: 100%; text-align: left; border: 0; background: transparent;
    padding: .5rem .75rem; border-left: 3px solid transparent; cursor: pointer;
    display: flex; flex-direction: column; gap: .2rem;
}
.grp-item:hover[b-0qehdspku0] { background: #f1f4f8; }
.grp-item.on[b-0qehdspku0] { background: #e8f0fb; border-left-color: #2a78d6; }
.grp-item-name[b-0qehdspku0] { font-weight: 600; font-size: .9rem; color: #0b0b0b; }
.grp-item-meta[b-0qehdspku0] { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; }
.grp-count[b-0qehdspku0] { font-size: .74rem; color: #52514e; }

.grp-editor[b-0qehdspku0] { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.grp-editor-head[b-0qehdspku0] {
    display: flex; align-items: center; gap: .3rem;
    padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6;
}
.grp-editor-body[b-0qehdspku0] { flex: 1; overflow: auto; padding: .75rem; }

.grp-fields[b-0qehdspku0] {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: .75rem;
    background: #fff; border: 1px solid #e3e8ef; border-radius: .7rem;
    padding: .8rem; margin-bottom: .75rem;
}
.grp-field[b-0qehdspku0] { display: flex; flex-direction: column; gap: .25rem; margin: 0; }
.grp-field > span[b-0qehdspku0] { font-size: .74rem; text-transform: uppercase; letter-spacing: .03em; color: #898781; }

.grp-members[b-0qehdspku0] {
    background: #fff; border: 1px solid #e3e8ef; border-radius: .7rem; padding: .8rem;
}
.grp-members-head[b-0qehdspku0] { display: flex; align-items: center; margin-bottom: .5rem; flex-wrap: wrap; gap: .25rem; }

.grp-vendors[b-0qehdspku0] {
    list-style: none; margin: 0; padding: 0;
    max-height: 46vh; overflow: auto;
    border: 1px solid #eceff3; border-radius: .5rem;
}
.grp-vendor[b-0qehdspku0] {
    display: flex; align-items: flex-start; gap: .2rem; margin: 0;
    padding: .45rem .6rem; border-bottom: 1px solid #f1f3f6; cursor: pointer;
}
.grp-vendors li:last-child .grp-vendor[b-0qehdspku0] { border-bottom: 0; }
.grp-vendor:hover[b-0qehdspku0] { background: #f6f8fb; }
.grp-vendor.on[b-0qehdspku0] { background: #eef5ff; }
.grp-vendor-txt[b-0qehdspku0] { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.grp-vendor-name[b-0qehdspku0] { font-size: .88rem; color: #0b0b0b; }
.grp-vendor-sub[b-0qehdspku0] { font-size: .75rem; color: #52514e; }

.grp-center[b-0qehdspku0] { display: flex; flex: 1; align-items: center; justify-content: center; flex-direction: column; padding: 1.5rem 0; }

/* ───────── mobile: master-detail a schermate ───────── */
@media (max-width: 991.98px) {
    .grp-body[b-0qehdspku0] { grid-template-columns: 1fr; }
    .grp-list[b-0qehdspku0] { border-right: 0; }
    .grp-editor[b-0qehdspku0] { display: none; }
    .grp-body.grp-detail-open .grp-list[b-0qehdspku0] { display: none; }
    .grp-body.grp-detail-open .grp-editor[b-0qehdspku0] { display: flex; }
    .grp-vendors[b-0qehdspku0] { max-height: none; }
    .grp-editor-body[b-0qehdspku0] { padding: .5rem; }
}
/* _content/Farmaimport.Web/Features/Listino/ListinoPage.razor.rz.scp.css */
.lst[b-qgxfuup8h6] { background: #f6f7f9; }
.lst-toolbar[b-qgxfuup8h6] { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.lst-filters[b-qgxfuup8h6] { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.lst-search[b-qgxfuup8h6] { max-width: 280px; }
.lst-ditta[b-qgxfuup8h6] { max-width: 200px; }

.lst-body[b-qgxfuup8h6] { flex: 1; overflow: auto; background: #fff; }
.lst-center[b-qgxfuup8h6] { display: flex; align-items: center; justify-content: center; height: 100%; flex-direction: column; }

.lst-table thead th[b-qgxfuup8h6] { position: sticky; top: 0; background: #f2f4f7; white-space: nowrap; z-index: 1; }
.lst-price[b-qgxfuup8h6] { width: 6rem; display: inline-block; }
.lst-sconto[b-qgxfuup8h6] { font-size: .68rem; color: #006300; margin-left: .3rem; }
.lst-table .badge[b-qgxfuup8h6] { cursor: pointer; }

.lst-cards[b-qgxfuup8h6] { padding: .5rem; display: flex; flex-direction: column; gap: .5rem; }
.lst-card[b-qgxfuup8h6] { border: 1px solid #dee2e6; border-radius: .6rem; background: #fff; padding: .6rem .7rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.lst-card-head[b-qgxfuup8h6] { display: flex; justify-content: space-between; gap: .5rem; align-items: flex-start; }
.lst-sub[b-qgxfuup8h6] { font-size: .72rem; color: #6c757d; }
.lst-card-prices[b-qgxfuup8h6] { display: grid; grid-template-columns: 1fr 1fr; gap: .4rem .8rem; margin-top: .5rem; }
.lst-pp[b-qgxfuup8h6] { font-size: .85rem; }
.lst-pp span[b-qgxfuup8h6] { display: block; font-size: .65rem; text-transform: uppercase; color: #6c757d; }
.lst-pp-edit span[b-qgxfuup8h6] { display: block; font-size: .65rem; text-transform: uppercase; color: #6c757d; margin-bottom: .1rem; }

/* ══════════ FIX A3: bersaglio tattile del pulsante di stato ══════════
   Il pulsante che cicla Vendibile → Sospeso → Non vendibile era alto 20px: è un
   `badge` di Bootstrap riusato come comando, e i badge sono pensati per essere
   letti, non premuti. Su telefono 20px sono sotto ogni soglia raccomandata (24px
   nella WCAG 2.2, 44px nelle linee guida di Apple e Google) e il dito prende la
   riga sbagliata — che qui significa sospendere dal marketplace il prodotto
   accanto a quello che si voleva sospendere.
   L'area cliccabile cresce; la dimensione del testo resta quella del badge, così
   la tabella non si allarga. */
.lst-stato-btn[b-qgxfuup8h6] {
    min-height: 30px;
    padding-inline: .6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
/* Su schermi tattili si va oltre la soglia minima: qui non c'è la precisione del mouse.
   Il limite di larghezza NON è decorativo. `pointer: coarse` risponde vero anche su un tablet
   da 1024px, dove però è ancora in scena la TABELLA, non le schede: senza il limite la riga
   passava da 40 a ~43px mentre <Virtualize ItemSize="40"> continua a credere che siano 40, e
   l'errore si accumula riga dopo riga fino a rimettere in scena il difetto che FIX L7 aveva
   chiuso. Anche min-width allargava la colonna "Stato" della tabella senza motivo: sotto i
   992px la vista a schede non ha colonne da allargare, quindi la regola resta lì. */
@media (pointer: coarse) and (max-width: 991.98px) {
    .lst-stato-btn[b-qgxfuup8h6] { min-height: 34px; min-width: 5.5rem; }
}
/* _content/Farmaimport.Web/Features/PropostaOrdineFsc/PropostaOrdineFscPage.razor.rz.scp.css */
/* ══════════ Proposta Ordine FSC — responsive ══════════ */
.pofsc[b-sjd92n93bd] { background: #f6f7f9; min-height: 0; }

/* Toolbar */
.pofsc-toolbar[b-sjd92n93bd] {
    display: flex; align-items: center; gap: .5rem; flex-wrap: wrap;
    padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6;
}
.pofsc-toolbar-title[b-sjd92n93bd] { display: flex; align-items: center; flex-wrap: wrap; gap: .15rem; }
.pofsc-actions[b-sjd92n93bd] { margin-left: auto; display: flex; gap: .35rem; overflow-x: auto; }
.pofsc-actions .btn[b-sjd92n93bd] { white-space: nowrap; }

/* Parametri */
.pofsc-params[b-sjd92n93bd] { background: #eef1f5; border-bottom: 1px solid #dee2e6; padding: .6rem .75rem; }
.pofsc-params-grid[b-sjd92n93bd] { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .5rem; }
.pofsc-field label[b-sjd92n93bd] { font-size: .72rem; color: #5a6b80; margin-bottom: .1rem; display: block; }
.pofsc-field-wide[b-sjd92n93bd] { grid-column: span 2; }
.pofsc-field-narrow[b-sjd92n93bd] { max-width: 110px; }

.pofsc-fcie[b-sjd92n93bd] { display: flex; flex-wrap: wrap; gap: .3rem; max-height: 96px; overflow-y: auto; }
.pofsc-chip[b-sjd92n93bd] {
    display: inline-flex; align-items: center; gap: .3rem; font-size: .8rem;
    padding: .2rem .5rem; border: 1px solid #cdd6e0; border-radius: 16px; background: #fff; cursor: pointer;
}
.pofsc-chip.on[b-sjd92n93bd] { background: #cfe2ff; border-color: #6ea8fe; }

/* Totali */
.pofsc-totals[b-sjd92n93bd] { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6; }
.pofsc-tile[b-sjd92n93bd] { display: flex; flex-direction: column; padding: .1rem .65rem; border: 1px solid #dee2e6; border-radius: .5rem; min-width: 6rem; }
.pofsc-tile .l[b-sjd92n93bd] { font-size: .65rem; text-transform: uppercase; letter-spacing: .03em; color: #6c757d; }
.pofsc-tile .v[b-sjd92n93bd] { font-size: 1rem; font-weight: 600; }
.pofsc-tile.risp[b-sjd92n93bd] { border-color: #a3cfbb; background: #f2faf6; }
.pofsc-totals-right[b-sjd92n93bd] { margin-left: auto; display: flex; align-items: center; gap: .5rem; }
.pofsc-search[b-sjd92n93bd] { width: 200px; }
/* FIX R10: select del filtro ditta nella barra dei filtri. */
.pofsc-filter-ditta[b-sjd92n93bd] { width: 180px; flex: 0 0 auto; }

/* Corpo */
.pofsc-body[b-sjd92n93bd] { flex: 1; display: flex; min-height: 0; overflow: hidden; }
.pofsc-main[b-sjd92n93bd] { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.pofsc-grid-wrap[b-sjd92n93bd] { flex: 1; overflow: auto; background: #fff; min-height: 0; }

.pofsc-spinner[b-sjd92n93bd], .pofsc-empty[b-sjd92n93bd] { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; color: #6c757d; text-align: center; padding: 2rem; }
.pofsc-empty i[b-sjd92n93bd] { font-size: 2rem; margin-bottom: .5rem; }

/* Tabella desktop */
.pofsc-table thead th[b-sjd92n93bd] { white-space: nowrap; user-select: none; position: sticky; top: 0; z-index: 1; }
.pofsc-table tbody tr[b-sjd92n93bd] { cursor: pointer; }
.pofsc-sel[b-sjd92n93bd] { background: #cfe2ff !important; }
.pofsc-sub[b-sjd92n93bd] { font-size: .7rem; color: #6c757d; line-height: 1.1; }
.pofsc-prop[b-sjd92n93bd] { width: 5rem; display: inline-block; font-weight: 600; }

/* Card mobile */
.pofsc-cards[b-sjd92n93bd] { padding: .5rem; display: flex; flex-direction: column; gap: .5rem; }
.pofsc-card[b-sjd92n93bd] { border: 1px solid #dee2e6; border-radius: .6rem; background: #fff; padding: .6rem .7rem; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.pofsc-card.sel[b-sjd92n93bd] { border-color: #6ea8fe; box-shadow: 0 0 0 2px rgba(13,110,253,.15); }
.pofsc-card-top[b-sjd92n93bd] { display: flex; justify-content: space-between; gap: .5rem; }
.pofsc-card-title[b-sjd92n93bd] { font-weight: 600; line-height: 1.2; }
.pofsc-card-grid[b-sjd92n93bd] { display: grid; grid-template-columns: repeat(2, 1fr); gap: .2rem .8rem; margin: .5rem 0; font-size: .85rem; }
.pofsc-card-grid .k[b-sjd92n93bd] { color: #6c757d; font-size: .7rem; display: block; text-transform: uppercase; letter-spacing: .02em; }
/* FIX A8: il contenitore è diventato la <label> stessa (prima avvolgeva un'etichetta orfana),
   quindi la didascalia ora è lo <span> interno e serve azzerare il margine dell'etichetta. */
.pofsc-card-prop[b-sjd92n93bd] { display: flex; align-items: center; gap: .5rem; border-top: 1px dashed #e0e0e0; padding-top: .45rem; margin: 0; cursor: pointer; }
.pofsc-card-prop > span[b-sjd92n93bd] { font-size: .8rem; color: #5a6b80; margin: 0; }
.pofsc-card-prop input[b-sjd92n93bd] { width: 6rem; margin-left: auto; font-weight: 600; }

/* Dettagli */
.pofsc-details[b-sjd92n93bd] { height: 34%; min-height: 150px; display: flex; flex-direction: column; border-top: 1px solid #dee2e6; background: #fff; }
.pofsc-tabs[b-sjd92n93bd] { display: flex; align-items: center; gap: .1rem; padding: .25rem .5rem 0; border-bottom: 1px solid #dee2e6; overflow-x: auto; }
.pofsc-tabs button[b-sjd92n93bd] { border: 0; background: transparent; padding: .35rem .7rem; font-size: .82rem; color: #5a6b80; border-bottom: 2px solid transparent; white-space: nowrap; cursor: pointer; }
.pofsc-tabs button.on[b-sjd92n93bd] { color: #0d6efd; border-bottom-color: #0d6efd; font-weight: 600; }
.pofsc-tabs-info[b-sjd92n93bd] { margin-left: auto; font-size: .78rem; color: #6c757d; padding-right: .5rem; }
.pofsc-details-body[b-sjd92n93bd] { flex: 1; overflow: auto; }
.pofsc-details-body thead th[b-sjd92n93bd] { position: sticky; top: 0; z-index: 1; white-space: nowrap; }

/* Pannello ditte */
.pofsc-aside[b-sjd92n93bd] { width: 290px; flex-shrink: 0; border-left: 1px solid #dee2e6; background: #fff; display: flex; flex-direction: column; }
.pofsc-aside-head[b-sjd92n93bd] { display: flex; align-items: center; justify-content: space-between; padding: .5rem; border-bottom: 1px solid #dee2e6; }
.pofsc-aside-actions[b-sjd92n93bd] { display: flex; gap: .3rem; flex-wrap: wrap; padding: .5rem; border-bottom: 1px solid #f0f0f0; }
.pofsc-aside-list[b-sjd92n93bd] { flex: 1; overflow: auto; padding: .5rem; }
.pofsc-aside-item[b-sjd92n93bd] { display: flex; align-items: center; gap: .5rem; font-size: .85rem; padding: .2rem 0; cursor: pointer; }
.pofsc-aside-foot[b-sjd92n93bd] { display: flex; gap: .4rem; padding: .5rem; border-top: 1px solid #dee2e6; }
.pofsc-aside-foot .btn[b-sjd92n93bd] { flex: 1; }

/* Status */
.pofsc-status[b-sjd92n93bd] { display: flex; align-items: center; gap: .75rem; padding: .25rem .75rem; background: #fff; border-top: 1px solid #dee2e6; font-size: .8rem; }
/* FIX R5/R6: motivo del blocco di "Trasmetti", sempre visibile nella status bar. */
.pofsc-status-motivo[b-sjd92n93bd] { min-width: 0; max-width: 55%; }

/* Nascondi le label dei bottoni quando lo spazio è poco */
.pofsc-btn-lbl[b-sjd92n93bd] { margin-left: .3rem; }
@media (max-width: 1100px) { .pofsc-btn-lbl[b-sjd92n93bd] { display: none; } }

/* ══════════ MOBILE ══════════ */
@media (max-width: 991.98px) {
    .pofsc-details[b-sjd92n93bd] { height: 40%; }
    /* pannello ditte come off-canvas a schermo intero */
    .pofsc-aside[b-sjd92n93bd] {
        position: fixed; top: 52px; right: 0; bottom: 0; width: min(340px, 92vw);
        z-index: 40; box-shadow: -4px 0 18px rgba(0,0,0,.25);
    }
}
@media (max-width: 575.98px) {
    .pofsc-field-wide[b-sjd92n93bd] { grid-column: span 2; }
    .pofsc-tile[b-sjd92n93bd] { min-width: 4.6rem; flex: 1; }
    .pofsc-tile .v[b-sjd92n93bd] { font-size: .9rem; }
    .pofsc-search[b-sjd92n93bd] { width: 130px; }
    .pofsc-filter-ditta[b-sjd92n93bd] { width: 130px; }
}

/* ══════════ FIX A3: bersaglio tattile di "tutte" / "nessuna" ══════════
   Erano due `btn-link p-0`: nessuna imbottitura, quindi alti quanto il testo (23px).
   Comandano la selezione di TUTTE le farmacie del gruppo — premerne uno per sbaglio
   (o mancarlo e prendere quello accanto) cambia il perimetro dell'intera proposta
   d'ordine. Si aggiunge area cliccabile senza toccare la grafica: il riquadro resta
   invisibile finché non lo si preme. */
.pofsc-selall[b-sjd92n93bd] {
    min-height: 30px;
    padding-inline: .45rem !important;
    display: inline-flex;
    align-items: center;
}
@media (pointer: coarse) {
    .pofsc-selall[b-sjd92n93bd] { min-height: 34px; padding-inline: .7rem !important; }
}
/* _content/Farmaimport.Web/Features/Utenti/UtentiPage.razor.rz.scp.css */
.utn[b-7lfddvj6bp] { background: #f6f7f9; }

.utn-toolbar[b-7lfddvj6bp] {
    display: flex; align-items: center; gap: .4rem; flex-wrap: wrap;
    padding: .4rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6;
}

.nav-pills-sm .nav-link[b-7lfddvj6bp] {
    border-radius: .45rem; padding: .3rem .7rem; font-size: .88rem;
    border: 0; background: transparent; color: #52514e;
}
.nav-pills-sm .nav-link:hover[b-7lfddvj6bp] { background: #f1f4f8; }
.nav-pills-sm .nav-link.active[b-7lfddvj6bp] { background: #2a78d6; color: #fff; }
.nav-pills-sm .nav-link.active .badge[b-7lfddvj6bp] { background: rgba(255,255,255,.85) !important; color: #0b0b0b !important; }

.utn-body[b-7lfddvj6bp] { flex: 1; display: grid; grid-template-columns: 340px 1fr; min-height: 0; }

.utn-list[b-7lfddvj6bp] {
    background: #fff; border-right: 1px solid #dee2e6;
    display: flex; flex-direction: column; min-height: 0;
}
.utn-items[b-7lfddvj6bp] { list-style: none; margin: 0; padding: 0 0 .5rem; overflow: auto; flex: 1; }

.utn-item[b-7lfddvj6bp] {
    width: 100%; text-align: left; border: 0; background: transparent;
    padding: .5rem .75rem; border-left: 3px solid transparent; cursor: pointer;
    display: flex; align-items: flex-start; gap: .55rem;
}
.utn-item:hover[b-7lfddvj6bp] { background: #f1f4f8; }
.utn-item.on[b-7lfddvj6bp] { background: #e8f0fb; border-left-color: #2a78d6; }

.utn-avatar[b-7lfddvj6bp] {
    flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%;
    background: #dbe7f8; color: #1c5aa6; font-size: .8rem; font-weight: 600;
    display: flex; align-items: center; justify-content: center;
}
.utn-avatar-role[b-7lfddvj6bp] { background: #efe6f8; color: #6b3fa0; }

.utn-item-txt[b-7lfddvj6bp] { display: flex; flex-direction: column; gap: .15rem; min-width: 0; }
.utn-item-name[b-7lfddvj6bp] { font-weight: 600; font-size: .9rem; color: #0b0b0b; }
.utn-item-sub[b-7lfddvj6bp] { font-size: .75rem; color: #52514e; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.utn-item-meta[b-7lfddvj6bp] { display: flex; align-items: center; gap: .3rem; flex-wrap: wrap; }
.utn-item-meta .badge[b-7lfddvj6bp] { font-size: .66rem; font-weight: 500; }
.utn-count[b-7lfddvj6bp] { font-size: .74rem; color: #52514e; }

.utn-editor[b-7lfddvj6bp] { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.utn-editor-head[b-7lfddvj6bp] {
    display: flex; align-items: center; gap: .3rem;
    padding: .5rem .75rem; background: #fff; border-bottom: 1px solid #dee2e6;
}
.utn-editor-body[b-7lfddvj6bp] { flex: 1; overflow: auto; padding: .75rem; display: flex; flex-direction: column; gap: .75rem; }

.utn-card[b-7lfddvj6bp] { background: #fff; border: 1px solid #e3e8ef; border-radius: .7rem; padding: .8rem; }
.utn-card-head[b-7lfddvj6bp] {
    font-size: .78rem; text-transform: uppercase; letter-spacing: .04em;
    color: #52514e; font-weight: 600; margin-bottom: .6rem;
}

.utn-fields[b-7lfddvj6bp] { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: .7rem; }
.utn-field[b-7lfddvj6bp] { display: flex; flex-direction: column; gap: .25rem; margin: 0; }
.utn-field > span[b-7lfddvj6bp] { font-size: .74rem; text-transform: uppercase; letter-spacing: .03em; color: #898781; }

.utn-chips[b-7lfddvj6bp] { display: flex; flex-wrap: wrap; gap: .4rem; }
.utn-chip[b-7lfddvj6bp] {
    display: flex; align-items: center; margin: 0; cursor: pointer;
    padding: .35rem .6rem; border: 1px solid #e3e8ef; border-radius: 2rem;
    font-size: .84rem; color: #0b0b0b; background: #fbfcfd;
}
.utn-chip:hover[b-7lfddvj6bp] { background: #f2f6fc; border-color: #cfdcee; }
.utn-chip.on[b-7lfddvj6bp] { background: #e8f0fb; border-color: #2a78d6; }
.utn-chip.off[b-7lfddvj6bp] { opacity: .5; cursor: not-allowed; }
.utn-chip .form-check-input[b-7lfddvj6bp] { margin-top: 0; }
.utn-chip-sub[b-7lfddvj6bp] { font-size: .72rem; color: #898781; margin-left: .4rem; }

.utn-meter[b-7lfddvj6bp] {
    flex: 1 1 140px; max-width: 220px; height: 6px;
    background: #e1e0d9; border-radius: 3px; overflow: hidden;
}
.utn-meter-fill[b-7lfddvj6bp] { height: 100%; transition: width .15s linear; }
.utn-meter-fill.low[b-7lfddvj6bp] { background: #c0392b; }
.utn-meter-fill.mid[b-7lfddvj6bp] { background: #d68f2a; }
.utn-meter-fill.ok[b-7lfddvj6bp]  { background: #2f9e5f; }

.utn-center[b-7lfddvj6bp] { display: flex; flex: 1; align-items: center; justify-content: center; flex-direction: column; padding: 1.5rem 0; }

/* ───────── mobile: master-detail a schermate ───────── */
@media (max-width: 991.98px) {
    .utn-body[b-7lfddvj6bp] { grid-template-columns: 1fr; }
    .utn-list[b-7lfddvj6bp] { border-right: 0; }
    .utn-editor[b-7lfddvj6bp] { display: none; }
    .utn-body.utn-detail-open .utn-list[b-7lfddvj6bp] { display: none; }
    .utn-body.utn-detail-open .utn-editor[b-7lfddvj6bp] { display: flex; }
    .utn-editor-body[b-7lfddvj6bp] { padding: .5rem; gap: .5rem; }
    .utn-fields[b-7lfddvj6bp] { grid-template-columns: 1fr; }
}
