/* Vista PC / telefono - Ordini e MondoAbaco (prefisso od-).
   Solo le regole proprie di queste pagine: quelle comuni stanno in app.css (ed-*, vt-*, mg-pagina--tel).
   .od-tel è la classe della vista telefono (VistaSchermoService.Pc == false) messa sul contenitore
   della pagina; le regole con doppia classe (.od-xxx.od-tel) vincono sui blocchi <style> locali. */

/* ── COMUNI ─────────────────────────────────────────────── */

/* Griglia DevExpress tenuta montata ma nascosta su telefono (serve per Esporta in Excel / Stampa) */
.od-nascosta { display: none !important; }

.od-tel .form-control,
.od-tel .form-select { min-height: 40px; font-size: 16px; }
.od-tel .dxbl-text-edit { min-height: 40px; }
.od-tel .dxbl-text-edit input { font-size: 16px; }

/* Spunte grandi da toccare nelle schede */
.od-spunta { width: 1.35rem; height: 1.35rem; flex-shrink: 0; margin-top: 0; cursor: pointer; }
.od-scheda-spunta { cursor: pointer; }
.od-scheda-spunta.vt-scheda-testa,
.od-scheda-spunta .vt-scheda-testa { align-items: center; }

/* Blocco Cliente+Ordine (EvasioneOrdiniCliente) con la spunta di gruppo */
.od-gruppo { display: flex; flex-direction: column; gap: .5rem; }
.od-gruppo-testa {
    display: flex; align-items: center; gap: .6rem;
    margin: 0; padding: .55rem .75rem;
    background: var(--fe-blue-light); border: 1px solid var(--fe-blue-mid); border-radius: 10px;
    cursor: pointer; overflow-wrap: anywhere;
}

/* Riga dei totali sopra le schede */
.od-totali { background: var(--fe-blue-light); }

/* Campi fe-field-row: su telefono in colonna anche con la finestra larga (le media query di app.css non bastano) */
.od-tel .fe-field-row,
.od-tel .fe-field-row--split { flex-direction: column; align-items: stretch; }
.od-tel .fe-label { flex: none; padding-top: 0; }
.od-tel .fe-field-group--xs,
.od-tel .fe-field-group--sm,
.od-tel .fe-field-group--md,
.od-tel .fe-field-group--lg { flex: none; width: 100%; }
.od-tel .fe-section-body { padding: .75rem; }


/* ── GESTIONE PORTAFOGLIO ORDINI (gpo-) ─────────────────── */
.od-gpo.od-tel { padding: .5rem; }
.od-gpo.od-tel .gpo-header { flex-direction: column; align-items: flex-start; gap: .5rem; padding: .8rem 1rem; }
.od-gpo.od-tel .gpo-toolbar-inner { padding: .5rem .6rem; }
.od-gpo.od-tel .gpo-actions { width: 100%; }
.od-gpo.od-tel .gpo-divider { display: none; }
.od-gpo.od-tel .gpo-btn { flex: 1 1 auto; justify-content: center; min-height: 44px; }
.od-gpo.od-tel .gpo-btn span { display: inline; }
.od-gpo.od-tel .gpo-card--filters { padding: .75rem; }
.od-gpo.od-tel .gpo-filter-row { flex-direction: column; align-items: stretch; gap: .75rem; }
.od-gpo.od-tel .gpo-field { flex: 1 1 auto; width: 100%; }
.od-gpo.od-tel .gpo-input { min-height: 40px; font-size: 16px; }
.od-gpo.od-tel .gpo-input--date { max-width: none; flex: 1 1 0; min-width: 0; }
.od-gpo.od-tel .gpo-period { flex-wrap: nowrap; }
.od-gpo.od-tel .gpo-search-btn { min-width: 44px; }
.od-gpo.od-tel .gpo-radio { min-height: 40px; font-size: .9rem; }
.od-gpo.od-tel .gpo-check { min-height: 32px; font-size: .9rem; }
.od-gpo.od-tel .gpo-check input { width: 1.2rem; height: 1.2rem; }
.od-gpo.od-tel .gpo-card:not(.gpo-card--filters) { background: transparent; border: 0; box-shadow: none; overflow: visible; }

/* ── RAPPORTO CONFERMA ORDINI SU OFFERTE (rco-) ─────────── */
.od-rco.od-tel { padding: .5rem; }
.od-rco.od-tel .rco-header { flex-direction: column; align-items: flex-start; gap: .5rem; padding: .8rem 1rem; }
.od-rco.od-tel .rco-toolbar-inner { flex-direction: column; align-items: stretch; padding: .6rem; }
.od-rco.od-tel .rco-filters { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .5rem; }
.od-rco.od-tel .rco-input { min-height: 40px; font-size: 16px; width: 100%; min-width: 0; }
.od-rco.od-tel .rco-actions { width: 100%; }
.od-rco.od-tel .rco-divider { display: none; }
.od-rco.od-tel .rco-btn { flex: 1 1 auto; justify-content: center; min-height: 44px; }
.od-rco.od-tel .rco-btn span { display: inline; }
.od-rco.od-tel .rco-card { background: transparent; border: 0; box-shadow: none; overflow: visible; }

/* ── LICENZE NON RINNOVATE ──────────────────────────────── */
.od-lnr.od-tel .pr-header-right { width: 100%; }
.od-lnr.od-tel .pr-header-right .pr-btn { flex: 1 1 auto; justify-content: center; min-height: 44px; }
.od-lnr.od-tel .card-body .row > .col-auto { flex: 0 0 100%; width: 100%; }
.od-lnr.od-tel .form-check { min-height: 32px; }
.od-lnr.od-tel .form-check-input { width: 1.2rem; height: 1.2rem; }

