/**
 * Tipografia ERP � leggibilit� globale (touch / tablet / desktop).
 * Caricato da _erp_navbar_assets.html su tutte le pagine principali.
 */

html {
    font-size: 110%;
}

body {
    font-size: 1.1rem;
    line-height: 1.45;
}

h1, .h1 { font-size: calc(1.45rem + 0.2vw); }
h2, .h2 { font-size: calc(1.3rem + 0.15vw); }
h3, .h3 { font-size: calc(1.2rem + 0.1vw); }
h4, .h4 { font-size: calc(1.15rem + 0.08vw); }
h5, .h5 { font-size: 1.1rem; }
h6, .h6 { font-size: 1.05rem; }

.form-label {
    font-size: 1.05rem;
    font-weight: 600;
}

.form-control,
.form-select,
.form-check-label {
    font-size: 1.05rem;
}

/* Input numerici: UX uniforme su tutte le pagine ERP */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.form-control[type="number"] {
    font-size: 1.1rem;
    font-variant-numeric: tabular-nums;
}

.erp-number-lg {
    font-size: 1.2rem !important;
    font-weight: 600;
}

.erp-input-euro .input-group-text,
.input-group.erp-input-euro .input-group-text {
    min-width: 2.6rem;
    justify-content: center;
    font-weight: 700;
}

textarea.form-control {
    font-size: 1.05rem;
}

.input-group-text {
    font-size: 1.05rem;
}

/* Tabelle dati: minimo leggibile */
.table {
    font-size: 1.05rem;
}

.table > thead > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    font-size: 1.05rem;
    vertical-align: middle;
}

/* Campi in tabella: non rimpicciolire */
.table .form-control,
.table .form-control-sm,
.table .form-select,
.table .form-select-sm {
    font-size: 1rem;
    min-height: 2.25rem;
}

/* Bottoni: area tap pi� ampia (mantiene btn-sm compatti ma leggibili) */
.btn {
    font-size: 1.05rem;
}

.btn-sm {
    font-size: 0.95rem;
    padding: 0.4rem 0.65rem;
}

.btn-lg {
    font-size: 1.15rem;
    padding: 0.65rem 1.25rem;
}

.btn-success[type="submit"],
.btn-primary[type="submit"],
.btn-salva-inventario,
#btnSalvaModAnagrafica,
#btnSalvaCalibraConsumo {
    font-size: 1.1rem;
    padding: 0.6rem 1.15rem;
}

.accordion-button {
    font-size: 1.05rem;
}

.dropdown-item {
    font-size: 1.05rem;
}

.modal-title {
    font-size: 1.15rem;
}

.modal-body {
    font-size: 1.05rem;
}

/* Testo secondario: non sotto 0.95rem nel contenuto */
.layout-erp-wide .text-muted,
.layout-erp-wide .form-text {
    font-size: 1rem;
}

/* Badge e contatori possono restare compatti */
.badge {
    font-size: 0.85em;
}

/* Pagine operative dark: override font troppo piccoli nei fogli inline */
.pagina-inventario-dark .nome-ing,
.card-ingrediente-inv .nome-ing {
    font-size: 1.35rem !important;
}

.pagina-inventario-dark .meta-ing,
.card-ingrediente-inv .meta-ing {
    font-size: 0.95rem !important;
}

.pagina-inventario-dark .id-ing {
    font-size: 0.9rem !important;
}

.pagina-cruscotto-master .cm-card-nome,
.pagina-cruscotto-master .campo-nome {
    font-size: 1.1rem !important;
}

.pagina-cruscotto-master .cm-field-label,
.pagina-cruscotto-master .form-label {
    font-size: 1.05rem !important;
}

.pagina-riconciliazione-dark .ricon-page-title {
    font-size: 1.4rem !important;
}

.pagina-ordini-dark .card-fornitore-header,
.pagina-nuovo-prodotto-dark .form-label {
    font-size: 1.05rem !important;
}

@media (max-width: 575.98px) {
    html {
        font-size: 105%;
    }

    body {
        font-size: 1.05rem;
    }

    .table > thead > tr > th,
    .table > tbody > tr > td {
        font-size: 1rem;
        word-break: break-word;
    }

    .btn-success[type="submit"],
    .btn-primary[type="submit"],
    .btn-salva-inventario {
        width: 100%;
    }
}