/* ── EVADI ORDINE (eo- locali della pagina) ─────────────── */
.od-evadi.od-tel .eo-header-inner { flex-wrap: wrap; padding: .8rem 1rem; }
.od-evadi.od-tel .eo-back-btn { min-height: 40px; }
.od-evadi.od-tel .eo-section-body { padding: .75rem; }
.od-evadi.od-tel .eo-field-row { flex-direction: column; align-items: stretch; gap: .3rem; }
.od-evadi.od-tel .eo-label { flex: none; }
.od-evadi.od-tel .eo-btn-primary,
.od-evadi.od-tel .eo-btn-secondary { width: 100%; justify-content: center; min-height: 44px; }
.od-evadi.od-tel .form-check { min-height: 32px; }
.od-evadi.od-tel .form-check-input { width: 1.2rem; height: 1.2rem; }

/* ── STATISTICHE FATTURATO (sf-) e DETTAGLIO MENSILE (sfd-) ── */
.od-sf.od-tel .sf-header-inner,
.od-sfd.od-tel .sfd-header-inner { padding: .8rem 1rem; }
.od-sf.od-tel .sf-section-body,
.od-sfd.od-tel .sfd-section-body { padding: .75rem; }
.od-sf.od-tel .sf-field-row,
.od-sfd.od-tel .sfd-field-row { flex-direction: column; align-items: stretch; gap: .3rem; }
.od-sf.od-tel .sf-label,
.od-sfd.od-tel .sfd-label { flex: none; }
.od-sf.od-tel .sf-control--short,
.od-sf.od-tel .sf-control--article,
.od-sfd.od-tel .sfd-control--short { max-width: none; }
.od-sf.od-tel .sf-btn-refresh,
.od-sfd.od-tel .sfd-btn-refresh { justify-content: center; min-height: 44px; margin-top: .3rem; }
.od-sf.od-tel .sf-art-badge { align-self: flex-start; }
.od-sf.od-tel .sf-stats-grid,
.od-sfd.od-tel .sfd-grid { grid-template-columns: minmax(0, 1fr); }
.od-sf.od-tel .sf-stat-card:hover,
.od-sfd.od-tel .sfd-card:hover { transform: none; }
.od-sf.od-tel .sf-link-detail { display: flex; min-height: 40px; margin-left: 0 !important; }

/* ── MASCHERA DELL'ORDINE (DettaglioOrdineMA, do-) ───────
   Telefono: finestra a tutto schermo (modal-fullscreen), colonne una sotto l'altra, campi grandi. */
.do-modal.od-tel { font-size: .9rem; }
.do-modal.od-tel .do-dialog { max-width: none; }
.do-modal.od-tel .do-header { padding: .6rem .8rem; }
.do-modal.od-tel .do-header-title { font-size: 1rem; }
.do-modal.od-tel .do-header .btn-close { padding: .6rem; }
.do-modal.od-tel .do-body { padding: .5rem; }
.do-modal.od-tel .do-body > .row > [class*="col-"] { flex: 0 0 100%; max-width: 100%; width: 100%; }
.do-modal.od-tel .do-legenda { display: none; }
.do-modal.od-tel .do-sezione { padding: .6rem .7rem; }
.do-modal.od-tel .do-sezione-titolo { font-size: .75rem; flex-wrap: wrap; }
.do-modal.od-tel .do-campi { gap: .55rem .6rem; }
.do-modal.od-tel .do-campo { flex: 1 1 100%; max-width: none; }
.do-modal.od-tel .do-campo--xs,
.do-modal.od-tel .do-campo--s { flex: 1 1 calc(50% - .3rem); }
.do-modal.od-tel .do-campo label { font-size: .75rem; }
.do-modal.od-tel .form-control-sm,
.do-modal.od-tel .form-select-sm,
.do-modal.od-tel .form-control,
.do-modal.od-tel .form-select { min-height: 40px; font-size: 16px; padding: .35rem .6rem; border-radius: 6px; }
.do-modal.od-tel .form-select-sm,
.do-modal.od-tel .form-select { padding-right: 2rem; }
.do-modal.od-tel .input-group-sm > .btn { min-width: 44px; font-size: 1rem; }
.do-modal.od-tel .do-id { line-height: 38px; }
.do-modal.od-tel .do-mono { font-size: .85rem; }
.do-modal.od-tel .do-nota { font-size: .8rem; }
.do-modal.od-tel .do-radio { flex-direction: column; gap: .35rem; }
.do-modal.od-tel .do-radio-voce { min-height: 32px; font-size: .95rem; gap: .5rem; }
.do-modal.od-tel .do-radio-voce .form-check-input,
.do-modal.od-tel .form-check-input { width: 1.2rem; height: 1.2rem; }
.do-modal.od-tel .form-check { min-height: 32px; font-size: .9rem; }
.do-modal.od-tel .pr-btn { font-size: .9rem; padding: .5rem .8rem; min-height: 40px; }
.do-modal.od-tel .do-btn-xs { min-height: 34px; padding: .3rem .6rem !important; font-size: .8rem !important; }
.do-modal.od-tel .do-bottoni-riga .pr-btn,
.do-modal.od-tel .do-campo--auto .pr-btn { flex: 1 1 100%; justify-content: center; white-space: normal; }
.do-modal.od-tel .do-campo--auto { flex: 1 1 100%; }
.do-modal.od-tel .do-sezione > .pr-btn,
.do-modal.od-tel .do-body .pr-btn.w-100 { width: 100%; justify-content: center; }
.do-modal.od-tel .do-footer { flex-wrap: wrap; padding: .5rem; }
.do-modal.od-tel .do-footer .pr-btn { flex: 1 1 auto; justify-content: center; min-height: 44px; }
.do-modal.od-tel .do-modificato { flex: 1 1 100%; font-size: .8rem; }
