/* Personalizzazioni accessibili Nexa Suite separate dal CSS originale Iori. */
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100000;padding:.75rem 1rem;background:#fff;color:#024430;border:2px solid #024430}.skip-link:focus{top:1rem}.burger-icon,.search-post{border:0;background:transparent;padding:0}.burger-icon:focus-visible,.search-post:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #28a7e6;outline-offset:3px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Mantiene i messaggi flash globali nel flusso, subito sotto l'header flottante. */
.nexa-site-header{z-index:1000}.nexa-flash-wrapper{position:relative;z-index:10;clear:both}

/* Mantiene i loghi ufficiali nelle proporzioni native e riserva lo spazio prima del caricamento. */
.nexa-site-header .header-logo{max-width:260px!important;width:260px!important;flex:0 0 260px}.nexa-site-header.stick{right:0;width:auto}.nexa-logo-desktop{display:block;width:260px;max-width:100%;height:auto;aspect-ratio:26/7;object-fit:contain}.nexa-logo-mobile{display:none;width:65px;height:65px;object-fit:contain}.nexa-mobile-menu-logo{display:block!important;width:65px!important;height:65px!important;min-height:0!important;object-fit:contain}.nexa-footer-logo{display:block;width:260px;max-width:100%;height:auto;aspect-ratio:26/7;object-fit:contain}.nexa-contact-text{display:inline-block;width:auto;height:24px;max-width:100%;vertical-align:middle}
@media (min-width:1200px){.nexa-site-header .header-nav{flex:1 1 auto;width:auto!important}.nexa-site-header .header-right{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;width:auto!important}.nexa-site-header .header-right>.box-search-top,.nexa-site-header .header-right>.nexa-header-auth{display:flex!important;align-items:center}}
@media (max-width:1199.98px){.nexa-site-header .header-right{width:auto!important;margin-left:auto}}
@media (max-width:991.98px){.nexa-site-header .header-logo{max-width:65px!important;width:65px!important;flex-basis:65px}.nexa-logo-desktop{display:none}.nexa-logo-mobile{display:block}.nexa-site-header .header-right{padding-right:40px}}

/* Header desktop cross-browser: una sola riga fino al breakpoint mobile Iori. */
@media (min-width:1200px) {
  .nexa-site-header .main-header,
  .nexa-site-header .header-left {
    display: flex;
    min-width: 0;
    align-items: center;
    flex-wrap: nowrap;
  }

  .nexa-site-header .header-logo {
    flex: 0 0 260px;
  }

  .nexa-site-header .header-nav {
    min-width: 0;
    flex: 1 1 auto;
  }

  .nexa-site-header .nav-main-menu {
    width: 100%;
    min-width: 0;
    padding-left: 0;
  }

  .nexa-site-header .main-menu {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: center;
    flex-wrap: nowrap;
    column-gap: 6%;

  }

  .nexa-site-header .main-menu > li {
    float: none;
    flex: 0 0 auto;
    padding-right: 0 !important;
  }

  .nexa-site-header .main-menu > li > a {
    padding: 26px 0;
    white-space: nowrap;
  }

  .nexa-site-header .header-right,
  .nexa-site-header .nexa-header-auth,
  .nexa-site-header .nexa-header-auth form {
    min-width: max-content;
    flex-wrap: nowrap;
    white-space: nowrap;
  }

  .nexa-site-header .header-right > * {
    flex: 0 0 auto;
  }
}

/* Il menu completo non entra in sicurezza sotto 1400px: usa l'off-canvas esistente. */
@media (min-width: 1200px) and (max-width: 1399.98px) {
  .nexa-site-header {
    padding: 10px 0;
  }

  .nexa-site-header .nav-main-menu {
    display: none !important;
  }

  .nexa-site-header .header-nav {
    width: 0 !important;
    flex: 0 0 0;
  }

  .nexa-site-header .burger-icon {
    display: block !important;
  }

  .nexa-site-header .header-right {
    width: auto !important;
    margin-left: auto;
    padding-right: 40px;
  }
}

/* Nella fascia desktop più stretta recupera spazio senza comprimere le voci. */
@media (min-width: 1400px) and (max-width: 1599.98px) {
  .nexa-site-header .main-menu {
    column-gap: clamp(18px, 1.5vw, 24px);
    padding-left: 22px !important;
  }
}

/* Separa l'azione principale dal testo nello stato vuoto del carrello. */
.nexa-cart-empty .btn {
  margin-top: 16px;
}

/* Azioni rinnovo servizi: il form POST mantiene lo stesso linguaggio visivo dei link. */
.nexa-account-service-actions { align-items: center; gap: 16px; }
.nexa-account-service-actions form { margin: 0; }
.nexa-account-service-actions button.nexa-account-row-link { appearance: none; padding: 0; border: 0; background: transparent; cursor: pointer; }

/* Integra badge, mini-cart e pagina carrello senza alterare i fogli originali Iori. */
.nexa-cart-menu{position:relative;display:inline-flex;align-items:center;margin-right:18px}.nexa-cart-toggle{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;background:transparent;cursor:pointer;color:#024430}.nexa-cart-toggle svg{width:25px;height:25px}.nexa-cart-badge,.nexa-mobile-cart-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#06d6a0;color:#024430;font-size:11px;font-weight:700;line-height:1}.nexa-cart-badge{position:absolute;right:0;top:0}.nexa-cart-dropdown{display:block!important;visibility:hidden;opacity:0;pointer-events:none;right:0!important;left:auto!important;top:calc(100% + 10px)!important;width:330px!important;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease}.nexa-cart-dropdown[hidden]{display:none!important}.nexa-cart-menu.is-open .nexa-cart-dropdown{visibility:visible;opacity:1;pointer-events:auto;transform:none}.nexa-cart-dropdown .item-cart{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #eef1f4}.nexa-cart-dropdown .item-cart-image{flex:0 0 54px}.nexa-cart-dropdown .item-cart-image img{width:54px;height:54px;object-fit:cover;border-radius:6px}.nexa-cart-dropdown .item-cart-info{display:flex;min-width:0;flex-direction:column;font-size:13px}.nexa-cart-dropdown .item-cart-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#024430}.nexa-cart-dropdown .btn{margin-top:15px}.nexa-mobile-cart-count{margin-left:6px}.catalog-card-actions,.catalog-plan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.catalog-card-actions form,.catalog-plan-actions form{margin:0}.nexa-product-cart-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:560px;margin:0 0 12px}.nexa-product-cart-form>div{display:flex;flex-direction:column;gap:6px}.nexa-product-cart-form label,.nexa-cart-line-actions label{font-size:13px;font-weight:600;color:#024430}.nexa-product-cart-form input,.nexa-product-cart-form select,.nexa-cart-line-actions input{width:100%;min-height:44px;padding:8px 12px;border:1px solid #d7e1dc;border-radius:6px;background:#fff;color:#3b4a45}.nexa-product-cart-form>button{align-self:end;min-height:44px}.nexa-cart-empty,.nexa-cart-totals{padding:30px;border:1px solid #e4ece8;border-radius:10px;background:#fff}.nexa-cart-line{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:22px;padding:22px 0;border-bottom:1px solid #e4ece8}.nexa-cart-line-image img{width:110px;height:110px;border-radius:8px;object-fit:cover}.nexa-cart-line-price{display:flex;flex-direction:column;align-items:flex-end;color:#024430}.nexa-cart-line-price span{font-size:12px;color:#66746f}.nexa-cart-options{margin:0 0 12px;font-size:13px}.nexa-cart-options div{display:flex;gap:6px}.nexa-cart-options dt{text-transform:capitalize}.nexa-cart-options dd{margin:0;color:#66746f}.nexa-cart-line-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.nexa-cart-line-actions form{display:flex;align-items:flex-end;gap:8px;margin:0}.nexa-cart-line-actions input{width:76px}.nexa-cart-remove{padding:9px;color:#9d2b2b}.nexa-cart-warning{padding:9px 12px;border-radius:6px;background:#fff2d6;color:#734d00}.nexa-cart-totals{position:sticky;top:110px}.nexa-cart-totals p{display:flex;justify-content:space-between;gap:20px}.nexa-cart-totals .nexa-cart-total{padding-top:15px;border-top:1px solid #d7e1dc;font-size:18px}.nexa-cart-totals .nexa-cart-warning,.nexa-cart-totals .font-xs{display:block}
@media (max-width:991.98px){.nexa-cart-menu{margin-right:10px}.nexa-cart-menu .nexa-cart-dropdown{display:none!important}.nexa-cart-totals{position:static;margin-top:30px}}
@media (max-width:575.98px){.nexa-site-header .header-right{padding-right:34px}.nexa-cart-menu{margin-right:2px}.nexa-cart-toggle{width:38px}.nexa-product-cart-form{grid-template-columns:1fr}.nexa-cart-line{grid-template-columns:78px minmax(0,1fr)}.nexa-cart-line-image img{width:78px;height:78px}.nexa-cart-line-price{grid-column:2;align-items:flex-start}.nexa-cart-line-actions,.nexa-cart-line-actions form{align-items:flex-start}.nexa-cart-line-actions form{flex-wrap:wrap}}

/* Mantiene autenticazione e area cliente coerenti con il design system Nexa Suite. */
.nexa-header-auth{align-items:center;gap:12px}.nexa-header-auth form{margin:0}.nexa-header-logout,.nexa-mobile-logout button{padding:8px;border:0;background:transparent;color:#024430;font-weight:600}.nexa-auth-page{padding:70px 0}.nexa-auth-page .img-reveal{overflow:hidden}.nexa-auth-page .box-banner-login,.nexa-auth-page .box-register{padding:35px;border-radius:12px;background:#fff;box-shadow:0 8px 30px rgba(2,68,48,.08)}.nexa-auth-page label,.nexa-account-card label,.nexa-customer-type legend{margin-bottom:7px;color:#024430;font-weight:600}.nexa-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.nexa-customer-type{display:flex;flex-wrap:wrap;gap:15px;padding:16px;border:1px solid #dfe8e4;border-radius:8px}.nexa-customer-type legend{float:none;width:auto;padding:0 8px;font-size:15px}.nexa-account-card{height:100%;padding:28px;border:1px solid #e0e9e5;border-radius:10px;background:#fff}.nexa-mobile-logout{margin:0}.nexa-mobile-logout button{width:100%;padding:10px 0;text-align:left}

/* Shell Area Cliente: resta nel flusso tra header e footer pubblici. */
.nexa-account-section{
  --nexa-primary:#075f48;
  --nexa-primary-dark:#024430;
  --nexa-accent:#06c995;
  --nexa-bg:#f5f6f8;
  --nexa-surface:#fff;
  --nexa-border:#e4e8e6;
  --nexa-text:#17251f;
  --nexa-muted:#66756f;
  --nexa-danger:#b42318;
  padding:36px 0 64px;
  background:var(--nexa-bg);
  color:var(--nexa-text)
}
.nexa-account-shell{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:24px;min-width:0}
.nexa-account-sidebar{position:sticky;top:calc(var(--nexa-account-header-offset, 88px) + 16px);z-index:20;min-width:0;overflow:hidden;border:1px solid var(--nexa-border);border-radius:12px;background:var(--nexa-surface);box-shadow:0 8px 24px rgba(23,37,31,.05)}
.nexa-account-sidebar-head{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid var(--nexa-border)}
.nexa-account-sidebar-head>div{display:flex;min-width:0;flex-direction:column}.nexa-account-sidebar-head span{color:var(--nexa-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nexa-account-sidebar-head strong{color:var(--nexa-primary-dark);font-family:"Chivo",sans-serif;font-size:17px}
.nexa-account-sidebar-close{display:none;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;padding:0;border:1px solid var(--nexa-border);border-radius:9px;background:#fff;color:var(--nexa-primary-dark);font-size:18px;cursor:pointer}
.nexa-account-nav{display:flex;flex-direction:column;padding:10px}
.nexa-account-nav-group{display:grid;gap:3px;padding:7px 0}.nexa-account-nav-group+.nexa-account-nav-group{border-top:1px solid #edf1ef}.nexa-account-nav-group>p{margin:0;padding:5px 10px 3px;color:var(--nexa-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.nexa-account-nav-link,.nexa-account-logout button{display:flex;width:100%;align-items:center;gap:11px;padding:10px;border:0;border-radius:8px;background:transparent;color:var(--nexa-text);font:inherit;font-size:13px;font-weight:650;line-height:1.35;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}
.nexa-account-nav-link i,.nexa-account-logout button i{flex:0 0 19px;color:var(--nexa-muted);font-size:17px;text-align:center}.nexa-account-nav-link span,.nexa-account-logout button span{min-width:0}
.nexa-account-nav-link:hover,.nexa-account-nav-link:focus-visible{background:#f0f6f3;color:var(--nexa-primary-dark)}.nexa-account-nav-link:hover i,.nexa-account-nav-link:focus-visible i{color:var(--nexa-primary)}
.nexa-account-nav-link.is-active{background:#e8f5f0;color:var(--nexa-primary-dark);font-weight:800}.nexa-account-nav-link.is-active i{color:var(--nexa-primary)}
.nexa-account-logout{margin:8px 0 0;padding:9px 0 0;border-top:1px solid var(--nexa-border)}.nexa-account-logout button{color:var(--nexa-danger)}.nexa-account-logout button:hover,.nexa-account-logout button:focus-visible{background:#fff1f0;color:#8f1c13}.nexa-account-logout button i{color:currentColor}
.nexa-account-main{min-width:0;padding:24px;border:1px solid var(--nexa-border);border-radius:12px;background:var(--nexa-surface);box-shadow:0 8px 24px rgba(23,37,31,.04)}
.nexa-account-main>*:first-child{margin-top:0!important}.nexa-account-main>*:last-child{margin-bottom:0!important}
.nexa-account-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.nexa-account-page-head h1{margin:0;color:var(--nexa-primary-dark)}.nexa-account-page-head p{margin:6px 0 0;color:var(--nexa-muted)}
.nexa-account-pagination{display:flex;justify-content:center;gap:8px;margin:24px 0 0}.nexa-account-pagination a{display:inline-grid;min-width:38px;height:38px;place-items:center;padding:6px;border:1px solid var(--nexa-border);border-radius:8px;background:#fff;color:var(--nexa-primary-dark);font-weight:700}.nexa-account-pagination a[aria-current=page]{border-color:var(--nexa-primary);background:var(--nexa-primary);color:#fff}
.nexa-account-menu-toggle{display:none;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--nexa-border);border-radius:10px;background:var(--nexa-surface);color:var(--nexa-primary-dark);font:inherit;font-weight:800;cursor:pointer}.nexa-account-menu-toggle i{font-size:17px}
.nexa-account-overlay[hidden]{display:none!important}
.nexa-account-sidebar-close:focus-visible,.nexa-account-menu-toggle:focus-visible,.nexa-account-nav-link:focus-visible,.nexa-account-logout button:focus-visible{outline:3px solid #28a7e6;outline-offset:2px}

@media(max-width:991.98px){
  .nexa-account-section{padding:24px 0 48px}
  .nexa-account-shell{display:block}
  .nexa-account-menu-toggle{display:flex;margin-bottom:16px}
  .nexa-account-sidebar{position:fixed;top:var(--nexa-account-header-offset,0);bottom:0;left:0;z-index:980;width:min(86vw,300px);border-radius:0 12px 0 0;transform:translateX(-105%);transition:transform .22s ease;overscroll-behavior:contain;overflow-y:auto}
  .nexa-account-sidebar-close{display:inline-flex}
  .nexa-account-overlay{position:fixed;top:var(--nexa-account-header-offset,0);right:0;bottom:0;left:0;z-index:970;background:rgba(10,28,22,.48)}
  .nexa-account-shell.is-account-sidebar-open .nexa-account-sidebar{transform:translateX(0)}
  .nexa-account-main{padding:20px}
  body.nexa-account-sidebar-lock{overflow:hidden}
  body.nexa-account-sidebar-lock .nexa-simone{visibility:hidden;pointer-events:none}
}
@media(max-width:767.98px){.nexa-auth-page{padding:35px 0}.nexa-form-grid{grid-template-columns:1fr}.nexa-auth-page .box-banner-login,.nexa-auth-page .box-register,.nexa-account-card{padding:22px}}
@media(max-width:575.98px){.nexa-account-section{padding:18px 0 36px}.nexa-account-main{padding:16px}.nexa-account-page-head{align-items:flex-start;flex-direction:column}.nexa-account-sidebar{width:min(90vw,300px)}}

/* Dashboard cliente: welcome e accessi rapidi basati esclusivamente su dati reali. */
.nexa-account-dashboard-head{margin-bottom:22px}.nexa-account-eyebrow{margin:0 0 5px!important;color:var(--nexa-muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nexa-account-dashboard-head>div>p:last-child{max-width:680px}
.nexa-account-welcome{position:relative;display:flex;min-width:0;align-items:center;justify-content:space-between;gap:32px;overflow:hidden;margin-bottom:28px;padding:30px;border:1px solid #cfe4dc;border-radius:14px;background:linear-gradient(135deg,#f0faf6 0%,#fff 72%);box-shadow:0 9px 28px rgba(23,37,31,.045)}
.nexa-account-welcome-copy{position:relative;z-index:2;max-width:670px}.nexa-account-welcome h2{margin:9px 0;color:var(--nexa-primary-dark);font-size:28px}.nexa-account-welcome p{margin:0;color:var(--nexa-muted);line-height:1.65}
.nexa-account-type{display:inline-flex;min-height:27px;align-items:center;padding:4px 10px;border:1px solid #b9d8ce;border-radius:999px;background:#fff;color:var(--nexa-primary);font-size:11px;font-weight:800}
.nexa-account-welcome-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}.nexa-account-welcome-actions .btn,.nexa-account-button-secondary{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:10px 18px;border-radius:8px;font-weight:800}
.nexa-account-button-secondary{border:1px solid #b9cbc4;background:#fff;color:var(--nexa-primary-dark)}.nexa-account-button-secondary:hover,.nexa-account-button-secondary:focus-visible{border-color:var(--nexa-primary);background:#edf7f3;color:var(--nexa-primary-dark)}
.nexa-account-welcome-mark{display:grid;flex:0 0 92px;width:92px;height:92px;place-items:center;border:1px solid rgba(7,95,72,.12);border-radius:24px;background:rgba(255,255,255,.72);color:var(--nexa-primary);font-size:38px;transform:rotate(3deg)}
.nexa-account-dashboard-section{margin-bottom:26px}.nexa-account-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.nexa-account-section-head h2{margin:0;color:var(--nexa-primary-dark);font-size:21px}.nexa-account-section-head p{margin:5px 0 0;color:var(--nexa-muted);font-size:13px}
.nexa-account-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.nexa-account-quick-card{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);gap:14px 16px;align-items:start;padding:20px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;color:var(--nexa-text);box-shadow:0 7px 22px rgba(23,37,31,.035);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.nexa-account-quick-card:hover,.nexa-account-quick-card:focus-visible{border-color:#b8d4ca;color:var(--nexa-text);box-shadow:0 11px 28px rgba(23,37,31,.075);transform:translateY(-2px)}.nexa-account-quick-card:focus-visible{outline:3px solid #28a7e6;outline-offset:2px}
.nexa-account-quick-icon{display:grid;flex:0 0 44px;width:44px;height:44px;place-items:center;border-radius:12px;background:#e8f5f0;color:var(--nexa-primary);font-size:19px}.nexa-account-quick-card--accent .nexa-account-quick-icon{background:#e8f8f4;color:#078266}.nexa-account-quick-card--support .nexa-account-quick-icon{background:#edf5fb;color:#2b6f9c}.nexa-account-quick-card--neutral .nexa-account-quick-icon{background:#f0f2f1;color:#52645d}
.nexa-account-quick-copy{display:flex;min-width:0;flex-direction:column;gap:5px}.nexa-account-quick-copy h3{margin:0;color:var(--nexa-primary-dark);font-family:"Chivo",sans-serif;font-size:17px}.nexa-account-quick-copy>span{color:var(--nexa-muted);font-size:12px;line-height:1.55}
.nexa-account-quick-action{grid-column:2;display:inline-flex;align-items:center;gap:6px;color:var(--nexa-primary);font-size:12px;font-weight:800}.nexa-account-quick-action i{font-size:13px;transition:transform .18s ease}.nexa-account-quick-card:hover .nexa-account-quick-action i,.nexa-account-quick-card:focus-visible .nexa-account-quick-action i{transform:translateX(3px)}
.nexa-account-cart-summary{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px 20px;border:1px solid var(--nexa-border);border-radius:12px;background:#f8faf9}.nexa-account-cart-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:11px;background:#fff;color:var(--nexa-primary);font-size:18px;box-shadow:0 3px 12px rgba(23,37,31,.05)}.nexa-account-cart-summary h2{margin:0;color:var(--nexa-primary-dark);font-size:17px}.nexa-account-cart-summary p{margin:3px 0 0;color:var(--nexa-muted);font-size:12px}.nexa-account-cart-link{display:inline-flex;align-items:center;gap:6px;color:var(--nexa-primary);font-size:12px;font-weight:800;white-space:nowrap}.nexa-account-cart-link:hover,.nexa-account-cart-link:focus-visible{color:var(--nexa-primary-dark)}
@media(max-width:767.98px){.nexa-account-welcome{align-items:flex-start;padding:24px}.nexa-account-welcome-mark{flex-basis:72px;width:72px;height:72px;border-radius:19px;font-size:30px}.nexa-account-quick-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.nexa-account-dashboard-head{margin-bottom:18px}.nexa-account-welcome{padding:21px}.nexa-account-welcome h2{font-size:24px}.nexa-account-welcome-mark{display:none}.nexa-account-welcome-actions{align-items:stretch;flex-direction:column}.nexa-account-welcome-actions .btn,.nexa-account-button-secondary{width:100%}.nexa-account-section-head{align-items:flex-start;flex-direction:column}.nexa-account-quick-card{padding:17px}.nexa-account-cart-summary{grid-template-columns:auto minmax(0,1fr);padding:16px}.nexa-account-cart-link{grid-column:2;white-space:normal}}

/* Liste Area Cliente: ordini, servizi e assistenza condividono componenti moderni e accessibili. */
.nexa-account-list-card{min-width:0;overflow:hidden;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}
.nexa-account-table-wrap{max-width:100%;overflow-x:auto}.nexa-account-table{width:100%;min-width:790px;border-collapse:collapse}.nexa-account-table th,.nexa-account-table td{padding:15px 16px;border-bottom:1px solid #e9eeec;text-align:left;vertical-align:middle;white-space:nowrap}.nexa-account-table th{background:#f8faf9;color:var(--nexa-muted);font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.nexa-account-table tbody tr{transition:background .16s ease}.nexa-account-table tbody tr:hover{background:#fbfdfc}.nexa-account-table tbody tr:last-child td{border-bottom:0}.nexa-account-table .is-numeric{text-align:right}.nexa-account-reference{color:var(--nexa-primary-dark);font-weight:800}.nexa-account-table-action{text-align:right!important}.nexa-account-table-action a,.nexa-account-row-link{display:inline-flex;align-items:center;gap:5px;color:var(--nexa-primary);font-size:13px;font-weight:800}.nexa-account-table-action a:hover,.nexa-account-table-action a:focus-visible,.nexa-account-row-link:hover,.nexa-account-row-link:focus-visible{color:var(--nexa-primary-dark)}
.nexa-account-status{display:inline-flex;min-height:27px;align-items:center;padding:4px 10px;border:1px solid #d6dedb;border-radius:999px;background:#f3f5f4;color:#4e5f58;font-size:11px;font-weight:800;line-height:1.25;white-space:nowrap}.nexa-account-status::before{width:6px;height:6px;margin-right:6px;border-radius:50%;background:currentColor;content:""}.nexa-account-status.is-success{border-color:#b9ddce;background:#ecf8f3;color:#087354}.nexa-account-status.is-warning{border-color:#ecd698;background:#fff8e6;color:#805c05}.nexa-account-status.is-danger{border-color:#e7bebb;background:#fff1f0;color:#a12a21}.nexa-account-status.is-info{border-color:#bfd9e8;background:#edf7fc;color:#276d94}.nexa-account-status.is-neutral{border-color:#d6dedb;background:#f3f5f4;color:#4e5f58}
.nexa-account-empty-state{display:flex;min-height:270px;align-items:center;justify-content:center;flex-direction:column;padding:40px 24px;text-align:center}.nexa-account-empty-icon{display:grid;width:58px;height:58px;place-items:center;margin-bottom:16px;border-radius:16px;background:#e8f5f0;color:var(--nexa-primary);font-size:24px}.nexa-account-empty-state h2{margin:0 0 7px;color:var(--nexa-primary-dark);font-size:21px}.nexa-account-empty-state p{max-width:480px;margin:0 0 20px;color:var(--nexa-muted)}
.nexa-order-pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:19px;border-top:1px solid var(--nexa-border);color:var(--nexa-muted);font-size:13px}.nexa-order-pagination a{display:inline-flex;min-height:38px;align-items:center;padding:7px 12px;border:1px solid var(--nexa-border);border-radius:8px;background:#fff;color:var(--nexa-primary-dark);font-weight:800}.nexa-order-pagination a:hover,.nexa-order-pagination a:focus-visible{border-color:#b6cec5;background:#f0f7f4}
.nexa-account-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.nexa-account-service-grid.is-expiry-list{grid-template-columns:minmax(0,1fr)}.nexa-account-service-card{display:flex;min-width:0;min-height:100%;flex-direction:column;padding:22px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}.nexa-account-service-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:17px;border-bottom:1px solid #e9eeec}.nexa-account-service-title{display:flex;min-width:0;align-items:flex-start;gap:12px}.nexa-account-service-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:11px;background:#e8f5f0;color:var(--nexa-primary);font-size:18px}.nexa-account-service-title>div{min-width:0}.nexa-account-service-title p{margin:0 0 3px;color:var(--nexa-muted);font-size:11px;font-weight:800;text-transform:uppercase}.nexa-account-service-title h2{margin:0;color:var(--nexa-primary-dark);font-size:18px;line-height:1.35}.nexa-account-service-title h2 a{color:inherit;overflow-wrap:anywhere}.nexa-account-service-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:15px 0 18px}.nexa-account-service-grid.is-expiry-list .nexa-account-service-data{grid-template-columns:repeat(3,minmax(0,1fr))}.nexa-account-service-data>div{min-width:0;padding:9px 0;border-bottom:1px solid #eef2f0}.nexa-account-service-data dt{color:var(--nexa-muted);font-size:11px;font-weight:700}.nexa-account-service-data dd{margin:3px 0 0;color:var(--nexa-text);font-size:13px;font-weight:700;overflow-wrap:anywhere}.nexa-account-service-actions{display:flex;justify-content:flex-end;margin-top:auto;padding-top:3px}
.nexa-account-expiry-row{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(240px,1fr) auto auto;align-items:center;gap:20px;padding:18px 20px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}
.nexa-account-expiry-service{display:flex;min-width:0;align-items:center;gap:12px}.nexa-account-expiry-service h2{min-width:0;margin:0;color:var(--nexa-primary-dark);font-size:17px;line-height:1.4;overflow-wrap:anywhere}.nexa-account-expiry-service h2 a{color:inherit}.nexa-account-expiry-service h2 span{color:var(--nexa-text);font-weight:600}
.nexa-account-expiry-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0}.nexa-account-expiry-dates div{min-width:0}.nexa-account-expiry-dates dt{color:var(--nexa-muted);font-size:11px;font-weight:700}.nexa-account-expiry-dates dd{margin:3px 0 0;color:var(--nexa-text);font-size:13px;font-weight:800;white-space:nowrap}.nexa-account-expiry-row .nexa-account-service-actions{margin:0;padding:0;white-space:nowrap}
.nexa-account-head-action{display:inline-flex;min-height:44px;align-items:center;gap:7px;white-space:nowrap}.nexa-account-filter-bar{display:flex;align-items:flex-end;gap:12px;margin:0 0 18px;padding:15px 17px;border:1px solid var(--nexa-border);border-radius:11px;background:#fff}.nexa-account-filter-bar label{color:var(--nexa-primary-dark);font-size:12px;font-weight:800}.nexa-account-filter-bar select{min-width:220px;min-height:42px;padding:8px 34px 8px 11px;border:1px solid #becdc7;border-radius:8px;background:#fff;color:var(--nexa-text)}.nexa-account-filter-bar .btn{min-height:42px;padding-block:8px}.nexa-account-ticket-list{display:grid;gap:14px}.nexa-account-ticket-card{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:24px;padding:21px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}.nexa-account-ticket-main{min-width:0}.nexa-account-ticket-badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:11px}.nexa-account-ticket-number{margin:0 0 3px;color:var(--nexa-muted);font-size:11px;font-weight:800;letter-spacing:.045em}.nexa-account-ticket-card h2{margin:0;color:var(--nexa-primary-dark);font-size:18px;line-height:1.4}.nexa-account-ticket-card h2 a{color:inherit;overflow-wrap:anywhere}.nexa-account-ticket-updated{margin:6px 0 0;color:var(--nexa-muted);font-size:12px}.nexa-account-ticket-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:13px 0 0}.nexa-account-ticket-links div{display:flex;min-width:0;gap:6px}.nexa-account-ticket-links dt{color:var(--nexa-muted);font-size:12px;font-weight:700}.nexa-account-ticket-links dd{margin:0;color:var(--nexa-text);font-size:12px;font-weight:700;overflow-wrap:anywhere}.nexa-account-pagination a:hover,.nexa-account-pagination a:focus-visible{border-color:#b6cec5;background:#f0f7f4;color:var(--nexa-primary-dark)}.nexa-account-pagination a[aria-current=page]:hover,.nexa-account-pagination a[aria-current=page]:focus-visible{background:var(--nexa-primary);color:#fff}
@media(max-width:1199.98px){.nexa-account-service-grid{grid-template-columns:1fr}.nexa-account-service-data{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.nexa-account-expiry-row{grid-template-columns:minmax(0,1fr) auto}.nexa-account-expiry-dates{grid-column:1/-1;grid-row:2}.nexa-account-expiry-row>.nexa-account-status{grid-column:2;grid-row:1}.nexa-account-expiry-row>.nexa-account-service-actions{grid-column:2;grid-row:2}}
@media(max-width:767.98px){.nexa-account-service-data,.nexa-account-service-grid.is-expiry-list .nexa-account-service-data{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-account-ticket-card{align-items:flex-start}.nexa-account-ticket-card>.nexa-account-row-link{flex:0 0 auto}}
@media(max-width:575.98px){.nexa-account-list-card{border-radius:10px}.nexa-account-empty-state{min-height:230px;padding:32px 18px}.nexa-order-pagination{align-items:stretch;flex-direction:column;text-align:center}.nexa-order-pagination a{justify-content:center}.nexa-account-service-card{padding:18px}.nexa-account-service-head{flex-direction:column}.nexa-account-service-data,.nexa-account-service-grid.is-expiry-list .nexa-account-service-data{grid-template-columns:1fr}.nexa-account-expiry-row{display:flex;align-items:stretch;flex-direction:column;gap:14px;padding:17px}.nexa-account-expiry-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nexa-account-expiry-row>.nexa-account-status{align-self:flex-start}.nexa-account-expiry-row>.nexa-account-service-actions{align-self:flex-end}.nexa-account-filter-bar{align-items:stretch;flex-direction:column}.nexa-account-filter-bar select,.nexa-account-filter-bar .btn{width:100%;min-width:0}.nexa-account-ticket-card{align-items:flex-start;flex-direction:column;padding:18px}.nexa-account-ticket-card>.nexa-account-row-link{align-self:flex-end}.nexa-account-head-action{width:100%;justify-content:center}}

/* Dettagli e form Area Cliente: componenti condivisi senza dipendenze dal pannello Admin. */
.nexa-account-back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:17px;color:var(--nexa-primary);font-size:13px;font-weight:800}.nexa-account-back-link i{font-size:16px}.nexa-account-back-link:hover,.nexa-account-back-link:focus-visible{color:var(--nexa-primary-dark)}
.nexa-account-detail-hero{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px;padding:25px;border:1px solid #cfe4dc;border-radius:13px;background:linear-gradient(135deg,#f0faf6 0%,#fff 74%);box-shadow:0 8px 24px rgba(23,37,31,.04)}.nexa-account-detail-hero>div:first-child{min-width:0}.nexa-account-detail-hero h1{margin:2px 0 7px;color:var(--nexa-primary-dark);font-size:30px;line-height:1.25;overflow-wrap:anywhere}.nexa-account-detail-hero p:last-child{margin:0;color:var(--nexa-muted);font-size:13px}.nexa-account-detail-badges{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.nexa-account-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:22px}
.nexa-account-detail-card,.nexa-account-form-card{min-width:0;padding:23px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}.nexa-account-detail-card--wide{margin-bottom:22px}.nexa-account-card-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #e9eeec}.nexa-account-card-heading>span{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border-radius:11px;background:#e8f5f0;color:var(--nexa-primary);font-size:17px}.nexa-account-card-heading>div{min-width:0}.nexa-account-card-heading h2{margin:0;color:var(--nexa-primary-dark);font-size:19px;line-height:1.35}.nexa-account-card-heading p{margin:3px 0 0;color:var(--nexa-muted);font-size:12px;line-height:1.5}
.nexa-account-address{display:flex;flex-direction:column;margin:0 0 14px;color:var(--nexa-text);font-style:normal;line-height:1.65}.nexa-account-address strong{color:var(--nexa-primary-dark)}.nexa-account-definition{margin:0}.nexa-account-definition>div{display:grid;grid-template-columns:minmax(125px,.65fr) minmax(0,1fr);gap:13px;padding:9px 0;border-bottom:1px solid #edf2f0}.nexa-account-definition>div:last-child{border-bottom:0}.nexa-account-definition dt{color:var(--nexa-muted);font-size:12px;font-weight:700}.nexa-account-definition dd{min-width:0;margin:0;color:var(--nexa-text);font-size:13px;font-weight:700;overflow-wrap:anywhere}.nexa-account-definition--columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.nexa-account-definition--columns>div{grid-template-columns:1fr}.nexa-account-help{margin:7px 0 0;color:var(--nexa-muted);font-size:12px;font-weight:400;line-height:1.5}.nexa-account-note{margin-top:16px;padding:14px 16px;border-left:4px solid #7eb7a5;border-radius:5px;background:#f3f8f6}.nexa-account-note h3{margin:0 0 5px;color:var(--nexa-primary-dark);font-size:15px}.nexa-account-note p{margin:0;overflow-wrap:anywhere}
.nexa-account-totals{margin:0}.nexa-account-totals>div{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:10px 0;border-bottom:1px solid #e9eeec}.nexa-account-totals dt{color:var(--nexa-muted)}.nexa-account-totals dd{margin:0;color:var(--nexa-primary-dark);font-weight:800;text-align:right;white-space:nowrap}.nexa-account-totals .is-total{margin-top:5px;padding-top:15px;border-bottom:0;border-top:1px solid #cfdad6;font-size:20px}.nexa-account-totals .is-total dt,.nexa-account-totals .is-total dd{color:var(--nexa-primary-dark);font-weight:900}
.nexa-account-detail-section{min-width:0;margin-bottom:22px}.nexa-account-order-items{display:grid;gap:14px}.nexa-account-order-item{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(190px,.35fr);gap:25px;padding:22px;border:1px solid var(--nexa-border);border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(23,37,31,.035)}.nexa-account-order-item-main{min-width:0}.nexa-account-order-item h3{margin:3px 0 8px;color:var(--nexa-primary-dark);font-size:20px}.nexa-account-order-item-main>p:not(.nexa-account-eyebrow){margin:0 0 13px;color:var(--nexa-muted);line-height:1.6}.nexa-account-order-options{margin-top:14px}.nexa-account-order-options>div{grid-template-columns:minmax(140px,.5fr) minmax(0,1fr)}.nexa-account-order-prices{align-self:start;margin:0;padding:14px;border-radius:9px;background:#f6f9f8}.nexa-account-order-prices>div{display:flex;justify-content:space-between;gap:15px;padding:7px 0}.nexa-account-order-prices dt{color:var(--nexa-muted);font-size:12px}.nexa-account-order-prices dd{margin:0;color:var(--nexa-primary-dark);font-size:12px;font-weight:800;white-space:nowrap}.nexa-account-order-prices .is-total{margin-top:5px;padding-top:11px;border-top:1px solid #d6e0dc}.nexa-account-order-prices .is-total dt,.nexa-account-order-prices .is-total dd{font-size:14px;font-weight:900}
.nexa-account-renewal-note{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;border:1px solid #d8c888;border-left:5px solid #a77a0a;border-radius:11px;background:#fff9e9}.nexa-account-renewal-note h2{margin:0 0 5px;color:#654a08;font-size:18px}.nexa-account-renewal-note p{margin:0;color:#725c28;font-size:13px}.nexa-account-renewal-note .btn{flex:0 0 auto}
.nexa-account-form-head{margin-bottom:20px}.nexa-account-form-card{margin-bottom:20px}.nexa-account-profile-form{display:grid;gap:18px}.nexa-account-profile-form .nexa-account-form-card{margin:0}.nexa-account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 19px}.nexa-account-field{display:flex;min-width:0;flex-direction:column}.nexa-account-field.is-wide{grid-column:1/-1}.nexa-account-field label{margin:0 0 6px;color:var(--nexa-primary-dark);font-size:13px;font-weight:800}.nexa-account-field label span{color:var(--nexa-muted);font-size:11px;font-weight:600}.nexa-account-field input,.nexa-account-field select,.nexa-account-field textarea{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #bdcbc5;border-radius:8px;background:#fff;color:var(--nexa-text);font:inherit;transition:border-color .16s ease,box-shadow .16s ease}.nexa-account-field textarea{min-height:130px;resize:vertical;line-height:1.55}.nexa-account-field input:hover,.nexa-account-field select:hover,.nexa-account-field textarea:hover{border-color:#95aea4}.nexa-account-field input:focus,.nexa-account-field select:focus,.nexa-account-field textarea:focus{border-color:var(--nexa-primary);outline:0;box-shadow:0 0 0 3px rgba(7,95,72,.14)}.nexa-account-field input:disabled,.nexa-account-field input[readonly],.nexa-account-field select:disabled,.nexa-account-field textarea:disabled{cursor:not-allowed;background:#f1f3f2;color:#67736e;opacity:1}.nexa-account-safety-help{display:flex;align-items:flex-start;gap:7px;padding:10px 12px;border-radius:7px;background:#f5f8f7}.nexa-account-safety-help i{margin-top:2px;color:var(--nexa-primary)}.nexa-account-actions{display:flex;align-items:center;justify-content:flex-end;gap:11px;margin-top:20px}.nexa-account-actions .btn,.nexa-account-actions .nexa-account-button-secondary{min-height:44px}.nexa-account-password-form{max-width:720px}.nexa-account-password-form .nexa-account-actions{margin-bottom:0}
.nexa-account-ticket-summary{margin-bottom:22px}.nexa-account-conversation{display:flex;min-width:0;flex-direction:column;gap:14px;padding:22px;border:1px solid var(--nexa-border);border-radius:12px;background:#f7f9f8}.nexa-account-message{width:auto;max-width:68%;padding:15px 17px;border:1px solid #dce5e1;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(23,37,31,.035)}.nexa-account-message.is-support{align-self:flex-start;border-bottom-left-radius:4px}.nexa-account-message.is-customer{align-self:flex-end;border-color:#bcdccf;border-bottom-right-radius:4px;background:#eaf7f2}.nexa-account-message header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.nexa-account-message strong{color:var(--nexa-primary-dark);font-size:12px}.nexa-account-message time{color:var(--nexa-muted);font-size:10px;white-space:nowrap}.nexa-account-message p{margin:8px 0 0;line-height:1.6;overflow-wrap:anywhere}.nexa-account-reply-card{margin-top:22px}.nexa-account-closed-note{display:flex;align-items:center;gap:13px;margin-top:22px;padding:17px;border:1px solid #d5dfdb;border-radius:11px;background:#f2f5f4;color:#41544c}.nexa-account-closed-note>i{font-size:20px}.nexa-account-closed-note strong{color:var(--nexa-primary-dark)}.nexa-account-closed-note p{margin:2px 0 0;font-size:12px}
.nexa-payment-card,.nexa-payment-attempts{height:auto}.nexa-payment-current-status{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--nexa-muted);font-size:13px}.nexa-payment-confirmed{margin-bottom:0}.nexa-payment-method{border-color:var(--nexa-border);border-radius:10px;background:#f8faf9}.nexa-payment-method h3{color:var(--nexa-primary-dark)}.nexa-payment-attempts .nexa-account-table-wrap{border:1px solid var(--nexa-border);border-radius:10px}.nexa-payment-attempts .nexa-account-table{min-width:700px}
@media(max-width:1199.98px){.nexa-account-detail-grid{grid-template-columns:1fr}.nexa-account-order-item{grid-template-columns:1fr}.nexa-account-order-prices{width:100%}.nexa-payment-methods{grid-template-columns:1fr}}
@media(max-width:991.98px){.nexa-account-definition--columns{grid-template-columns:1fr}}
@media(max-width:767.98px){.nexa-account-detail-hero{align-items:flex-start;flex-direction:column}.nexa-account-detail-badges{justify-content:flex-start}.nexa-account-form-grid{grid-template-columns:1fr}.nexa-account-field.is-wide{grid-column:auto}.nexa-account-renewal-note{align-items:flex-start;flex-direction:column}.nexa-account-message{max-width:88%}}
@media(max-width:575.98px){.nexa-account-detail-hero,.nexa-account-detail-card,.nexa-account-form-card,.nexa-account-order-item{padding:18px}.nexa-account-detail-hero h1{font-size:25px}.nexa-account-card-heading>span{flex-basis:36px;width:36px;height:36px}.nexa-account-definition>div,.nexa-account-order-options>div{grid-template-columns:1fr;gap:3px}.nexa-account-conversation{padding:15px}.nexa-account-message{max-width:90%;padding:13px 14px}.nexa-account-message header{align-items:flex-start;flex-direction:column;gap:2px}.nexa-account-actions{align-items:stretch;flex-direction:column-reverse}.nexa-account-actions .btn,.nexa-account-actions .nexa-account-button-secondary{width:100%}.nexa-payment-current-status{align-items:flex-start;flex-direction:column}}

/* Checkout e storico ordini mantengono card e tipografia Iori con layout responsive. */
.nexa-checkout-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:30px;align-items:start}.nexa-checkout-page textarea.form-control{min-height:110px}.nexa-terms{display:flex;align-items:flex-start;gap:10px;color:#3b4a45}.nexa-terms input{margin-top:5px}.nexa-checkout-line{display:grid;grid-template-columns:1fr auto;gap:5px 14px;padding:12px 0;border-bottom:1px solid #e4ece8}.nexa-checkout-line small{grid-column:1/-1;color:#66746f}.nexa-order-table-wrap{position:relative;overflow-x:auto}.nexa-order-table{width:100%;border-collapse:collapse}.nexa-order-table th,.nexa-order-table td{padding:13px 10px;border-bottom:1px solid #e4ece8;text-align:left;white-space:nowrap}.nexa-order-pagination{display:flex;align-items:center;justify-content:center;gap:18px}.nexa-order-status{display:flex;flex-direction:column;padding:18px 22px;border-radius:8px;background:#fff2d6;color:#734d00}.nexa-order-detail .nexa-account-card{height:auto}.nexa-order-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;padding:22px;border:1px solid #e0e9e5;border-radius:10px;background:#fff;margin-bottom:16px}.nexa-order-line>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.nexa-order-totals{position:static;margin-left:auto;max-width:430px}
@media(max-width:991.98px){.nexa-checkout-grid{grid-template-columns:1fr}.nexa-checkout-grid aside{order:2}}
@media(max-width:575.98px){.nexa-order-line{grid-template-columns:1fr}.nexa-order-line>div:last-child{align-items:flex-start}.nexa-order-table th,.nexa-order-table td{padding:10px 8px}}

/* Metodi ed esiti pagamento riutilizzano card Iori senza caricare SDK o widget globali. */
.nexa-payment-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.nexa-payment-method{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid #dfe8e4;border-radius:10px;background:#f8fbfa}.nexa-payment-method p{flex:1}.nexa-payment-method form{margin:0}.nexa-payment-method button{width:100%}.nexa-payment-method button:disabled{cursor:not-allowed;opacity:.58}.nexa-payment-confirmed{padding:16px;border-radius:8px;background:#e2f6ed;color:#024430}.nexa-bank-details{padding:18px;border-left:4px solid #f4b942;background:#fff8e8}.nexa-bank-details p{margin-bottom:6px;overflow-wrap:anywhere}.nexa-payment-attempts form{margin:0}.nexa-payment-result{text-align:center}.nexa-payment-result h2{color:#024430}
@media(max-width:991.98px){.nexa-payment-methods{grid-template-columns:1fr}}
@media(max-width:575.98px){.nexa-payment-method{padding:18px}.nexa-payment-attempts .nexa-order-table-wrap{max-width:100%}}

/* Servizi cliente: card fluide, date leggibili e stato distinguibile anche senza colore. */
.nexa-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.nexa-service-card{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.nexa-service-badge{display:inline-flex;padding:5px 10px;border:1px solid #9db2aa;border-radius:999px;background:#edf4f1;color:#024430;font-size:13px;font-weight:700;text-transform:capitalize}.nexa-service-expiring{border-color:#c08700;background:#fff6d8;color:#6a4900}.nexa-service-expired,.nexa-service-suspended,.nexa-service-cancelled{border-color:#b65b5b;background:#fff0f0;color:#7b1f1f}.nexa-service-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:12px;margin:0}.nexa-service-dates div{padding:10px;border-bottom:1px solid #e4ece8}.nexa-service-dates dt{font-weight:700}.nexa-service-dates dd{margin:3px 0 0;overflow-wrap:anywhere}@media(max-width:767.98px){.nexa-service-grid,.nexa-service-dates{grid-template-columns:1fr}}

/* Pannello amministrativo Nexa: layout autonomo, tabelle confinate e menu mobile accessibile. */
.nexa-admin-body{margin:0;background:#f4f8f6;color:#1c2b27}.nexa-admin-topbar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:24px;min-height:82px;padding:8px 24px;border-bottom:1px solid #dce7e2;background:#e7f6f5}.nexa-admin-topbar img{display:block;width:220px;max-width:100%;height:auto}.nexa-admin-topbar span{margin-left:auto;font-weight:600}.nexa-admin-topbar button{display:none;padding:10px 14px;border:1px solid #024430;border-radius:7px;background:#fff;color:#024430;font-weight:700}.nexa-admin-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 82px)}.nexa-admin-sidebar{background:#024430}.nexa-admin-sidebar nav{position:sticky;top:98px;display:flex;flex-direction:column;padding:20px 12px}.nexa-admin-sidebar a{padding:12px 16px;border-radius:7px;color:#fff;font-weight:600}.nexa-admin-sidebar a:hover,.nexa-admin-sidebar a:focus-visible{background:#0b5d48;color:#fff}.nexa-admin-main{min-width:0;padding:32px}.nexa-admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.nexa-admin-page-head h1{margin:0;color:#024430}.nexa-admin-eyebrow{margin:0 0 5px;color:#5c716a;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.nexa-admin-card{height:auto;margin-bottom:24px;padding:24px;border:1px solid #dce7e2;border-radius:12px;background:#fff;box-shadow:0 4px 18px rgba(2,68,48,.04)}.nexa-admin-card h2{color:#024430}.nexa-admin-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.nexa-admin-kpis article{display:flex;flex-direction:column;padding:20px;border:1px solid #dce7e2;border-radius:12px;background:#fff}.nexa-admin-kpis strong{margin-top:8px;color:#024430;font-size:28px}.nexa-admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.nexa-admin-table-wrap{max-width:100%;overflow-x:auto}.nexa-admin-table-wrap table{width:100%;border-collapse:collapse}.nexa-admin-table-wrap th,.nexa-admin-table-wrap td{padding:12px 10px;border-bottom:1px solid #e4ece8;text-align:left;vertical-align:top;white-space:nowrap}.nexa-admin-table-wrap th{color:#024430}.nexa-admin-filters,.nexa-admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:16px;margin-bottom:24px;padding:20px;border:1px solid #dce7e2;border-radius:12px;background:#fff}.nexa-admin-card label,.nexa-admin-filters label{display:flex;flex-direction:column;gap:6px;color:#024430;font-weight:600}.nexa-admin-card input,.nexa-admin-card select,.nexa-admin-card textarea,.nexa-admin-filters input,.nexa-admin-filters select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #bdcbc5;border-radius:6px;background:#fff}.nexa-admin-card textarea{min-height:110px}.nexa-admin-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;margin:8px 0}.nexa-admin-check input{width:auto;min-height:0}.nexa-admin-definition>div{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid #edf2f0}.nexa-admin-definition dt{font-weight:700}.nexa-admin-list{margin:0;padding:0;list-style:none}.nexa-admin-list li{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #edf2f0}.nexa-admin-list span,.nexa-admin-list small{overflow-wrap:anywhere}.nexa-admin-order-line{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #e4ece8}.nexa-admin-order-line>div{display:flex;flex-direction:column}.nexa-admin-pagination{display:flex;justify-content:center;gap:8px;margin:24px}.nexa-admin-pagination a{padding:8px 12px;border:1px solid #cbd8d2;border-radius:6px;background:#fff}.nexa-admin-pagination a[aria-current=page]{background:#024430;color:#fff}.nexa-admin-permissions{columns:2;padding-left:20px}.nexa-admin-card details{min-width:210px}.nexa-admin-card summary{cursor:pointer;color:#024430;font-weight:700}

/* Ordina la scheda prodotto admin in sezioni leggibili e allineate. */
.nexa-admin-form-grid{align-items:start}.nexa-admin-form-grid>label:not(.nexa-admin-check){height:100%}.nexa-admin-form-grid>.btn,.nexa-admin-form-grid>button{align-self:end;min-height:42px}.nexa-admin-product-form{display:grid;gap:24px}.nexa-admin-product-form .nexa-admin-card{margin:0}.nexa-admin-product-section{min-width:0}.nexa-admin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #e4ece8}.nexa-admin-section-head>div{display:flex;align-items:center;gap:10px}.nexa-admin-section-head h2{margin:0;font-size:24px}.nexa-admin-section-head p{max-width:620px;margin:3px 0 0;color:#65756f}.nexa-admin-section-letter{display:inline-grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:50%;background:#e7f6f1;color:#024430;font-weight:800}.nexa-admin-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:20px}.nexa-admin-product-grid>label{height:100%}.nexa-admin-field-help{display:block;color:#65756f;font-size:12px;font-weight:400;line-height:1.45}.nexa-admin-product-options,.nexa-admin-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 0;padding:0;border:0}.nexa-admin-check-card{display:flex!important;min-height:78px;flex-direction:row!important;align-items:flex-start;gap:11px!important;padding:15px;border:1px solid #dce7e2;border-radius:9px;background:#f8fbfa;cursor:pointer}.nexa-admin-check-card input{width:auto!important;min-height:0!important;margin-top:3px}.nexa-admin-check-card span{display:flex;min-width:0;flex-direction:column;gap:3px}.nexa-admin-check-card small{color:#65756f;font-weight:400;line-height:1.4}.nexa-admin-inline-check{align-self:end;height:auto!important}.nexa-admin-media-editor{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:start;gap:24px}.nexa-admin-media-preview{display:grid;min-height:190px;place-items:center;overflow:hidden;border:1px dashed #aebfb7;border-radius:10px;background:#f4f8f6;color:#65756f;text-align:center}.nexa-admin-media-preview img{display:block;width:100%;height:220px;object-fit:cover}.nexa-admin-media-fields{display:grid;gap:18px}.nexa-admin-media-fields input[type=file]{padding:8px;background:#f8fbfa}.nexa-admin-remove-image{justify-self:start;border-color:#9d2b2b;color:#7b1f1f}.nexa-admin-content-fields{display:grid;gap:20px}.nexa-admin-content-fields label{margin:0}.nexa-admin-content-fields textarea{resize:vertical}.nexa-admin-category-field{min-width:0;margin:0;padding:0;border:0}.nexa-admin-category-field legend{color:#024430;font-weight:700}.nexa-admin-current-prices{margin-top:22px;padding:18px;border-radius:9px;background:#f4f8f6}.nexa-admin-current-prices h3{margin:0 0 10px;font-size:18px}.nexa-admin-current-prices ul{display:grid;gap:7px;margin:0 0 10px;padding-left:20px}.nexa-admin-current-prices span{margin-left:8px;color:#5c716a;font-size:12px}.nexa-admin-direct-box,.nexa-admin-price-warning{margin-bottom:24px;padding:20px;border:1px solid #9bcbbd;border-left:5px solid #0b7a5c;border-radius:10px;background:#eefaf5}.nexa-admin-direct-box h2{margin:0 0 8px;color:#024430;font-size:22px}.nexa-admin-direct-box p{margin:0 0 12px}.nexa-admin-copy-row{display:flex;gap:10px}.nexa-admin-copy-row input{min-width:0;flex:1;padding:9px 11px;border:1px solid #9fb6ad;border-radius:7px;background:#fff}.nexa-admin-copy-feedback{min-height:20px;margin:7px 0 0!important;color:#075f48;font-weight:700}.nexa-admin-price-warning{border-color:#e2c36d;border-left-color:#b88314;background:#fff8e8;color:#5e4200}.nexa-admin-form-actions{display:flex;align-items:center;gap:12px;padding:16px 20px;border:1px solid #dce7e2;border-radius:10px;background:#fff}.nexa-admin-danger-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:20px 24px;border:1px solid #e1b6b6;border-radius:10px;background:#fff7f7}.nexa-admin-danger-action p{margin:0}.nexa-admin-danger-action .btn{border-color:#9d2b2b;color:#7b1f1f}
@media(max-width:1399.98px){.nexa-admin-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.nexa-admin-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-admin-product-options,.nexa-admin-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-admin-media-editor{grid-template-columns:minmax(180px,260px) minmax(0,1fr)}}
@media(max-width:575.98px){.nexa-admin-section-head,.nexa-admin-danger-action{align-items:flex-start;flex-direction:column}.nexa-admin-product-grid,.nexa-admin-product-options,.nexa-admin-category-grid,.nexa-admin-media-editor{grid-template-columns:1fr}.nexa-admin-media-preview{min-height:160px}.nexa-admin-copy-row,.nexa-admin-form-actions{align-items:stretch;flex-direction:column}.nexa-admin-copy-row .btn,.nexa-admin-form-actions .btn{width:100%}.nexa-admin-danger-action .btn{width:100%}}
.nexa-admin-grid-2>*{min-width:0}
.nexa-admin-definition dt,.nexa-admin-definition dd{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.nexa-ticket-head,.nexa-ticket-detail-head,.nexa-ticket-meta,.nexa-ticket-message header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.nexa-ticket-head{margin-bottom:24px}.nexa-ticket-filter{display:flex;align-items:end;gap:12px;margin-bottom:24px}.nexa-ticket-filter label,.nexa-ticket-form label{font-weight:700}.nexa-ticket-filter select{min-width:190px}.nexa-ticket-list,.nexa-ticket-thread{display:grid;gap:18px}.nexa-ticket-list h2{margin:10px 0}.nexa-ticket-meta{justify-content:flex-start;flex-wrap:wrap}.nexa-ticket-meta span{padding:5px 10px;border:1px solid #bcd6cd;border-radius:999px;background:#f4faf7;color:#024430;font-weight:700}.nexa-ticket-form{display:grid;gap:10px}.nexa-ticket-form input,.nexa-ticket-form select,.nexa-ticket-form textarea{width:100%;padding:10px 12px;border:1px solid #bdcbc5;border-radius:7px;background:#fff}.nexa-ticket-message{min-width:0;padding:18px;border:1px solid #dce7e2;border-radius:12px;background:#fff}.nexa-ticket-message-support{border-left:4px solid #024430}.nexa-ticket-message-customer{border-left:4px solid #9bcbbd}.nexa-ticket-message p{margin:12px 0 0;overflow-wrap:anywhere;white-space:normal}.nexa-ticket-message time,.nexa-ticket-message header span{color:#5c716a;font-size:13px}.nexa-ticket-internal{border-left:4px solid #b88314;background:#fff8e8}.nexa-ticket-detail-head{margin-bottom:24px}
.nexa-ticket-list .nexa-account-card,.nexa-ticket-detail-head+.nexa-account-card,.nexa-ticket-form.nexa-account-card{height:auto}.nexa-admin-card .nexa-ticket-form .btn{background:#024430;color:#fff}
@media(max-width:1199.98px){.nexa-admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.nexa-admin-topbar button{display:block}.nexa-admin-topbar span{display:none}.nexa-admin-shell{grid-template-columns:1fr}.nexa-admin-sidebar{position:fixed;inset:82px auto 0 0;z-index:999;width:min(300px,85vw);transform:translateX(-105%);transition:transform .2s ease}.nexa-admin-sidebar.is-open{transform:translateX(0)}.nexa-admin-sidebar nav{top:0}.nexa-admin-main{padding:24px}.nexa-admin-grid-2{grid-template-columns:1fr}.nexa-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.nexa-admin-topbar{min-height:72px;padding:6px 12px}.nexa-admin-topbar img{width:150px}.nexa-admin-sidebar{inset-block-start:72px}.nexa-admin-main{padding:18px 12px}.nexa-admin-page-head{align-items:flex-start;flex-direction:column}.nexa-admin-kpis{grid-template-columns:1fr}.nexa-admin-card{padding:18px}.nexa-admin-list li,.nexa-admin-order-line,.nexa-ticket-head,.nexa-ticket-detail-head,.nexa-ticket-message header{flex-direction:column}.nexa-admin-definition>div{grid-template-columns:1fr}.nexa-admin-permissions{columns:1}.nexa-ticket-filter{align-items:stretch;flex-direction:column}.nexa-ticket-filter select{min-width:0;width:100%}}

/* Guida amministrativa facile: contenuti statici leggibili, link contestuali e avvisi espliciti. */
.nexa-admin-help-menu{display:flex;align-items:center;gap:8px;margin-top:10px;border-top:1px solid rgba(255,255,255,.25)}.nexa-admin-help-menu span,.nexa-admin-context-help span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;color:#024430;font-weight:800}.nexa-admin-context-help{display:flex;justify-content:flex-end;margin:0 0 14px}.nexa-admin-context-help a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #8eb6a9;border-radius:999px;background:#fff;color:#024430;font-weight:700}.nexa-admin-help-head p{max-width:720px;margin:8px 0 0}.nexa-admin-help-start,.nexa-admin-help-index,.nexa-admin-help-chapter{scroll-margin-top:105px;margin-bottom:24px;padding:24px;border:1px solid #dce7e2;border-radius:12px;background:#fff}.nexa-admin-help-start{border-left:6px solid #0b7a5c;background:#eefaf5}.nexa-admin-help-start ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-left:22px}.nexa-admin-help-index ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 24px;margin:0;padding-left:24px}.nexa-admin-help-index a{display:inline-block;padding:4px 0;font-weight:700}.nexa-admin-help-chapter h2,.nexa-admin-help-index h2,.nexa-admin-help-start h2{margin-top:0;color:#024430}.nexa-admin-help-chapter h2{padding-bottom:10px;border-bottom:1px solid #e4ece8}.nexa-admin-help-chapter li{margin-bottom:7px}.nexa-admin-help-chapter dl{display:grid;grid-template-columns:minmax(150px,.4fr) minmax(0,1fr);gap:0;margin:16px 0}.nexa-admin-help-chapter dt,.nexa-admin-help-chapter dd{padding:9px;border-bottom:1px solid #e8efec}.nexa-admin-help-chapter dt{font-weight:800}.nexa-admin-help-chapter dd{margin:0}.nexa-admin-help-warning{border-left:6px solid #b88314;background:#fffaf0}.nexa-admin-help-danger{border-left:6px solid #a83a3a;background:#fff5f5}.nexa-admin-help-chapter details{min-width:0;padding:13px 0;border-bottom:1px solid #e4ece8}.nexa-admin-help-chapter summary{font-size:16px}.nexa-admin-help-chapter details p{margin:10px 0 0}.nexa-admin-help-top{text-align:right}.nexa-admin-field-help{display:block;margin-top:2px;color:#5c716a;font-size:12px;font-weight:400;line-height:1.4}.nexa-admin-safety-note{padding:12px 14px;border-left:4px solid #b88314;background:#fff8e8;color:#5e4200}
@media(max-width:991.98px){.nexa-admin-help-start ol,.nexa-admin-help-index ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.nexa-admin-context-help{justify-content:flex-start}.nexa-admin-help-start,.nexa-admin-help-index,.nexa-admin-help-chapter{scroll-margin-top:85px;padding:18px}.nexa-admin-help-start ol,.nexa-admin-help-index ol{grid-template-columns:1fr}.nexa-admin-help-chapter dl{grid-template-columns:1fr}.nexa-admin-help-chapter dd{padding-top:0}.nexa-admin-help-head .btn{width:100%}}

/* Flusso dominio Hosting: usa soltanto il foglio Nexa, senza alterare Iori. */
.nexa-domain-flow {
  display: grid;
  grid-column: 1 / -1;
  gap: 12px;
  margin-bottom: 18px;
}

.nexa-domain-required {
  margin: 0;
  padding: 12px 14px;
  border-left: 4px solid #0b7a5c;
  background: #eefaf5;
  color: #26443b;
  line-height: 1.45;
}

.nexa-domain-step {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-right: 5px;
  border-radius: 50%;
  background: #024430;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.nexa-domain-next-step {
  margin: 12px 0 6px;
  font-weight: 700;
}

.nexa-domain-check-row {
  display: flex;
  align-items: stretch;
  gap: 10px;
}

.nexa-domain-check-row input {
  flex: 1 1 260px;
  min-width: 0;
}

.nexa-domain-check-row .btn {
  flex: 0 0 auto;
  padding-right: 18px;
  padding-left: 18px;
  border: 1px solid #bfd2cb;
  background: #f8fbfa;
}

.nexa-domain-result:empty {
  display: none;
}

.nexa-domain-result.is-success {
  color: #047857;
  font-weight: 700;
}

.nexa-domain-result.is-warning,
.nexa-domain-price-note {
  color: #8a4b08;
}

.nexa-domain-choices {
  padding: 16px;
  border: 1px solid #d8e5e1;
  border-radius: 10px;
  background: #f8fbfa;
}

.nexa-domain-choices[hidden] {
  display: none;
}

.nexa-domain-choices .btn {
  margin: 4px 8px 4px 0;
}

.nexa-domain-choices [aria-pressed="true"] {
  box-shadow: 0 0 0 3px rgba(0, 154, 118, .18);
}

@media (max-width: 575.98px) {
  .nexa-domain-check-row {
    align-items: stretch;
    flex-direction: column;
  }

  .nexa-domain-check-row input,
  .nexa-domain-check-row .btn,
  .nexa-domain-choices .btn {
    width: 100%;
  }

  .nexa-domain-check-row input {
    flex: 0 0 auto;
  }
}

/* Evidenzia separatamente Hosting e dominio senza duplicare righe di carrello. */
.nexa-cart-components {
  display: grid;
  gap: 4px;
  max-width: 520px;
  margin: 0 0 14px;
  padding: 10px 12px;
  border-left: 3px solid #0b7a5c;
  background: #f4faf7;
}

.nexa-cart-components p {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin: 0;
}

.nexa-cart-components strong {
  color: #024430;
  white-space: nowrap;
}

@media (max-width: 575.98px) {
  .nexa-cart-components p {
    flex-direction: column;
    gap: 1px;
  }
}
.nexa-discount-box{margin-top:14px;border-top:1px solid #e3ebe7;padding-top:10px;color:#52645e}.nexa-discount-box summary{cursor:pointer;font-size:13px;font-weight:600;color:#52645e}.nexa-discount-box summary:hover,.nexa-discount-box summary:focus-visible{color:#024430}.nexa-discount-content{padding-top:10px}.nexa-discount-content p{margin:0 0 8px;font-size:13px}.nexa-discount-form>div{display:flex;align-items:stretch;gap:6px}.nexa-discount-form .form-control{min-width:0;min-height:38px;padding:7px 9px;font-size:13px}.nexa-discount-form .btn{min-height:38px;padding:7px 13px;white-space:nowrap;font-size:13px}.nexa-discount-content .btn-link{min-height:auto;padding:0;font-size:12px}
.nexa-admin-fieldset{margin:22px 0;padding:18px;border:1px solid #dce7e2;border-radius:10px}.nexa-admin-fieldset legend{padding:0 8px;color:#024430;font-weight:700}.nexa-admin-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 18px;margin:10px 0 18px}.nexa-admin-card .nexa-admin-check-grid label,.nexa-admin-card .nexa-admin-fieldset>label{display:flex;flex-direction:row;align-items:center;gap:8px}.nexa-admin-card .nexa-admin-check-grid input,.nexa-admin-card .nexa-admin-fieldset>label input{width:auto;min-height:0;flex:0 0 auto}
@media(max-width:575px){.nexa-discount-form>div{align-items:stretch;flex-direction:column}}
.nexa-admin-simone-history{display:grid;gap:1rem}.nexa-admin-simone-message{max-width:80%;padding:1rem;border:1px solid #dce8e3;border-radius:12px;background:#f7faf9}.nexa-admin-simone-message--assistant{margin-left:auto;background:#eaf7f2}.nexa-admin-simone-message header,.nexa-admin-simone-message footer{display:flex;justify-content:space-between;gap:1rem;color:#587069;font-size:.85rem}.nexa-admin-simone-message p{margin:.75rem 0;white-space:normal}@media(max-width:767px){.nexa-admin-simone-message{max-width:100%}}

/* Icone locali condivise dal menu desktop e mobile. */
.nexa-site-header .main-menu > li > a,
.nexa-site-header .main-menu .sub-menu li > a,
.mobile-header-wrapper-style .mobile-menu li > a {
  display: flex;
  align-items: center;
  gap: 5px;
}

.nexa-menu-icon {
  display: block;
  width: 13px;
  height: 22px;
  flex: 0 0 22px;
  object-fit: contain;
}

.nexa-menu-icon--child {
  width: 22px;
  height: 22px;
  flex-basis: 22px;
}

.nexa-site-header .main-menu .sub-menu li > a span,
.mobile-header-wrapper-style .mobile-menu li > a span {
  min-width: 0;
}

/* Nasconde soltanto i chevron dei sottomenu, mantenendo attivi i dropdown. */
.nexa-site-header .main-menu > li.has-children > a::after {
  content: none !important;
  display: none !important;
  background-image: none !important;
}

.mobile-header-wrapper-style .mobile-menu li.has-children > .menu-expand svg {
  display: none;
}
.nexa-admin-autocomplete{display:grid;gap:4px;position:relative;z-index:20;max-height:260px;overflow:auto;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 8px 24px rgba(2,68,48,.12)}
.nexa-admin-autocomplete:empty{display:none}
.nexa-admin-autocomplete-item{width:100%;padding:10px 12px;border:0;border-bottom:1px solid #e1ebe7;background:#fff;color:#024430;text-align:left;cursor:pointer}
.nexa-admin-autocomplete-item:hover,.nexa-admin-autocomplete-item:focus{background:#eef8f4}
.nexa-admin-order-totals{max-width:440px;margin:24px 0;padding:18px;border:1px solid #d5e3de;border-radius:10px;background:#f7fbf9}
.nexa-admin-order-totals p{display:flex;justify-content:space-between;gap:20px;margin:6px 0}
[data-order-lines] input,[data-order-lines] select{min-width:110px;max-width:220px}

/* Fase 1 Admin: guscio SaaS, sidebar fissa/collassabile e topbar responsive. */
.nexa-admin-body{
  --admin-primary:#075f48;
  --admin-primary-dark:#024430;
  --admin-accent:#06c995;
  --admin-bg:#f5f6f8;
  --admin-surface:#fff;
  --admin-border:#e4e8e6;
  --admin-text:#17251f;
  --admin-muted:#66756f;
  --admin-success:#16835f;
  --admin-warning:#b7791f;
  --admin-danger:#b42318;
  --admin-sidebar-width:240px;
  --admin-sidebar-collapsed-width:72px;
  --admin-topbar-height:72px;
  min-width:320px;
  margin:0;
  background:var(--admin-bg);
  color:var(--admin-text);
  font-family:"Manrope",sans-serif;
}
.nexa-admin-shell{display:block;min-height:100vh}
.nexa-admin-sidebar{
  position:fixed;
  inset:0 auto 0 0;
  z-index:1030;
  display:flex;
  width:var(--admin-sidebar-width);
  min-height:100vh;
  flex-direction:column;
  overflow-x:hidden;
  overflow-y:auto;
  border-right:1px solid var(--admin-border);
  background:var(--admin-surface);
  box-shadow:4px 0 20px rgba(23,37,31,.025);
  transition:width .22s ease,transform .22s ease;
}
.nexa-admin-sidebar-brand{display:flex;min-height:var(--admin-topbar-height);align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--admin-border)}
.nexa-admin-brand-link{display:flex;min-width:0;flex:1;align-items:center;gap:9px;color:var(--admin-primary-dark)}
.nexa-admin-brand-link img{display:block;width:158px;max-width:100%;height:auto;object-fit:contain}
.nexa-admin-brand-copy{padding-top:2px;font-family:"Chivo",sans-serif;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.nexa-admin-sidebar-collapse,.nexa-admin-icon-button{display:inline-flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;padding:0;border:1px solid var(--admin-border);border-radius:9px;background:var(--admin-surface);color:var(--admin-primary-dark);font-size:18px;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}
.nexa-admin-sidebar-collapse:hover,.nexa-admin-sidebar-collapse:focus-visible,.nexa-admin-icon-button:hover,.nexa-admin-icon-button:focus-visible{border-color:#b9cbc4;background:#edf7f3;color:var(--admin-primary)}
.nexa-admin-sidebar .nexa-admin-sidebar-nav{position:static;top:auto;display:block;flex:1;padding:18px 10px}
.nexa-admin-menu-group+.nexa-admin-menu-group{margin-top:18px}
.nexa-admin-menu-heading{margin:0 10px 6px;color:#94a09b;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.nexa-admin-sidebar .nexa-admin-sidebar-link{display:flex;min-height:42px;align-items:center;gap:12px;margin:2px 0;padding:9px 12px;border-radius:9px;color:#4e5d57;font-size:13px;font-weight:600;line-height:1.3;white-space:nowrap;transition:background .18s ease,color .18s ease}
.nexa-admin-sidebar .nexa-admin-sidebar-link i{display:inline-flex;flex:0 0 20px;align-items:center;justify-content:center;color:#718079;font-size:17px}
.nexa-admin-sidebar .nexa-admin-sidebar-link:hover,.nexa-admin-sidebar .nexa-admin-sidebar-link:focus-visible{background:#f0f6f3;color:var(--admin-primary-dark)}
.nexa-admin-sidebar .nexa-admin-sidebar-link:hover i,.nexa-admin-sidebar .nexa-admin-sidebar-link:focus-visible i{color:var(--admin-primary)}
.nexa-admin-sidebar .nexa-admin-sidebar-link.is-active{background:#e8f5f0;color:var(--admin-primary-dark);font-weight:800}
.nexa-admin-sidebar .nexa-admin-sidebar-link.is-active i{color:var(--admin-primary)}
.nexa-admin-sidebar-footer{padding:10px;border-top:1px solid var(--admin-border)}
.nexa-admin-workspace{min-width:0;min-height:100vh;margin-left:var(--admin-sidebar-width);transition:margin-left .22s ease}
.nexa-admin-topbar{
  position:sticky;
  top:0;
  z-index:1020;
  display:flex;
  min-height:var(--admin-topbar-height);
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:10px 24px;
  border-bottom:1px solid var(--admin-border);
  background:rgba(255,255,255,.96);
  box-shadow:0 3px 14px rgba(23,37,31,.025);
  backdrop-filter:blur(10px);
}
.nexa-admin-topbar span{margin-left:0}
.nexa-admin-topbar-start{display:flex;min-width:0;align-items:center;gap:14px}
.nexa-admin-topbar .nexa-admin-icon-button{display:inline-flex}
.nexa-admin-topbar-title{display:flex;min-width:0;flex-direction:column}
.nexa-admin-topbar-title span{color:var(--admin-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.nexa-admin-topbar-title strong{overflow:hidden;color:var(--admin-primary-dark);font-family:"Chivo",sans-serif;font-size:18px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.nexa-admin-account-menu{position:relative;min-width:0}
.nexa-admin-account-menu>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer}
.nexa-admin-account-menu>summary::-webkit-details-marker{display:none}
.nexa-admin-avatar{display:inline-flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:var(--admin-primary-dark);color:#fff;font-family:"Chivo",sans-serif;font-weight:800}
.nexa-admin-account-copy{display:flex;max-width:230px;flex-direction:column;line-height:1.25;text-align:right}
.nexa-admin-account-copy strong{overflow:hidden;color:var(--admin-text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.nexa-admin-account-copy small{color:var(--admin-muted);font-size:11px}
.nexa-admin-account-menu>summary>i{color:var(--admin-muted);font-size:13px}
.nexa-admin-account-dropdown{position:absolute;top:calc(100% + 12px);right:0;z-index:1040;width:240px;padding:8px;border:1px solid var(--admin-border);border-radius:11px;background:var(--admin-surface);box-shadow:0 14px 35px rgba(23,37,31,.12)}
.nexa-admin-account-dropdown p{display:flex;flex-direction:column;margin:0 0 6px;padding:10px 11px;border-bottom:1px solid var(--admin-border)}
.nexa-admin-account-dropdown p strong{overflow-wrap:anywhere;font-size:12px}.nexa-admin-account-dropdown p small{color:var(--admin-muted)}
.nexa-admin-account-dropdown a,.nexa-admin-account-dropdown button{display:flex;width:100%;align-items:center;gap:10px;padding:10px 11px;border:0;border-radius:7px;background:transparent;color:var(--admin-text);font:inherit;font-size:13px;text-align:left;cursor:pointer}
.nexa-admin-account-dropdown a:hover,.nexa-admin-account-dropdown a:focus-visible,.nexa-admin-account-dropdown button:hover,.nexa-admin-account-dropdown button:focus-visible{background:#eef5f2;color:var(--admin-primary-dark)}
.nexa-admin-account-dropdown form{margin:0;border-top:1px solid var(--admin-border);padding-top:5px}
.nexa-admin-account-dropdown button{color:var(--admin-danger)}
.nexa-admin-main{min-width:0;padding:24px;background:var(--admin-bg)}
.nexa-admin-sidebar-overlay{display:none}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar{width:var(--admin-sidebar-collapsed-width)}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-workspace{margin-left:var(--admin-sidebar-collapsed-width)}
.nexa-admin-body.is-admin-sidebar-collapsed [data-admin-label]{display:none}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar-brand{justify-content:center;padding-inline:10px}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-brand-link{display:none}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar-collapse i{transform:rotate(180deg)}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar .nexa-admin-sidebar-link{justify-content:center;padding-inline:10px}
.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar .nexa-admin-sidebar-link i{font-size:18px}
.nexa-admin-sidebar-overlay[hidden]{display:none}

@media(max-width:991.98px){
  .nexa-admin-sidebar{inset:0 auto 0 0;width:min(290px,86vw);transform:translateX(-105%);box-shadow:12px 0 32px rgba(23,37,31,.16)}
  .nexa-admin-sidebar.is-open{transform:translateX(0)}
  .nexa-admin-sidebar-collapse{display:none}
  .nexa-admin-workspace,.nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-workspace{margin-left:0}
  .nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar{width:min(290px,86vw)}
  .nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-brand-link{display:flex}
  .nexa-admin-body.is-admin-sidebar-collapsed span[data-admin-label]{display:inline}
  .nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-menu-heading[data-admin-label]{display:block}
  .nexa-admin-body.is-admin-sidebar-collapsed .nexa-admin-sidebar .nexa-admin-sidebar-link{justify-content:flex-start;padding-inline:12px}
  .nexa-admin-sidebar-overlay{position:fixed;inset:0;z-index:1025;display:block;width:100%;height:100%;padding:0;border:0;background:rgba(12,24,19,.38);cursor:pointer}
  .nexa-admin-body.is-admin-menu-open{overflow:hidden}
  .nexa-admin-topbar{padding-inline:18px}
  .nexa-admin-topbar .nexa-admin-topbar-title span{display:block}
  .nexa-admin-topbar .nexa-admin-avatar{display:inline-flex}
  .nexa-admin-topbar .nexa-admin-account-copy{display:flex}
  .nexa-admin-main{padding:24px 18px}
}
@media(max-width:575.98px){
  .nexa-admin-body{--admin-topbar-height:64px}
  .nexa-admin-topbar{min-height:var(--admin-topbar-height);padding:8px 12px}
  .nexa-admin-topbar-title span,.nexa-admin-account-copy,.nexa-admin-account-menu>summary>i{display:none}
  .nexa-admin-topbar-title strong{max-width:150px;font-size:16px}
  .nexa-admin-avatar{width:36px;height:36px;flex-basis:36px}
  .nexa-admin-main{padding:18px 12px}
}

/* Fase 2 Admin: dashboard costruita esclusivamente con metriche reali disponibili. */
.nexa-admin-dashboard-head{margin-bottom:22px}
.nexa-admin-dashboard-head>div>p:last-child{margin:7px 0 0;color:var(--admin-muted);font-size:14px}
.nexa-admin-dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}
.nexa-admin-stat-card{display:flex;min-width:0;min-height:180px;flex-direction:column;padding:22px;border:1px solid var(--admin-border);border-radius:12px;background:var(--admin-surface);box-shadow:0 8px 24px rgba(23,37,31,.04)}
.nexa-admin-stat-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;color:var(--admin-muted);font-size:13px;font-weight:700}
.nexa-admin-stat-icon{display:inline-flex;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;background:#e8f5f0;color:var(--admin-primary);font-size:19px}
.nexa-admin-stat-card>strong{margin-top:auto;color:var(--admin-primary-dark);font-family:"Chivo",sans-serif;font-size:32px;line-height:1.12;overflow-wrap:anywhere}
.nexa-admin-stat-card>small{margin-top:6px;color:var(--admin-muted);font-size:12px;line-height:1.4}
.nexa-admin-stat-card--accent .nexa-admin-stat-icon{background:#e5f7f6;color:#087b78}
.nexa-admin-stat-card--success .nexa-admin-stat-icon{background:#eaf6ee;color:var(--admin-success)}
.nexa-admin-stat-card--warning .nexa-admin-stat-icon{background:#fff5df;color:var(--admin-warning)}
.nexa-admin-dashboard-secondary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.nexa-admin-quick-stat{display:flex;min-width:0;align-items:center;gap:15px;padding:17px 20px;border:1px solid var(--admin-border);border-radius:11px;background:var(--admin-surface);box-shadow:0 5px 18px rgba(23,37,31,.03)}
.nexa-admin-quick-icon{display:inline-flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:10px;background:#eef5f2;color:var(--admin-primary);font-size:17px}
.nexa-admin-quick-stat>div{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:12px}
.nexa-admin-quick-stat span{color:var(--admin-muted);font-size:12px;font-weight:700}
.nexa-admin-quick-stat strong{color:var(--admin-primary-dark);font-family:"Chivo",sans-serif;font-size:24px}
.nexa-admin-dashboard-recent{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:20px}
.nexa-admin-card.nexa-admin-dashboard-card{min-width:0;margin:0;padding:0;overflow:hidden;border-color:var(--admin-border);box-shadow:0 8px 24px rgba(23,37,31,.04)}
.nexa-admin-dashboard-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 22px;border-bottom:1px solid var(--admin-border)}
.nexa-admin-dashboard-card-head .nexa-admin-eyebrow{margin-bottom:3px;font-size:10px}
.nexa-admin-dashboard-card-head h2{margin:0;color:var(--admin-primary-dark);font-size:18px}
.nexa-admin-dashboard-card-head>a{display:inline-flex;align-items:center;gap:6px;color:var(--admin-primary);font-size:12px;font-weight:800;white-space:nowrap}
.nexa-admin-dashboard-card-head>a:hover,.nexa-admin-dashboard-card-head>a:focus-visible{color:var(--admin-primary-dark)}
.nexa-admin-dashboard-table{padding:0 12px 12px}
.nexa-admin-dashboard-table table{font-size:12px}
.nexa-admin-dashboard-table th{padding:13px 10px;color:var(--admin-muted);font-size:10px;letter-spacing:.05em;text-transform:uppercase}
.nexa-admin-dashboard-table td{padding:13px 10px;color:var(--admin-text)}
.nexa-admin-dashboard-table tbody tr:last-child td{border-bottom:0}
.nexa-admin-dashboard-table tbody tr:hover{background:#fafcfb}
.nexa-admin-order-link{color:var(--admin-primary-dark);font-weight:800}
.nexa-admin-status-stack{display:flex;align-items:flex-start;flex-direction:column;gap:4px}
.nexa-admin-status-badge{display:inline-flex;width:max-content;max-width:160px;align-items:center;padding:4px 8px;border:1px solid transparent;border-radius:999px;background:#f0f2f1;color:#596660;font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}
.nexa-admin-status-badge.is-success{border-color:#cbe7d8;background:#edf8f2;color:#176b4f}
.nexa-admin-status-badge.is-warning{border-color:#f0ddb6;background:#fff7e8;color:#8a5b0b}
.nexa-admin-status-badge.is-danger{border-color:#edcccc;background:#fff1f1;color:#942b25}
.nexa-admin-recent-customers{margin:0;padding:6px 22px 12px;list-style:none}
.nexa-admin-recent-customers li{display:flex;min-width:0;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid var(--admin-border)}
.nexa-admin-recent-customers li:last-child{border-bottom:0}
.nexa-admin-customer-avatar{display:inline-flex;flex:0 0 38px;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:#e8f5f0;color:var(--admin-primary-dark);font-family:"Chivo",sans-serif;font-size:14px;font-weight:800}
.nexa-admin-recent-customers li>div{display:flex;min-width:0;flex-direction:column;gap:2px}
.nexa-admin-recent-customers a{overflow:hidden;color:var(--admin-primary-dark);font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.nexa-admin-recent-customers li>div>span{overflow:hidden;color:var(--admin-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.nexa-admin-recent-customers time{color:#89958f;font-size:10px}
.nexa-admin-empty-state{display:flex;min-height:190px;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:30px;color:var(--admin-muted);text-align:center}
.nexa-admin-empty-state i{font-size:28px}.nexa-admin-empty-state p{margin:0;font-size:13px}

@media(max-width:1199.98px){
  .nexa-admin-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nexa-admin-dashboard-recent{grid-template-columns:1fr}
}
@media(max-width:767.98px){
  .nexa-admin-dashboard-secondary{grid-template-columns:1fr}
}

/* Fase 4: form e schede di dettaglio del pannello Admin. */
.nexa-admin-form{display:grid;gap:22px}
.nexa-admin-form-card,.nexa-admin-detail-card,.nexa-admin-summary-card{min-width:0;height:auto;margin:0 0 24px;padding:24px;border:1px solid var(--admin-border);border-radius:12px;background:var(--admin-surface);box-shadow:0 7px 22px rgba(23,37,31,.035)}
.nexa-admin-form>.nexa-admin-form-card{margin:0}
.nexa-admin-form-card h2,.nexa-admin-detail-card h2,.nexa-admin-summary-card h2{margin:0 0 18px;color:var(--admin-primary-dark);font-size:21px}
.nexa-admin-form-section-head,.nexa-admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--admin-border)}
.nexa-admin-form-section-head>div,.nexa-admin-card-head>div{display:flex;align-items:center;gap:10px}
.nexa-admin-form-section-head h2,.nexa-admin-card-head h2{margin:0}
.nexa-admin-form-section-head>div>span{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:50%;background:#e5f4ef;color:var(--admin-primary-dark);font-size:13px;font-weight:900}
.nexa-admin-form-section-head p,.nexa-admin-card-head p{max-width:620px;margin:2px 0 0;color:var(--admin-muted);font-size:12px;line-height:1.5}
.nexa-admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;margin:0;padding:0;border:0;border-radius:0;background:transparent}
.nexa-admin-field-span-2{grid-column:1/-1}
.nexa-admin-form-card label,.nexa-admin-detail-card label,.nexa-admin-summary-card label{display:flex;flex-direction:column;gap:7px;color:var(--admin-primary-dark);font-size:12px;font-weight:800}
.nexa-admin-form-card input,.nexa-admin-form-card select,.nexa-admin-form-card textarea,.nexa-admin-detail-card input,.nexa-admin-detail-card select,.nexa-admin-detail-card textarea,.nexa-admin-summary-card input,.nexa-admin-summary-card select,.nexa-admin-summary-card textarea{width:100%;min-height:44px;padding:9px 11px;border:1px solid #c7d4cf;border-radius:8px;background:#fff;color:var(--admin-text);font:inherit;transition:border-color .16s ease,box-shadow .16s ease}
.nexa-admin-form-card textarea,.nexa-admin-detail-card textarea,.nexa-admin-summary-card textarea{min-height:120px;resize:vertical}
.nexa-admin-form-card input:focus,.nexa-admin-form-card select:focus,.nexa-admin-form-card textarea:focus,.nexa-admin-detail-card input:focus,.nexa-admin-detail-card select:focus,.nexa-admin-detail-card textarea:focus,.nexa-admin-summary-card input:focus,.nexa-admin-summary-card select:focus,.nexa-admin-summary-card textarea:focus{outline:0;border-color:var(--admin-accent);box-shadow:0 0 0 3px rgba(20,184,166,.13)}
.nexa-admin-form-card input[disabled],.nexa-admin-form-card select[disabled],.nexa-admin-detail-card input[disabled],.nexa-admin-detail-card select[disabled]{background:#f1f4f3;color:#78847f;cursor:not-allowed}
.nexa-admin-form-card input[type=checkbox],.nexa-admin-detail-card input[type=checkbox],.nexa-admin-summary-card input[type=checkbox]{width:17px;min-height:17px;padding:0;accent-color:var(--admin-primary)}
.nexa-admin-form-actions{justify-content:flex-end;margin-top:2px;padding:16px 0 0;border:0;border-top:1px solid var(--admin-border);border-radius:0;background:transparent}
.nexa-admin-form-actions .btn,.nexa-admin-inline-form .btn{min-height:42px;padding:10px 17px;border-radius:8px;font-weight:800}
.nexa-admin-btn-secondary{border:1px solid var(--admin-border)!important;background:#fff!important;color:var(--admin-primary-dark)!important}
.nexa-admin-btn-secondary:hover,.nexa-admin-btn-secondary:focus-visible{border-color:#afc5bc!important;background:#eef5f2!important}
.nexa-admin-inline-form{display:flex;align-items:flex-end;gap:12px}.nexa-admin-inline-form label{min-width:220px;flex:1}
.nexa-admin-detail-head{padding:20px 22px;border:1px solid var(--admin-border);border-radius:12px;background:linear-gradient(135deg,#fff 0%,#f5faf8 100%);box-shadow:0 7px 22px rgba(23,37,31,.035)}
.nexa-admin-detail-head h1{font-size:clamp(28px,3vw,42px)}
.nexa-admin-detail-card .nexa-admin-definition,.nexa-admin-detail-list{margin:0}
.nexa-admin-detail-list>div,.nexa-admin-detail-card .nexa-admin-definition>div{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid var(--admin-border)}
.nexa-admin-detail-list>div:last-child,.nexa-admin-detail-card .nexa-admin-definition>div:last-child{border-bottom:0}
.nexa-admin-detail-list dt,.nexa-admin-detail-card dt{color:var(--admin-muted);font-size:12px;font-weight:800}.nexa-admin-detail-list dd,.nexa-admin-detail-card dd{margin:0;overflow-wrap:anywhere;color:var(--admin-text);font-weight:700}
.nexa-admin-summary-card{border-color:#bfd8cf;background:linear-gradient(145deg,#fff 0%,#f0f8f5 100%)}
.nexa-admin-summary-card>p{display:flex;justify-content:space-between;gap:18px;margin:9px 0;padding-bottom:8px;border-bottom:1px solid #dce9e4}
.nexa-admin-summary-card>p:last-of-type{margin-top:15px;color:var(--admin-primary-dark);font-size:18px}
.nexa-admin-summary-card .nexa-admin-payment-form,.nexa-admin-summary-card form{margin-top:22px;padding-top:20px;border-top:1px solid #cadfd7}
.nexa-admin-summary-card form label{margin-bottom:13px}
.nexa-admin-crm-head{align-items:center}.nexa-admin-crm-identity{display:flex;min-width:0;align-items:center;gap:16px}
.nexa-admin-crm-head .nexa-admin-avatar{display:grid;flex:0 0 58px;width:58px;height:58px;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--admin-primary),var(--admin-accent));color:#fff;font-size:23px;font-weight:900;box-shadow:0 7px 18px rgba(2,68,48,.18)}
.nexa-admin-ai-field{padding:18px;border:1px solid #b9d8ce;border-left:4px solid var(--admin-accent);border-radius:10px;background:#f2faf7}
.nexa-admin-ai-field:before{content:'Contenuto commerciale per l’assistente';color:var(--admin-accent-dark,var(--admin-primary));font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.nexa-admin-danger-zone,.nexa-admin-danger-action{border:1px solid #e8c4c1!important;border-left:4px solid var(--admin-danger)!important;background:#fff7f6!important}
.nexa-admin-danger-zone:before,.nexa-admin-danger-action:before{content:'Area sensibile';color:var(--admin-danger);font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.nexa-admin-manual-order{counter-reset:order-step}.nexa-admin-manual-order>section{position:relative;margin:0 0 22px;padding:22px;border:1px solid var(--admin-border);border-radius:10px;background:#fbfcfc}
.nexa-admin-manual-order>section>h2{display:flex;align-items:center;gap:10px;margin:0 0 17px;color:var(--admin-primary-dark);font-size:20px}
.nexa-admin-manual-order .nexa-admin-table-wrap{margin-top:16px;border:1px solid var(--admin-border);border-radius:9px;background:#fff}
.nexa-admin-order-line{padding:16px;border-bottom:1px solid var(--admin-border)}.nexa-admin-order-line:last-child{border-bottom:0}.nexa-admin-order-line strong{color:var(--admin-primary-dark)}
.nexa-ticket-thread{display:grid;gap:14px}.nexa-ticket-message{max-width:78%;padding:14px 16px;border:1px solid var(--admin-border);border-radius:12px;background:#f5f8f7}.nexa-ticket-message header{display:flex;justify-content:space-between;gap:15px;color:var(--admin-muted);font-size:11px}.nexa-ticket-message p{margin:9px 0 0;line-height:1.55}.nexa-ticket-customer{margin-left:auto;border-color:#bdd9ed;background:#eef7fc}.nexa-ticket-support{margin-right:auto;border-color:#bcded2;background:#eff9f5}.nexa-ticket-internal{max-width:100%;border-style:dashed;border-color:#e4c67f;background:#fff8e8}
.nexa-admin-simone-history{padding:18px;border:1px solid var(--admin-border);border-radius:12px;background:#f7faf9}.nexa-admin-simone-message{max-width:76%;box-shadow:0 3px 12px rgba(23,37,31,.04)}.nexa-admin-simone-message--assistant{margin-right:auto;margin-left:0;background:#fff}.nexa-admin-simone-message--user{margin-left:auto;border-color:#bfd9eb;background:#edf7fd}
.nexa-flash-wrapper{position:relative;z-index:20}.nexa-flash-wrapper .alert{margin-bottom:10px;padding:13px 16px;border:1px solid var(--admin-border);border-left-width:4px;border-radius:9px;background:#fff;box-shadow:0 5px 18px rgba(23,37,31,.05)}.nexa-flash-wrapper .alert-success{border-left-color:#2c8b67;background:#eef9f4}.nexa-flash-wrapper .alert-warning{border-left-color:#c28b1d;background:#fff8e7}.nexa-flash-wrapper .alert-danger,.nexa-flash-wrapper .alert-error{border-left-color:#b94b45;background:#fff1f0}.nexa-flash-wrapper .alert-info{border-left-color:#4386ad;background:#eef7fc}

@media(max-width:991.98px){.nexa-admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-admin-ticket-layout{grid-template-columns:1fr}}
@media(max-width:767.98px){.nexa-admin-form-grid{grid-template-columns:1fr}.nexa-admin-field-span-2{grid-column:auto}.nexa-admin-form-section-head,.nexa-admin-card-head{flex-direction:column}.nexa-admin-inline-form{align-items:stretch;flex-direction:column}.nexa-admin-detail-head,.nexa-admin-crm-head{align-items:flex-start}.nexa-admin-crm-identity{align-items:flex-start}.nexa-admin-form-actions{align-items:stretch;flex-direction:column-reverse}.nexa-admin-form-actions .btn{width:100%;justify-content:center}.nexa-admin-summary-card>p{align-items:flex-start}.nexa-ticket-message,.nexa-admin-simone-message{max-width:92%}.nexa-admin-detail-list>div,.nexa-admin-detail-card .nexa-admin-definition>div{grid-template-columns:1fr;gap:4px}}
@media(max-width:575.98px){.nexa-admin-form-card,.nexa-admin-detail-card,.nexa-admin-summary-card{padding:17px}.nexa-admin-crm-head .nexa-admin-avatar{flex-basis:46px;width:46px;height:46px;font-size:19px}.nexa-admin-manual-order>section{padding:16px}.nexa-ticket-message,.nexa-admin-simone-message{max-width:100%}}
@media(max-width:575.98px){
  .nexa-admin-dashboard-kpis{grid-template-columns:1fr}
  .nexa-admin-stat-card{min-height:158px;padding:18px}
  .nexa-admin-stat-card>strong{font-size:29px}
  .nexa-admin-quick-stat{padding:15px 17px}
  .nexa-admin-dashboard-card-head{align-items:flex-start;flex-direction:column;padding:18px}
  .nexa-admin-dashboard-table{padding-inline:8px}
  .nexa-admin-recent-customers{padding-inline:18px}
}

/* Fase 3 Admin: toolbar, listati, stati, azioni e paginazione condivisi. */
.nexa-admin-page-head>div>p:last-child:not(.nexa-admin-eyebrow){max-width:720px;margin:7px 0 0;color:var(--admin-muted);font-size:14px;line-height:1.5}
.nexa-admin-page-head>.btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.nexa-admin-filters.nexa-admin-toolbar{grid-template-columns:minmax(230px,1.5fr) repeat(auto-fit,minmax(145px,1fr));align-items:end;gap:14px;margin-bottom:18px;padding:18px 20px;border-color:var(--admin-border);border-radius:12px;box-shadow:0 6px 20px rgba(23,37,31,.025)}
.nexa-admin-toolbar label{margin:0;color:var(--admin-text);font-size:12px;font-weight:700}
.nexa-admin-toolbar input,.nexa-admin-toolbar select{min-height:42px;border-color:#d9e0dd;border-radius:8px;color:var(--admin-text);font-size:13px}
.nexa-admin-toolbar input:focus,.nexa-admin-toolbar select:focus{border-color:var(--admin-primary);box-shadow:0 0 0 3px rgba(7,95,72,.1);outline:0}
.nexa-admin-toolbar-actions{display:flex;align-items:center;gap:8px}
.nexa-admin-toolbar-actions .btn{display:inline-flex;min-height:42px;flex:1;align-items:center;justify-content:center;margin:0;padding-inline:15px;white-space:nowrap}
.nexa-admin-reset-filter{border:1px solid var(--admin-border);background:var(--admin-surface);color:var(--admin-muted)}
.nexa-admin-reset-filter:hover,.nexa-admin-reset-filter:focus-visible{border-color:#bac9c3;background:#f2f6f4;color:var(--admin-primary-dark)}
.nexa-admin-card.nexa-admin-table-card{min-width:0;height:auto;margin-bottom:0;padding:0;overflow:visible;border-color:var(--admin-border);border-radius:12px;box-shadow:0 7px 22px rgba(23,37,31,.035)}
.nexa-admin-table-card>.nexa-admin-table-wrap{max-width:100%;overflow-x:auto;border-radius:12px}
.nexa-admin-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}
.nexa-admin-table thead{background:#f8faf9}
.nexa-admin-table th{padding:13px 15px;border-bottom:1px solid var(--admin-border);color:var(--admin-muted);font-size:11px;font-weight:800;letter-spacing:.045em;text-align:left;text-transform:uppercase;vertical-align:middle;white-space:nowrap}
.nexa-admin-table td{padding:14px 15px;border-bottom:1px solid #edf0ef;color:var(--admin-text);font-size:12px;line-height:1.45;vertical-align:middle;white-space:nowrap}
.nexa-admin-table tbody tr:last-child td{border-bottom:0}
.nexa-admin-table tbody tr{transition:background .16s ease}
.nexa-admin-table tbody tr:hover{background:#fafcfb}
.nexa-admin-table tbody tr.is-attention td:first-child{box-shadow:inset 3px 0 0 var(--admin-warning)}
.nexa-admin-table a:not(.nexa-admin-row-actions a){color:var(--admin-primary);font-weight:700}
.nexa-admin-table code{padding:3px 6px;border-radius:5px;background:#f1f4f3;color:#43534c;font-size:11px}
.nexa-admin-reference{color:var(--admin-primary-dark)!important;font-weight:800!important}
.nexa-admin-status{display:inline-flex;width:max-content;max-width:190px;align-items:center;padding:4px 9px;border:1px solid transparent;border-radius:999px;background:#f0f2f1;color:#5a6661;font-size:10px;font-weight:800;line-height:1.25;white-space:nowrap}
.nexa-admin-status::before{width:5px;height:5px;margin-right:6px;border-radius:50%;background:currentColor;content:""}
.nexa-admin-status.is-success{border-color:#cbe7d8;background:#edf8f2;color:#176b4f}
.nexa-admin-status.is-warning{border-color:#f0ddb6;background:#fff7e8;color:#8a5b0b}
.nexa-admin-status.is-danger{border-color:#edcccc;background:#fff1f1;color:#942b25}
.nexa-admin-status.is-info{border-color:#cce3e7;background:#eef8f9;color:#176b73}
.nexa-admin-status-stack{display:flex;align-items:flex-start;flex-direction:column;gap:5px}
.nexa-admin-person,.nexa-admin-product-name{display:flex;min-width:170px;align-items:center;gap:10px}
.nexa-admin-table-avatar,.nexa-admin-product-placeholder{display:inline-flex;flex:0 0 34px;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#e8f5f0;color:var(--admin-primary-dark);font-family:"Chivo",sans-serif;font-size:12px;font-weight:800}
.nexa-admin-product-placeholder{border-radius:8px;font-family:inherit;font-size:15px}
.nexa-admin-cell-title{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nexa-admin-cell-subtitle{display:block;margin-top:3px;color:var(--admin-muted);font-size:10px}
.nexa-admin-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.nexa-admin-row-actions a,.nexa-admin-row-actions button{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;padding:0;border:1px solid var(--admin-border);border-radius:8px;background:var(--admin-surface);color:var(--admin-primary);font-size:13px;cursor:pointer}
.nexa-admin-row-actions a:hover,.nexa-admin-row-actions a:focus-visible,.nexa-admin-row-actions button:hover,.nexa-admin-row-actions button:focus-visible{border-color:#b8cbc3;background:#edf6f2;color:var(--admin-primary-dark)}
.nexa-admin-row-actions .nexa-admin-icon-button--danger{border-color:#edcccc;color:#942b25}
.nexa-admin-row-actions .nexa-admin-icon-button--danger:hover,.nexa-admin-row-actions .nexa-admin-icon-button--danger:focus-visible{border-color:#dcaeaa;background:#fff1f1;color:#7d211c}
.nexa-admin-row-actions form{margin:0}
.nexa-admin-form-card fieldset{min-width:0;margin:0;padding:0;border:0}
.nexa-form-field-wide{grid-column:1/-1}
.nexa-admin-checkbox{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin-top:18px}
.nexa-admin-empty-state{min-height:220px;padding:40px 24px}
.nexa-admin-empty-state>i{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border-radius:50%;background:#edf5f2;color:var(--admin-primary);font-size:22px}
.nexa-admin-empty-state h2{margin:2px 0 0;color:var(--admin-primary-dark);font-size:17px}
.nexa-admin-empty-state p{max-width:420px;color:var(--admin-muted);font-size:12px;line-height:1.5}
.nexa-admin-pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0 26px;padding:0 4px}
.nexa-admin-pagination-bar>p{margin:0;color:var(--admin-muted);font-size:12px;font-weight:700}
.nexa-admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin:0}
.nexa-admin-pagination a,.nexa-admin-pagination>span{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;padding:0 8px;border:1px solid var(--admin-border);border-radius:8px;background:var(--admin-surface);color:var(--admin-muted);font-size:12px;font-weight:800}
.nexa-admin-pagination a:hover,.nexa-admin-pagination a:focus-visible{border-color:#b8cbc3;background:#edf6f2;color:var(--admin-primary-dark)}
.nexa-admin-pagination a[aria-current=page]{border-color:var(--admin-primary);background:var(--admin-primary);color:#fff}
.nexa-admin-pagination>span.is-disabled{background:#f3f5f4;color:#a8b0ad;cursor:not-allowed}
.nexa-admin-pagination>span.nexa-admin-pagination-gap{min-width:22px;border-color:transparent;background:transparent}
.nexa-admin-table-section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border-bottom:1px solid var(--admin-border)}
.nexa-admin-table-section-title h2{margin:0;font-size:18px}.nexa-admin-table-section-title .nexa-admin-eyebrow{margin-bottom:3px;font-size:10px}
.nexa-admin-row-details{position:relative;min-width:0!important}
.nexa-admin-row-details>summary{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--admin-border);border-radius:7px;background:#fff;color:var(--admin-primary);font-size:11px;font-weight:800;list-style:none;cursor:pointer}
.nexa-admin-row-details>summary::-webkit-details-marker{display:none}
.nexa-admin-row-details[open]{min-width:280px!important;padding:10px;border:1px solid var(--admin-border);border-radius:9px;background:#fbfcfc;box-shadow:0 10px 25px rgba(23,37,31,.08)}
.nexa-admin-row-details[open]>summary{margin-bottom:10px}
.nexa-admin-row-details form{display:grid;gap:8px;margin:0 0 8px}
.nexa-admin-row-details label{font-size:11px}.nexa-admin-row-details input,.nexa-admin-row-details select{min-height:38px}
.nexa-admin-row-details button{padding:8px 12px;border:1px solid var(--admin-primary);border-radius:7px;background:var(--admin-primary);color:#fff;font-weight:700}
.nexa-admin-row-details .nexa-admin-danger-button{border-color:#e8c4c1;background:#fff3f2;color:var(--admin-danger)}
.nexa-admin-role-card{border-color:var(--admin-border)}
.nexa-admin-role-card>h2{margin-bottom:4px}.nexa-admin-role-card>p{color:var(--admin-muted);font-size:12px}

@media(max-width:767.98px){
  .nexa-admin-page-head>.btn{width:100%;justify-content:center}
  .nexa-admin-filters.nexa-admin-toolbar{grid-template-columns:1fr;padding:16px}
  .nexa-admin-toolbar-actions{align-items:stretch;flex-direction:column}
  .nexa-admin-toolbar-actions .btn{width:100%}
  .nexa-admin-pagination-bar{align-items:flex-start;flex-direction:column}
  .nexa-admin-pagination{max-width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:4px}
}

/* Fase 5 Admin: coerenza finale, accessibilità e protezioni responsive. */
.nexa-admin-body *{box-sizing:border-box}
.nexa-admin-body a:focus-visible,.nexa-admin-body button:focus-visible,.nexa-admin-body input:focus-visible,.nexa-admin-body select:focus-visible,.nexa-admin-body textarea:focus-visible,.nexa-admin-body summary:focus-visible{outline:3px solid #1596d2;outline-offset:2px}
.nexa-admin-body .btn{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:8px;font-size:13px;font-weight:800;line-height:1.25;white-space:nowrap;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}
.nexa-admin-body .btn-brand-1{border-color:var(--admin-primary);background:var(--admin-primary);color:#fff}
.nexa-admin-body .btn-brand-1:hover,.nexa-admin-body .btn-brand-1:focus-visible{border-color:var(--admin-primary-dark);background:var(--admin-primary-dark);color:#fff}
.nexa-admin-danger-button,.nexa-admin-danger-action .btn{min-height:42px;border-radius:8px;font-weight:800}
.nexa-admin-main{overflow-x:hidden}
.nexa-admin-main>*{max-width:100%}
.nexa-admin-card,.nexa-admin-form-card,.nexa-admin-detail-card,.nexa-admin-summary-card{min-width:0;overflow-wrap:anywhere}
.nexa-admin-grid-2{align-items:start}
.nexa-admin-table-wrap{width:100%;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
.nexa-admin-table-wrap table{margin:0}
.nexa-admin-table tbody tr:focus-within{background:#f5faf8}
.nexa-admin-status.is-neutral{border-color:#dfe4e2;background:#f0f2f1;color:#596660}
.nexa-admin-status,.nexa-admin-status-badge{gap:0;letter-spacing:.01em}
.nexa-admin-status-badge::before{width:5px;height:5px;margin-right:6px;border-radius:50%;background:currentColor;content:""}
.nexa-admin-page-head{min-width:0}.nexa-admin-page-head>div{min-width:0}.nexa-admin-page-head h1,.nexa-admin-page-head p{overflow-wrap:anywhere}
.nexa-admin-account-menu>summary{min-height:44px;padding:3px 5px;border-radius:9px}
.nexa-admin-account-dropdown{max-width:calc(100vw - 24px)}
.nexa-admin-form-grid>*{min-width:0}
.nexa-admin-field-wide{grid-column:1/-1}
.nexa-account-service-parameters{white-space:normal;overflow-wrap:anywhere;padding:18px;border:1px solid var(--nexa-account-border,#dce8e4);border-radius:10px;background:var(--nexa-account-soft,#f6faf8);color:var(--nexa-account-text,#17332c);line-height:1.7}
.nexa-admin-card input,.nexa-admin-card select,.nexa-admin-card textarea,.nexa-admin-form-card input,.nexa-admin-form-card select,.nexa-admin-form-card textarea,.nexa-admin-detail-card input,.nexa-admin-detail-card select,.nexa-admin-detail-card textarea{max-width:100%}
.nexa-admin-card input[type=file],.nexa-admin-form-card input[type=file]{height:auto;overflow:hidden;text-overflow:ellipsis}
.nexa-admin-card small,.nexa-admin-field-help{line-height:1.5}
.nexa-ticket-message,.nexa-admin-simone-message{max-width:70%}
.nexa-ticket-message header span,.nexa-admin-simone-message header span,.nexa-admin-simone-message footer{color:#718079;font-size:11px;font-weight:600}
.nexa-ticket-message p,.nexa-admin-simone-message p{overflow-wrap:anywhere;word-break:break-word}
.nexa-ticket-internal{max-width:100%}
.nexa-admin-main>.nexa-flash-wrapper{width:100%;max-width:none;margin:0 0 18px;padding:0}
.nexa-admin-main>.nexa-flash-wrapper .alert{width:100%;margin:0 0 10px;line-height:1.5}
.nexa-admin-sidebar-link,.nexa-admin-account-menu>summary{-webkit-tap-highlight-color:transparent}
.nexa-admin-dialog.modal{position:fixed;inset:0;z-index:1060;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}
.nexa-admin-dialog .modal-dialog{position:relative;width:auto;max-width:520px;margin:28px auto;padding:12px;pointer-events:none}
.nexa-admin-dialog .modal-dialog-centered{display:flex;min-height:calc(100% - 56px);align-items:center}
.nexa-admin-dialog.fade .modal-dialog{transform:translateY(-24px);transition:transform .2s ease-out}
.nexa-admin-dialog.show .modal-dialog{transform:none}
.nexa-admin-dialog .modal-content{position:relative;display:flex;width:100%;flex-direction:column;overflow:hidden;border:1px solid var(--admin-border);border-radius:12px;background:#fff;box-shadow:0 24px 70px rgba(14,47,38,.22);pointer-events:auto}
.nexa-admin-dialog .modal-header,.nexa-admin-dialog .modal-footer{display:flex;align-items:center;padding:18px 22px;border-color:var(--admin-border)}
.nexa-admin-dialog .modal-header{justify-content:space-between;border-bottom:1px solid var(--admin-border)}
.nexa-admin-dialog .modal-footer{justify-content:flex-end;border-top:1px solid var(--admin-border)}
.nexa-admin-dialog .modal-body{padding:22px}
.nexa-admin-dialog .modal-title{margin:0;color:var(--admin-primary-dark);font-size:20px;line-height:1.3}
.nexa-admin-dialog [data-admin-dialog-message]{margin:0;color:var(--admin-text);font-size:15px;line-height:1.6;white-space:pre-line}
.nexa-admin-dialog .modal-footer{gap:10px}
.nexa-admin-dialog-close{display:grid;width:36px;height:36px;flex:0 0 36px;margin-left:16px;padding:0;place-items:center;border:0;border-radius:50%;background:#f0f6f3;color:var(--admin-text);font-size:26px;line-height:1;cursor:pointer}
.nexa-admin-dialog-close:hover{background:#e4eeea;color:var(--admin-primary-dark)}
.nexa-admin-dialog .nexa-admin-dialog-danger{border-color:#a93f39;background:#a93f39;color:#fff}
.nexa-admin-dialog .nexa-admin-dialog-danger:hover,.nexa-admin-dialog .nexa-admin-dialog-danger:focus-visible{border-color:#87312d;background:#87312d;color:#fff}
.nexa-admin-dialog [data-admin-dialog-cancel][hidden]{display:none!important}
.nexa-admin-body.modal-open{overflow:hidden}
.nexa-admin-body .modal-backdrop{position:fixed;inset:0;z-index:1050;background:#102b24}
.nexa-admin-body .modal-backdrop.fade{opacity:0}
.nexa-admin-body .modal-backdrop.show{opacity:.48}

@media(max-width:1279.98px){
  .nexa-admin-main{padding:22px 18px}
  .nexa-admin-dashboard-kpis{gap:15px}
  .nexa-admin-form-card,.nexa-admin-detail-card,.nexa-admin-summary-card,.nexa-admin-card{padding:21px}
  .nexa-admin-card.nexa-admin-table-card,.nexa-admin-card.nexa-admin-dashboard-card{padding:0}
}
@media(max-width:991.98px){
  .nexa-admin-topbar-title strong{max-width:46vw}
  .nexa-admin-sidebar.is-open{visibility:visible}
  .nexa-admin-sidebar:not(.is-open){visibility:hidden}
  .nexa-admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767.98px){
  .nexa-admin-form-grid{grid-template-columns:1fr}
  .nexa-admin-page-head{gap:14px;margin-bottom:18px}
  .nexa-admin-page-head>.btn,.nexa-admin-page-head>form{width:100%}
  .nexa-admin-page-head>form{display:grid;gap:10px}
  .nexa-admin-page-head>form .btn{width:100%}
  .nexa-admin-toolbar-actions{width:100%}
  .nexa-ticket-message,.nexa-admin-simone-message{max-width:88%}
  .nexa-ticket-internal{max-width:100%}
  .nexa-admin-table th,.nexa-admin-table td{padding-inline:12px}
}
@media(max-width:575.98px){
  .nexa-admin-topbar{gap:8px}
  .nexa-admin-topbar-start{max-width:calc(100% - 48px);gap:9px}
  .nexa-admin-topbar-title strong{max-width:calc(100vw - 128px)}
  .nexa-admin-account-menu>summary{padding:2px}
  .nexa-admin-account-dropdown{position:fixed;top:calc(var(--admin-topbar-height) - 2px);right:10px;left:10px;width:auto;max-width:none}
  .nexa-admin-card,.nexa-admin-form-card,.nexa-admin-detail-card,.nexa-admin-summary-card{padding:17px}
  .nexa-admin-card.nexa-admin-table-card,.nexa-admin-card.nexa-admin-dashboard-card{padding:0}
  .nexa-admin-form-actions{gap:9px}
  .nexa-admin-body .btn{width:100%;white-space:normal;text-align:center}
  .nexa-admin-row-actions .btn,.nexa-admin-row-actions a,.nexa-admin-row-actions button{width:34px}
  .nexa-admin-detail-head{padding:17px}
  .nexa-admin-definition>div{grid-template-columns:1fr;gap:4px}
  .nexa-admin-dialog .modal-dialog{margin:8px;padding:0}
  .nexa-admin-dialog .modal-footer{display:grid;grid-template-columns:1fr}
}
/* Mini CMS: editor Admin e pagina pubblica sicura, senza dipendenze esterne. */
.nexa-page-editor {
  min-height: 360px;
  resize: vertical;
  line-height: 1.65;
}

.nexa-cms-page-section {
  /*padding: clamp(48px, 7vw, 96px) 0;*/
}

.nexa-cms-page-content {
  /*width: min(100%, 920px); */
  margin: 0 auto;
  padding: clamp(28px, 5vw, 64px);
  border: 1px solid #dce8e4;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(5, 77, 61, .07);
}

.nexa-cms-page-content h1 {
  margin: 0 0 28px;
  color: #004c3f;
  font-size: clamp(2rem, 5vw, 3.75rem);
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.nexa-cms-page-body {
  color: #263c38;
  font-size: 1.05rem;
  line-height: 1.8;
  overflow-wrap: anywhere;
}

.nexa-cms-page-body p {
  margin: 0 0 1.25em;
}

.nexa-cms-page-body p:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .nexa-cms-page-section {
    padding: 32px 0 48px;
  }

  .nexa-cms-page-content {
    border-radius: 12px;
  }

  .nexa-page-editor {
    min-height: 280px;
  }
}

/* Page Builder C2: blocchi controllati e variazioni dei template senza CSS libero dall'Admin. */
.nexa-cms-page-content.has-builder-blocks{width:min(100%,1180px);padding:0;border:0;background:transparent;box-shadow:none}
.nexa-cms-page-content.has-builder-blocks>h1{margin:0 0 clamp(28px,4vw,52px);padding:0 clamp(4px,1vw,12px)}
.nexa-cms-page-body>.nexa-page-block{margin-bottom:clamp(28px,5vw,64px)}
.nexa-page-block{min-width:0}
.nexa-page-block h2{margin:0 0 16px;color:#004c3f;font-size:clamp(1.65rem,3vw,2.65rem);line-height:1.15}
.nexa-page-block h3{margin:0 0 10px;color:#004c3f;font-size:1.18rem}
.nexa-page-rich-text p{margin:0 0 1em}.nexa-page-rich-text p:last-child{margin-bottom:0}
.nexa-page-eyebrow{margin:0 0 12px;color:#078566;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.nexa-page-highlight{margin:0 0 14px;color:#08a77e;font-family:"Chivo",sans-serif;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:700}
.nexa-page-introduction,.nexa-page-subtitle{margin:0 0 15px;color:#354b46;font-size:1.14rem;font-weight:600;line-height:1.6}
.nexa-page-hero,.nexa-page-image-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);padding:clamp(28px,5vw,64px);border:1px solid #dce8e4;border-radius:18px;background:#fff;box-shadow:0 16px 40px rgba(5,77,61,.07)}
.nexa-page-hero:not(.has-image){grid-template-columns:minmax(0,1fr)}
.nexa-page-hero.is-image-left .nexa-page-hero-image,.nexa-page-image-text.is-image-left .nexa-page-image-text-media{order:-1}
.nexa-page-hero-image img,.nexa-page-image-text-media img,.nexa-page-image img{display:block;width:100%;height:auto;border-radius:14px;object-fit:cover}
.nexa-page-figure{margin-inline:0}.nexa-page-figure figcaption{margin-top:10px;color:#66756f;font-size:.88rem;text-align:center}
.nexa-page-text{max-width:850px;margin-right:auto;margin-left:auto;padding:clamp(24px,4vw,44px);border-left:4px solid #06c995;background:#f6fbf9;border-radius:0 12px 12px 0}
.nexa-page-features{padding:clamp(26px,4vw,46px);border:1px solid #dce8e4;border-radius:16px;background:#fff}
.nexa-page-features ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 26px;margin:0;padding:0;list-style:none}
.nexa-page-features li{display:flex;align-items:flex-start;gap:10px;color:#263c38}.nexa-page-features li i{margin-top:4px;color:#06a77f}
.nexa-page-feature-section{text-align:center}.nexa-page-feature-section>.nexa-page-rich-text{max-width:760px;margin:0 auto 28px}
.nexa-page-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;text-align:left}
.nexa-page-feature-card{padding:26px;border:1px solid #dce8e4;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(5,77,61,.055)}
.nexa-page-feature-card>i{display:grid;width:48px;height:48px;place-items:center;margin-bottom:18px;border-radius:13px;background:#e8f7f2;color:#067759;font-size:1.35rem}
.nexa-page-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:clamp(28px,5vw,52px);border-radius:18px;background:#004c3f;color:#fff}
.nexa-page-cta h2{color:#fff}.nexa-page-cta .nexa-page-rich-text{max-width:720px}.nexa-page-cta .btn{flex:0 0 auto}
.nexa-page-divider{height:1px;background:linear-gradient(90deg,transparent,#b8d7cd,transparent)}
.nexa-page-template-service_products .nexa-page-hero{background:linear-gradient(135deg,#effaf6,#fff)}
.nexa-page-template-service_plans .nexa-page-hero{border-color:#073d35;background:linear-gradient(135deg,#002f28,#075f48);color:#fff}
.nexa-page-template-service_plans .nexa-page-hero h2,.nexa-page-template-service_plans .nexa-page-hero .nexa-page-highlight{color:#fff}
.nexa-page-template-service_plans .nexa-page-hero .nexa-page-eyebrow{color:#72e8c6}.nexa-page-template-service_plans .nexa-page-hero .nexa-page-introduction{color:#d8eee7}

/* Page Builder C3: catalogo autorevole renderizzato server-side. */
.nexa-page-products>h2,.nexa-page-plans>h2{text-align:center}.nexa-page-products>.nexa-page-rich-text,.nexa-page-plans>.nexa-page-rich-text{max-width:760px;margin:0 auto 30px;text-align:center}
.nexa-page-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.nexa-page-product-item,.nexa-page-product-item .card-product{min-width:0;height:100%}.nexa-page-product-item .card-product{display:flex;flex-direction:column}.nexa-page-product-item .card-info{display:flex;flex:1;flex-direction:column}.nexa-page-product-item .catalog-card-actions{margin-top:auto!important}
.nexa-page-plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.nexa-page-plan-card{position:relative;display:flex;min-width:0;flex-direction:column;padding:clamp(24px,3vw,34px);border:1px solid #dce8e4;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(5,77,61,.06)}
.nexa-page-plan-card.is-highlighted{border:2px solid #078566;box-shadow:0 18px 40px rgba(5,119,89,.13)}
.nexa-page-plan-highlight{display:inline-flex;align-self:flex-start;align-items:center;gap:7px;margin:-8px 0 18px;padding:6px 10px;border-radius:999px;background:#e5f7f1;color:#04664e;font-size:.78rem;font-weight:800}
.nexa-product-plan-card{
    position:relative;
    overflow:visible;
}
.nexa-product-badge{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    max-width:none;

    padding:8px 12px;

    border-radius:6px;

    background:#005c49;
    color:#fff;

    font-size:.74rem;
    font-weight:800;
    line-height:1;

    letter-spacing:.02em;
    white-space:nowrap;

    box-shadow:0 3px 10px rgba(0,0,0,.15);
}

.card-product .card-image>.nexa-product-badge{position:absolute;top:12px;left:12px;z-index:2}

.nexa-product-badge-plan{
    position:absolute;
    top:25px;
    right:-37px;
    width:150px;
    margin:0;

    transform:rotate(45deg);
    transform-origin:center;

    z-index:20;

    filter:drop-shadow(0 4px 5px rgba(0,0,0,.15));
}
.nexa-product-badge::before,
.nexa-product-badge::after{
    content:"";
    position:absolute;
    bottom:-3px;

    width:9px;
    height:0;

    border-style:solid;
}

.nexa-product-badge::before{
    left:0;

    border-width:7px 7px 0 0;
    border-color:#005c49 transparent transparent transparent;
}

.nexa-product-badge::after{
    right:0;

    border-width:7px 0 0 7px;
    border-color:#005c49 transparent transparent transparent;
}
.nexa-page-plan-type{margin:0 0 8px;color:#64756f;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nexa-page-plan-card h3{font-size:1.45rem}.nexa-page-plan-card h3 a{color:inherit}
.nexa-page-plan-description{min-height:3.4em;margin:0 0 20px;color:#50625d;line-height:1.65}.nexa-page-plan-price{display:flex;min-width:0;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin-bottom:22px}.nexa-page-plan-price strong{color:#004c3f;font-size:clamp(1.65rem,3vw,2.25rem);overflow-wrap:anywhere}.nexa-page-plan-price span{color:#64756f;font-size:.82rem}
.nexa-page-plan-features{display:grid;gap:11px;margin:0 0 26px;padding:0;list-style:none}.nexa-page-plan-features li{display:flex;align-items:flex-start;gap:9px;color:#334944}.nexa-page-plan-features i{margin-top:4px;color:#078566}.nexa-page-plan-card>.btn{width:100%;margin-top:auto;text-align:center}

/* Gestione Page Builder nel pannello Admin. */
.nexa-page-block-manager{margin-top:24px}.nexa-page-block-list{display:grid;gap:10px;margin:0;padding:20px;list-style:none}
.nexa-page-block-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--admin-border);border-radius:10px;background:#fff}
.nexa-page-block-row.is-inactive{background:#f5f7f6;opacity:.82}.nexa-page-block-row>div{display:flex;min-width:0;align-items:center;gap:10px}
.nexa-page-block-position{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:8px;background:#e9f5f1;color:var(--admin-primary);font-weight:800}
.nexa-page-block-actions{flex-wrap:wrap;justify-content:flex-end}.nexa-page-block-actions form{margin:0}.nexa-page-block-actions .btn{min-height:36px;padding:7px 10px}
.nexa-page-block-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.nexa-page-block-choice{display:flex;min-height:145px;align-items:center;justify-content:center;flex-direction:column;gap:9px;color:var(--admin-primary-dark);text-align:center}
.nexa-page-block-choice>i{font-size:1.7rem}.nexa-page-block-choice>span{color:var(--admin-muted);font-size:.78rem}.nexa-page-block-choice:hover{border-color:#a9cfc2;background:#f7fcfa}
.nexa-page-feature-editor{margin:8px 0;padding:18px;border:1px solid var(--admin-border);border-radius:10px}.nexa-page-feature-editor legend{width:auto;padding:0 8px;color:var(--admin-primary-dark);font-weight:800}
.nexa-page-admin-preview{display:block;width:min(100%,280px);height:auto;border:1px solid var(--admin-border);border-radius:10px}
.nexa-page-catalog-editor{margin:8px 0;padding:20px;border:1px solid var(--admin-border);border-radius:10px}.nexa-page-catalog-editor legend{width:auto;padding:0 8px;color:var(--admin-primary-dark);font-weight:800}.nexa-page-catalog-editor .nexa-admin-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-page-catalog-editor .nexa-admin-warning{margin:12px 0 0;color:#9a4b10;font-weight:700}
.nexa-page-product-order-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--admin-border);border-radius:9px}.nexa-page-product-order-row label{min-width:0;margin:0}.nexa-page-product-order-row>span{display:flex;flex:0 0 auto;gap:4px}.nexa-page-product-order-row button{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--admin-border);border-radius:7px;background:#fff;color:var(--admin-primary-dark)}.nexa-page-product-order-row button:hover,.nexa-page-product-order-row button:focus-visible{border-color:var(--admin-primary);outline:2px solid rgba(5,119,89,.18)}

@media(max-width:1199.98px){.nexa-page-products-grid,.nexa-page-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023.98px){.nexa-page-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nexa-page-block-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.nexa-page-hero,.nexa-page-image-text{grid-template-columns:1fr;padding:26px}.nexa-page-hero-image,.nexa-page-image-text-media{order:-1}.nexa-page-features ul{grid-template-columns:1fr}.nexa-page-cta{align-items:flex-start;flex-direction:column}.nexa-page-block-row{align-items:flex-start;flex-direction:column}.nexa-page-block-actions{width:100%;justify-content:flex-start}.nexa-page-catalog-editor .nexa-admin-check-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.nexa-page-feature-grid,.nexa-page-products-grid,.nexa-page-plans-grid,.nexa-page-block-choice-grid{grid-template-columns:1fr}.nexa-cms-page-content.has-builder-blocks>h1{font-size:2.1rem}.nexa-page-feature-card{padding:21px}.nexa-page-block-actions .btn{width:auto}.nexa-page-plan-description{min-height:0}}

/* Page Builder C4: editor visuale, preview privata e controlli responsive. */
.nexa-page-editor-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.nexa-page-editor-head-actions form,.nexa-page-list-actions form{margin:0}.nexa-page-editor-head-actions .btn{height:100%}
.nexa-page-status-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;padding:18px 22px}.nexa-page-status-card>div{display:flex;align-items:center;gap:14px}.nexa-page-status-card>div>div{display:grid;gap:3px}.nexa-page-status-card small{color:var(--admin-muted)}
.nexa-page-template-help{display:grid;gap:5px;padding:14px 16px;border:1px solid var(--admin-border);border-radius:10px;background:#f7fbf9}.nexa-page-template-help p{margin:0;color:var(--admin-muted);font-size:.86rem}.nexa-page-template-help strong{color:var(--admin-primary-dark)}
.nexa-page-block-list{padding:0;background:transparent}.nexa-page-block-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px;box-shadow:0 7px 20px rgba(5,77,61,.045)}.nexa-page-block-row.is-inactive{opacity:.7;border-style:dashed}.nexa-page-block-summary{display:grid!important;grid-template-columns:auto auto minmax(0,1fr);align-items:start!important;gap:16px!important}.nexa-page-block-summary>img{width:112px;height:78px;border:1px solid var(--admin-border);border-radius:9px;object-fit:cover}.nexa-page-block-summary>div{display:grid!important;align-items:start!important;gap:6px!important}.nexa-page-block-heading{display:flex!important;align-items:center!important;flex-wrap:wrap;gap:9px!important}.nexa-page-block-summary h3{margin:0;color:var(--admin-primary-dark);font-size:1.05rem}.nexa-page-block-summary p{margin:0;color:var(--admin-muted);line-height:1.45}.nexa-page-block-items{color:var(--admin-text)!important;font-weight:650}
.nexa-page-list-actions form{display:inline-flex}.nexa-page-list-actions button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--admin-border);border-radius:8px;background:#fff;color:var(--admin-primary-dark)}.nexa-page-list-actions button:hover,.nexa-page-list-actions button:focus-visible{border-color:var(--admin-primary);outline:2px solid rgba(5,119,89,.17)}
.nexa-page-current-image{display:grid;align-content:start;gap:9px}.nexa-page-current-image>span{font-weight:750;color:var(--admin-primary-dark)}
.nexa-page-product-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;margin:10px 0 16px}.nexa-page-product-filters label:not(.nexa-admin-checkbox){display:grid;gap:6px}.nexa-page-product-filters label>span{font-size:.84rem;font-weight:700}.nexa-page-product-position{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:7px;background:#edf3f1;color:#778681;font-size:.8rem;font-weight:800}.nexa-page-product-position.is-selected{background:#dff4ed;color:var(--admin-primary-dark)}.nexa-page-product-order-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.nexa-page-product-order-row[hidden]{display:none!important}
.nexa-page-preview-toolbar{position:relative;z-index:50;border-bottom:1px solid #d5b96b;background:#fff7d9;color:#4a3a0e}.nexa-page-preview-toolbar .container{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:18px}.nexa-page-preview-toolbar strong{display:flex;align-items:center;gap:9px}.nexa-page-preview-toolbar .btn{min-height:38px;padding:8px 14px;background:#fff}
@media(max-width:1023.98px){.nexa-page-block-row{grid-template-columns:1fr}.nexa-page-block-actions{justify-content:flex-start}.nexa-page-product-filters{grid-template-columns:1fr 1fr}.nexa-page-product-filters .nexa-admin-checkbox{grid-column:1/-1}}
@media(max-width:767.98px){.nexa-page-editor-head-actions,.nexa-page-editor-head-actions form{width:100%}.nexa-page-editor-head-actions .btn{width:100%;justify-content:center}.nexa-page-status-card{align-items:stretch;flex-direction:column}.nexa-page-status-card form,.nexa-page-status-card .btn{width:100%}.nexa-page-block-summary{grid-template-columns:auto minmax(0,1fr)}.nexa-page-block-summary>img{grid-column:2;width:min(100%,220px);height:auto;aspect-ratio:16/10}.nexa-page-block-summary>div{grid-column:2}.nexa-page-product-filters{grid-template-columns:1fr}.nexa-page-product-filters .nexa-admin-checkbox{grid-column:auto}.nexa-page-preview-toolbar .container{align-items:stretch;flex-direction:column;padding-top:12px;padding-bottom:12px}.nexa-page-preview-toolbar .btn{width:100%;text-align:center}}
@media(max-width:575.98px){.nexa-page-block-row{padding:15px}.nexa-page-block-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.nexa-page-block-actions form,.nexa-page-block-actions .btn{width:100%}.nexa-page-block-actions form .btn{justify-content:center}.nexa-page-product-order-row{grid-template-columns:auto minmax(0,1fr)}.nexa-page-product-order-row>span:last-child{grid-column:2;justify-self:start}}
@media(max-width:575.98px){.nexa-page-status-card>div{align-items:flex-start;flex-direction:column}.nexa-page-block-manager .nexa-admin-table-section-title{align-items:stretch;flex-direction:column}.nexa-page-block-manager .nexa-admin-table-section-title>.btn{width:100%;justify-content:center}.nexa-page-block-summary{grid-template-columns:1fr}.nexa-page-block-summary>.nexa-page-block-position,.nexa-page-block-summary>img,.nexa-page-block-summary>div{grid-column:1}.nexa-page-block-summary>img{width:100%;max-width:260px}.nexa-page-block-summary>div{min-width:0}.nexa-page-block-heading{align-items:flex-start!important;flex-direction:column}.nexa-page-block-summary h3,.nexa-page-block-summary p{overflow-wrap:anywhere}}

/* Page Builder C5: presentazione pubblica dei template commerciali. */
.nexa-page-template-service_products,
.nexa-page-template-service_plans {
  --nexa-page-surface: #fff;
  --nexa-page-soft: #f3faf7;
  --nexa-page-border: #d8e7e2;
  --nexa-page-ink: #123e35;
}

.nexa-page-template-service_products > .section.mt-35,
.nexa-page-template-service_plans > .section.mt-35 {
  margin-top: 22px !important;
}

/*.nexa-page-template-service_products .catalog-breadcrumbs,
.nexa-page-template-service_plans .catalog-breadcrumbs {
  color: #6b7d77;
  font-size: .86rem;
}
*/
.catalog-breadcrumbs {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.nexa-page-template-service_products .nexa-cms-page-section,
.nexa-page-template-service_plans .nexa-cms-page-section {
  padding-top: clamp(28px, 4vw, 56px);
  background: linear-gradient(180deg, #fbfdfc 0, #fff 38%, #f8fbfa 100%);
}

.nexa-page-template-service_products .nexa-cms-page-section > .container,
.nexa-page-template-service_plans .nexa-cms-page-section > .container {
  width: min(calc(100% - 48px), 1400px);
  max-width: none;
  padding-right: 0;
  padding-left: 0;
}

.nexa-page-template-service_products .nexa-cms-page-content.has-builder-blocks,
.nexa-page-template-service_plans .nexa-cms-page-content.has-builder-blocks {
  width: 100%;
}

.nexa-page-template-service_products .nexa-cms-page-body > .nexa-page-block,
.nexa-page-template-service_plans .nexa-cms-page-body > .nexa-page-block {
  margin-bottom: clamp(48px, 7vw, 96px);
}

.nexa-page-template-service_products .nexa-cms-page-body > .nexa-page-block:last-child {
  margin-bottom: 0;
}

.nexa-page-template-service_products .nexa-page-block h1,
.nexa-page-template-service_plans .nexa-page-block h1 {
  margin: 0 0 18px;
  font-size: clamp(2.35rem, 5vw, 4.8rem);
  line-height: 1.03;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}

.nexa-page-hero--landing,
.nexa-page-template-service_plans .nexa-page-hero {
  grid-template-areas: "copy media";
  grid-template-columns: minmax(0, 11fr) minmax(280px, 9fr);
  min-height: clamp(430px, 42vw, 610px);
  gap: clamp(32px, 6vw, 86px);
  padding: clamp(34px, 5vw, 76px);
  overflow: hidden;
  border-radius: 24px;
}

.nexa-page-hero--landing {
  display: grid;
  position: static;
  grid-template-areas: "copy media";
  grid-template-columns: minmax(0, 13fr) minmax(0, 12fr);
  align-items: center;
}

.nexa-page-hero--landing .nexa-page-hero-copy,
.nexa-page-hero--landing .nexa-page-hero-image {
  position: static;
  z-index: auto;
  width: 100%;
  max-width: 100%;
}

.nexa-page-hero--landing.is-image-left {
  grid-template-areas: "media copy";
  grid-template-columns: minmax(0, 12fr) minmax(0, 13fr);
}

.nexa-page-hero--landing:not(.has-image) {
  grid-template-areas: "copy";
  grid-template-columns: minmax(0, 880px);
}

.nexa-page-hero--landing.is-image-left,
.nexa-page-template-service_plans .nexa-page-hero.is-image-left {
  grid-template-areas: "media copy";
  grid-template-columns: minmax(280px, 9fr) minmax(0, 11fr);
}

.nexa-page-hero--landing:not(.has-image),
.nexa-page-template-service_plans .nexa-page-hero:not(.has-image) {
  grid-template-areas: "copy";
  grid-template-columns: minmax(0, 880px);
  min-height: 390px;
  align-content: center;
}

.nexa-page-hero-copy { grid-area: copy; min-width: 0; }
.nexa-page-hero-image { grid-area: media; min-width: 0; max-width: 100%; overflow: hidden; aspect-ratio: 4 / 3; border-radius: 14px; }
.nexa-page-hero-image img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; box-shadow: 0 22px 55px rgba(0, 63, 51, .16); }

.nexa-page-hero--landing h1 { color: #004c3f; }
.nexa-page-hero-title-highlight { display: block; color: #08a77e; }
.nexa-page-hero--landing { border-color: #cfe4dc; background: linear-gradient(135deg, #eaf8f3 0%, #fff 70%); }

.nexa-page-template-service_plans .nexa-page-hero {
  position: relative;
  isolation: isolate;
  border-color: #0a5949;
  background: linear-gradient(135deg, #002d27 0%, #00513f 56%, #087359 100%);
  color: #e9f7f2;
  box-shadow: 0 24px 64px rgba(0, 48, 40, .22);
}

.nexa-page-template-service_plans .nexa-page-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 34px 34px;
  content: "";
  mask-image: linear-gradient(110deg, #000, transparent 72%);
}

.nexa-page-template-service_plans .nexa-page-hero h1,
.nexa-page-template-service_plans .nexa-page-hero .nexa-page-highlight { color: #fff; }
.nexa-page-template-service_plans .nexa-page-hero .nexa-page-rich-text { color: #dcefe9; }

.nexa-page-template-service_products .nexa-page-hero + .nexa-page-features,
.nexa-page-template-service_plans .nexa-page-hero + .nexa-page-features {
  margin-top: clamp(-52px, -4vw, -28px);
  padding: clamp(24px, 3vw, 38px);
  box-shadow: 0 16px 42px rgba(5, 77, 61, .07);
}

.nexa-page-template-service_products .nexa-page-hero + .nexa-page-features {
  width: calc(100% - clamp(24px, 5vw, 72px));
  margin-right: auto;
  margin-left: auto;
  padding: clamp(20px, 2.5vw, 30px);
  border-color: #cfe3dc;
  border-radius: 15px;
  background: linear-gradient(135deg, #fff 0%, #f2faf7 100%);
}

.nexa-page-template-service_products .nexa-page-features h2 {
  margin-bottom: 18px;
  font-size: clamp(1.35rem, 2vw, 1.85rem);
}

.nexa-page-template-service_products .nexa-page-features ul {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  gap: 13px 22px;
}

.nexa-page-template-service_products .nexa-page-products-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.nexa-page-template-service_products .nexa-page-product-item .card-product { border: 1px solid var(--nexa-page-border); border-radius: 16px; overflow: hidden; box-shadow: 0 13px 32px rgba(5, 77, 61, .07); }
.nexa-page-template-service_products .nexa-page-product-item .card-image { min-height: 190px; }
.nexa-page-template-service_products .nexa-page-product-item .card-image img { width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.nexa-page-template-service_products .nexa-page-product-item .card-info > .d-flex { display: grid !important; grid-template-columns: minmax(0, 1fr); align-items: start !important; gap: 8px; }
.nexa-page-template-service_products .nexa-page-product-item .catalog-price { width: 100%; min-width: 0; max-width: none; text-align: left; }
.nexa-page-template-service_products .nexa-page-product-item .catalog-price-note { display: inline-block; margin-left: 7px; }

.nexa-page-template-service_products .nexa-page-text,
.nexa-page-template-service_plans .nexa-page-text {
  max-width: 920px;
  padding: clamp(30px, 5vw, 60px);
  border: 0;
  border-radius: 18px;
  background: var(--nexa-page-soft);
}

.nexa-page-template-service_products .nexa-page-text { max-width: 1080px; }

.nexa-page-template-service_products .nexa-page-image-text,
.nexa-page-template-service_plans .nexa-page-image-text {
  grid-template-areas: "copy media";
  grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr);
}
.nexa-page-template-service_products .nexa-page-image-text.is-image-left,
.nexa-page-template-service_plans .nexa-page-image-text.is-image-left {
  grid-template-areas: "media copy";
  grid-template-columns: minmax(300px, .9fr) minmax(0, 1fr);
}
.nexa-page-image-text-copy { grid-area: copy; min-width: 0; }
.nexa-page-image-text-media { grid-area: media; min-width: 0; aspect-ratio: 4 / 3; }
.nexa-page-image-text-media img { width: 100%; height: 100%; }

.nexa-page-template-service-products .nexa-page-feature-grid,
.nexa-page-template-service-plans .nexa-page-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
/* TABLET: 2 + 2 + 2 */
@media (max-width: 991px) {

    .nexa-page-template-service-products .nexa-page-feature-grid,
    .nexa-page-template-service-plans .nexa-page-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}


/* MOBILE: 1 per riga */
@media (max-width: 575px) {

    .nexa-page-template-service-products .nexa-page-feature-grid,
    .nexa-page-template-service-plans .nexa-page-feature-grid {
        grid-template-columns: 1fr;
    }

}
.nexa-page-template-service_products .nexa-page-feature-card,
.nexa-page-template-service_plans .nexa-page-feature-card { height: 100%; }

.nexa-page-template-service_products .nexa-page-feature-grid > .nexa-page-feature-card:only-child {
  width: min(100%, 720px);
  justify-self: center;
}

.nexa-page-template-service_plans .nexa-page-plans { padding: clamp(32px, 5vw, 64px); border-radius: 24px; background: #eef7f4; }
.nexa-page-template-service_plans .nexa-page-plans-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 2.5vw, 32px); }
.nexa-page-template-service_plans .nexa-page-plan-card { min-height: 100%; border-radius: 19px; box-shadow: 0 16px 40px rgba(5, 77, 61, .09); }
.nexa-page-template-service_plans .nexa-page-plan-card.is-highlighted { transform: translateY(-10px); border-color: #078566; box-shadow: 0 24px 48px rgba(5, 119, 89, .18); }
.nexa-page-template-service_plans .nexa-page-plan-highlight + .nexa-product-badge-plan { margin-top: -4px; }

.nexa-page-template-service_products .nexa-page-cta,
.nexa-page-template-service_plans .nexa-page-cta { min-height: 220px; padding: clamp(34px, 6vw, 72px); border-radius: 24px; box-shadow: 0 20px 48px rgba(0, 61, 50, .16); }
.nexa-page-template-service_products .nexa-page-cta .btn,
.nexa-page-template-service_plans .nexa-page-cta .btn { min-width: 180px; text-align: center; }

.nexa-page-cta .btn,
.nexa-page-cta a {
    padding: 12px 22px;
    font-size: 14px;
    font-weight: 700;
    border-radius: 8px;
}


.nexa-page-template-service_products a:focus-visible,
.nexa-page-template-service_plans a:focus-visible { outline: 3px solid #f4c95d; outline-offset: 4px; }

@media (max-width: 1199.98px) {
  .nexa-page-template-service_products .nexa-page-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
  .nexa-page-hero--landing,
  .nexa-page-hero--landing.is-image-left,
  .nexa-page-template-service_products .nexa-page-image-text,
  .nexa-page-template-service_products .nexa-page-image-text.is-image-left {
    grid-template-areas: "copy" "media";
    grid-template-columns: minmax(0, 1fr);
  }
  .nexa-page-template-service_plans .nexa-page-hero,
  .nexa-page-template-service_plans .nexa-page-hero.is-image-left,
  .nexa-page-template-service_plans .nexa-page-image-text,
  .nexa-page-template-service_plans .nexa-page-image-text.is-image-left {
    grid-template-areas: "media" "copy";
    grid-template-columns: minmax(0, 1fr);
  }
  .nexa-page-hero--landing:not(.has-image),
  .nexa-page-template-service_plans .nexa-page-hero:not(.has-image) { grid-template-areas: "copy"; }
  .nexa-page-template-service_plans .nexa-page-plans-grid { grid-template-columns: 1fr; }
  .nexa-page-template-service_plans .nexa-page-plan-card.is-highlighted { transform: none; }
  .nexa-page-template-service_products .nexa-page-hero-image,
  .nexa-page-template-service_products .nexa-page-image-text-media { order: 0; }
}

@media (max-width: 575.98px) {
  .nexa-page-template-service_products .nexa-cms-page-section > .container,
  .nexa-page-template-service_plans .nexa-cms-page-section > .container { width: min(calc(100% - 28px), 1400px); }
  .nexa-page-hero--landing,
  .nexa-page-template-service_plans .nexa-page-hero { min-height: 0; padding: 26px 22px; border-radius: 17px; }
  .nexa-page-template-service_products .nexa-page-products-grid { grid-template-columns: 1fr; }
  .nexa-page-template-service_products .nexa-page-hero + .nexa-page-features,
  .nexa-page-template-service_plans .nexa-page-hero + .nexa-page-features { margin-top: -18px; }
  .nexa-page-template-service_products .nexa-page-hero + .nexa-page-features { width: calc(100% - 16px); }
  .nexa-page-template-service_plans .nexa-page-plans { padding: 26px 16px; border-radius: 17px; }
  .nexa-page-template-service_products .nexa-page-cta,
  .nexa-page-template-service_plans .nexa-page-cta { min-height: 0; }
  .nexa-page-template-service_products .nexa-page-cta .btn,
  .nexa-page-template-service_plans .nexa-page-cta .btn { width: 100%; min-width: 0; }
}

.nexa-page-cta .btn,
.nexa-page-cta a {
padding: 11px 11px;
  font-size: 17px;
  font-weight: 700;
  border-radius: 13px;
}

/* ==========================================================
   Catalogo Nexa Suite - layout "volantino" per categorie
   La pagina /catalogo resta editoriale/promozionale, mentre
   le pagine di categoria possono continuare a usare listing.php.
   ========================================================== */
.nexa-catalog-flyer{
  --catalog-primary:#075f48;
  --catalog-dark:#024430;
  --catalog-accent:#0aa985;
  --catalog-cream:#fff3d8;
  --catalog-mint:#edf9f5;
  --catalog-blue:#edf7fa;
  --catalog-border:#dce9e4;
  --catalog-text:#203b34;
  --catalog-muted:#63766f;
  background:#fff;
}

.nexa-catalog-flyer-hero{
  margin-top:28px;
  background-color:var(--catalog-cream);
}
.nexa-catalog-flyer-hero .container{max-width:1440px}
.nexa-catalog-flyer-hero-inner{
  min-height:430px;
  display:flex;
  align-items:center;
  text-align:left;
}
.nexa-catalog-flyer-hero-copy{
  width:min(100%,760px);
  padding:64px 0 58px;
}
.nexa-catalog-kicker{
  display:inline-block;
  margin-bottom:12px;
  color:#5f8177;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.nexa-catalog-flyer-hero h1{
  max-width:620px;
  margin:0 0 18px;
  color:var(--catalog-dark);
  font-size:clamp(2.55rem,5vw,4.8rem);
  font-weight:850;
  line-height:.98;
  letter-spacing:-.045em;
}
.nexa-catalog-flyer-hero-copy>p{
  max-width:700px;
  margin:0;
  color:#425d55;
  font-size:1.08rem;
  line-height:1.65;
}
.nexa-catalog-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.nexa-catalog-hero-actions .btn{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:11px 20px;
  border-radius:9px;
  font-weight:800;
}
.nexa-catalog-pdf-button{
  border:1px solid #9ab9ae;
  background:#fff;
  color:var(--catalog-dark);
}
.nexa-catalog-pdf-button:hover,
.nexa-catalog-pdf-button:focus-visible{
  border-color:var(--catalog-primary);
  background:#f3faf7;
  color:var(--catalog-dark);
}
.nexa-catalog-trust{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  max-width:780px;
  margin-top:34px;
}
.nexa-catalog-trust>span{
  position:relative;
  display:flex;
  min-width:0;
  flex-direction:column;
  padding-left:14px;
  border-left:3px solid #9bd9c8;
}
.nexa-catalog-trust strong{
  color:var(--catalog-dark);
  font-size:.78rem;
  line-height:1.35;
}
.nexa-catalog-trust small{
  margin-top:2px;
  color:#71837d;
  font-size:.68rem;
  line-height:1.35;
}

.nexa-catalog-demo-wrap{padding:20px 0 0}

.nexa-catalog-index-wrap{
  position:relative;
  z-index:5;
  padding:0;
  background:#fff;
}
.nexa-catalog-index{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
  gap:8px;
  margin-top:-22px;
  padding:10px;
  border:1px solid var(--catalog-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 32px rgba(4,73,57,.08);
}
.nexa-catalog-index>a{
  display:flex;
  min-width:0;
  min-height:64px;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid transparent;
  border-radius:11px;
  background:#f7fbfa;
  color:var(--catalog-text);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.nexa-catalog-index>a:hover,
.nexa-catalog-index>a:focus-visible{
  border-color:#bbd9cf;
  background:#eef8f4;
  color:var(--catalog-dark);
  transform:translateY(-2px);
}
.nexa-catalog-index-icon{
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:10px;
  background:#dff4ed;
  color:var(--catalog-primary);
  font-size:1.05rem;
  font-weight:900;
}
.nexa-catalog-index>a>span:last-child{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.nexa-catalog-index strong{
  overflow:hidden;
  color:var(--catalog-dark);
  font-size:.77rem;
  line-height:1.25;
  text-overflow:ellipsis;
}
.nexa-catalog-index small{
  margin-top:3px;
  color:#75857f;
  font-size:.66rem;
}

.nexa-catalog-sections{padding:28px 0 0}
.nexa-catalog-category-band{
  scroll-margin-top:110px;
  padding:18px 0;
  background:#fff;
}
.nexa-catalog-category-band.is-alt{background:#fffaf0}
.nexa-catalog-category-layout{
  display:grid;
  grid-template-columns:minmax(230px,.82fr) minmax(300px,1.08fr) minmax(0,1.7fr);
  align-items:stretch;
  gap:16px;
  padding:16px;
  border:1px solid var(--catalog-border);
  border-radius:18px;
  background:linear-gradient(135deg,#f2fbf8 0%,#fff 60%);
  box-shadow:0 11px 28px rgba(4,73,57,.045);
}
.nexa-catalog-category-band.is-alt .nexa-catalog-category-layout{
  background:linear-gradient(135deg,#fff7e7 0%,#fff 62%);
}
.nexa-catalog-category-copy{
  display:flex;
  min-width:0;
  justify-content:center;
  flex-direction:column;
  padding:22px 18px;
}
.nexa-catalog-category-eyebrow{
  margin-bottom:8px;
  color:#148368;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.nexa-catalog-category-copy h2{
  margin:0 0 12px;
  color:var(--catalog-dark);
  font-size:clamp(1.7rem,2.5vw,2.55rem);
  line-height:1.05;
  letter-spacing:-.035em;
}
.nexa-catalog-category-copy p{
  margin:0 0 20px;
  color:var(--catalog-muted);
  font-size:.9rem;
  line-height:1.58;
}
.nexa-catalog-category-copy .btn{
  align-self:flex-start;
  min-height:42px;
  padding:9px 15px;
  border-radius:8px;
  font-size:.75rem;
  font-weight:800;
}

.nexa-catalog-category-visual{
  position:relative;
  min-height:280px;
  overflow:hidden;
  border-radius:14px;
  background:#e8f6f1;
}
.nexa-catalog-category-visual>img{
  display:block;
  width:100%;
  height:100%;
  min-height:280px;
  object-fit:contain;
  padding:24px;
  background:linear-gradient(145deg,#f7fcfa,#e6f4ef);
}
.nexa-catalog-category-visual-copy{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  padding:18px 20px;
  background:linear-gradient(180deg,rgba(0,76,63,0) 0%,rgba(0,76,63,.92) 35%,rgba(0,76,63,.98) 100%);
  color:#fff;
}
.nexa-catalog-category-visual-copy strong{
  display:block;
  max-width:330px;
  font-size:1.15rem;
  line-height:1.2;
}
.nexa-catalog-category-visual-copy ul{
  display:flex;
  flex-wrap:wrap;
  gap:6px 14px;
  margin:10px 0 0;
  padding:0;
  list-style:none;
}
.nexa-catalog-category-visual-copy li{
  position:relative;
  padding-left:14px;
  font-size:.69rem;
}
.nexa-catalog-category-visual-copy li::before{
  position:absolute;
  left:0;
  color:#75e3c5;
  content:'✓';
  font-weight:900;
}

.nexa-catalog-category-products{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.nexa-catalog-product-slot{
  min-width:0;
  height:100%;
}
.nexa-catalog-product-slot .card-product{
  display:flex;
  height:100%;
  min-width:0;
  flex-direction:column;
  overflow:hidden;
  margin:0;
  border:1px solid #e0ebe7;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 18px rgba(4,73,57,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.nexa-catalog-product-slot .card-product:hover{
  border-color:#b9d6cc;
  box-shadow:0 12px 28px rgba(4,73,57,.09);
  transform:translateY(-3px);
}
.nexa-catalog-product-slot .card-image{
  position:relative;
  display:grid;
  min-height:142px;
  place-items:center;
  overflow:hidden;
  padding:12px;
  background:linear-gradient(180deg,#fff,#f7fbfa);
}
.nexa-catalog-product-slot .card-image a{
  display:grid;
  width:100%;
  height:100%;
  place-items:center;
}
.nexa-catalog-product-slot .card-image img{
  display:block;
  width:100%;
  height:138px;
  object-fit:contain;
}
.nexa-catalog-product-slot .card-info{
  display:flex;
  flex:1;
  min-width:0;
  flex-direction:column;
  padding:14px 14px 15px;
}
.nexa-catalog-product-slot .catalog-card-badge{
  margin-bottom:6px;
  color:#198268;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.nexa-catalog-product-slot .card-info h3,
.nexa-catalog-product-slot .card-info h4,
.nexa-catalog-product-slot .card-info h5,
.nexa-catalog-product-slot .card-info h6{
  margin:0 0 8px!important;
  color:var(--catalog-dark)!important;
  font-size:.9rem;
  line-height:1.28;
}
.nexa-catalog-product-slot .card-info>.d-flex{
  display:grid!important;
  grid-template-columns:1fr;
  gap:3px;
  margin-bottom:10px!important;
}
.nexa-catalog-product-slot .card-info>.d-flex>.font-xs{
  display:none;
}
.nexa-catalog-product-slot .catalog-price{
  width:100%;
  min-width:0;
  max-width:none;
  margin:0;
  text-align:left;
}
.nexa-catalog-product-slot .catalog-price .text-price{
  display:block;
  color:#08745b;
  font-size:1.28rem;
  font-weight:900;
  line-height:1.15;
}
.nexa-catalog-product-slot .catalog-price-note{
  display:block;
  margin-top:2px;
  color:#84918d;
  font-size:.61rem;
  line-height:1.3;
}
.nexa-catalog-product-slot .catalog-card-description{
  display:-webkit-box;
  overflow:hidden;
  margin:0;
  color:#697a74!important;
  font-size:.69rem!important;
  line-height:1.48;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.nexa-catalog-product-slot .catalog-card-actions{
  margin-top:auto!important;
  padding-top:12px;
}
.nexa-catalog-product-slot .catalog-card-actions .btn{
  min-height:auto;
  padding:0;
  border:0;
  background:transparent;
  color:var(--catalog-primary);
  font-size:.7rem;
  font-weight:900;
  box-shadow:none;
}
.nexa-catalog-product-slot .catalog-card-actions .btn:hover,
.nexa-catalog-product-slot .catalog-card-actions .btn:focus-visible{
  color:var(--catalog-dark);
  background:transparent;
}
.nexa-catalog-product-slot .catalog-card-actions .btn::after{
  margin-left:5px;
  content:'→';
}
.nexa-catalog-product-slot .card-image>.nexa-product-badge{
  top:3px;
  left:37px;
  width:auto;
  max-width:calc(100% - 18px);
  padding:5px 8px;
  border-radius:6px;
  font-size:.6rem;
}
.nexa-catalog-product-slot .card-image>.nexa-product-badge::before,
.nexa-catalog-product-slot .card-image>.nexa-product-badge::after{
  display:none;
}

.nexa-catalog-download-section{
  padding:28px 0 58px;
}
.nexa-catalog-download-banner{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  padding:24px 28px;
  overflow:hidden;
  border:1px solid #ead9ab;
  border-radius:16px;
  background:linear-gradient(110deg,#fff1cd 0%,#fff9ea 50%,#eaf8f3 100%);
}
.nexa-catalog-download-mark{
  display:flex;
  width:120px;
  height:86px;
  justify-content:center;
  flex-direction:column;
  padding:15px;
  border:1px solid rgba(2,68,48,.15);
  border-radius:10px;
  background:#fff;
  color:var(--catalog-dark);
  box-shadow:0 8px 20px rgba(4,73,57,.07);
  transform:rotate(-4deg);
}
.nexa-catalog-download-mark span{
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.12em;
}
.nexa-catalog-download-mark strong{
  font-size:1.05rem;
  line-height:1.05;
}
.nexa-catalog-download-copy>span{
  color:#6d827a;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.nexa-catalog-download-copy h2{
  margin:3px 0 5px;
  color:var(--catalog-dark);
  font-size:1.55rem;
}
.nexa-catalog-download-copy p{
  margin:0;
  color:var(--catalog-muted);
  font-size:.82rem;
}
.nexa-catalog-download-button{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 20px;
  border-radius:9px;
  white-space:nowrap;
  font-weight:800;
}

@media(max-width:1199.98px){
  .nexa-catalog-flyer-hero-copy{width:min(100%,690px)}
  .nexa-catalog-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nexa-catalog-category-layout{grid-template-columns:minmax(220px,.8fr) minmax(280px,1fr)}
  .nexa-catalog-category-products{grid-column:1/-1}
  .nexa-catalog-product-slot .card-image img{height:150px}
}

@media(max-width:991.98px){
  .nexa-catalog-flyer-hero-inner{min-height:360px}
  .nexa-catalog-flyer-hero-copy{width:min(100%,620px);padding:48px 0}
  .nexa-catalog-flyer-hero h1{font-size:clamp(2.35rem,7vw,4rem)}
  .nexa-catalog-category-layout{grid-template-columns:1fr}
  .nexa-catalog-category-copy{padding:16px 12px}
  .nexa-catalog-category-visual{min-height:310px}
  .nexa-catalog-category-products{grid-column:auto}
  .nexa-catalog-download-banner{grid-template-columns:auto minmax(0,1fr)}
  .nexa-catalog-download-button{grid-column:2;justify-self:start}
}

@media(max-width:767.98px){
  .nexa-catalog-flyer-hero{margin-top:14px}
  .nexa-catalog-flyer-hero-copy{width:100%;padding:40px 0}
  .nexa-catalog-trust{grid-template-columns:1fr 1fr}
  .nexa-catalog-index{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-14px}
  .nexa-catalog-category-band{padding:10px 0}
  .nexa-catalog-category-layout{padding:12px;border-radius:15px}
  .nexa-catalog-category-products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nexa-catalog-download-section{padding:20px 0 42px}
}

@media(max-width:575.98px){
  .nexa-catalog-flyer-hero h1{font-size:2.45rem}
  .nexa-catalog-flyer-hero-copy>p{font-size:.95rem}
  .nexa-catalog-hero-actions{align-items:stretch;flex-direction:column}
  .nexa-catalog-hero-actions .btn{width:100%}
  .nexa-catalog-trust{grid-template-columns:1fr}
  .nexa-catalog-index{grid-template-columns:1fr}
  .nexa-catalog-category-products{grid-template-columns:1fr}
  .nexa-catalog-category-visual{min-height:280px}
  .nexa-catalog-category-visual>img{min-height:280px}
  .nexa-catalog-download-banner{grid-template-columns:1fr;padding:22px}
  .nexa-catalog-download-mark{width:105px;height:74px}
  .nexa-catalog-download-button{grid-column:auto;width:100%}
}

.nexa-simone__launcher-avatar{
    width:38px;
    height:38px;
    flex:0 0 38px;
    object-fit:cover;
    border-radius:50%;
    background:#fff;
}

.nexa-simone__identity{
    display:flex;
    align-items:center;
    gap:11px;
}

.nexa-simone__header-avatar{
    width:44px;
    height:44px;
    flex:0 0 44px;
    object-fit:cover;
    border-radius:50%;
    background:#fff;
}

.nexa-simone__identity > div{
    display:flex;
    flex-direction:column;
}

.nexa-simone__identity strong{
    line-height:1.15;
}

.nexa-simone__identity small{
    line-height:1.2;
}

/* ==========================================================
   Responsive hardening Nexa Suite
   Mantiene il layout esistente e previene overflow su tablet
   e smartphone senza modificare il CSS originale Iori.
   ========================================================== */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body,
.main,
.main > *,
.container,
.container-fluid,
.row,
[class*="col-"] {
  min-width: 0;
}

.main img,
.main video,
.main canvas,
.footer img {
  max-width: 100%;
}

.main video,
.main canvas {
  height: auto;
}

.main iframe,
.nexa-cms-page-body iframe {
  max-width: 100%;
}

.nexa-cms-page-body,
.nexa-page-rich-text,
.nexa-page-text,
.nexa-cart-line-content,
.nexa-checkout-line,
.nexa-account-main,
.nexa-account-detail-card,
.nexa-account-form-card,
.nexa-admin-main,
.nexa-admin-card {
  min-width: 0;
}

.nexa-cms-page-body p,
.nexa-cms-page-body li,
.nexa-cms-page-body a,
.nexa-page-rich-text,
.nexa-page-text,
.nexa-cart-line-content,
.nexa-checkout-line strong,
.nexa-checkout-line small,
.nexa-account-main p,
.nexa-account-main dd,
.nexa-admin-main p,
.nexa-admin-main dd {
  overflow-wrap: anywhere;
}

/* Contenuti editoriali: tabelle e blocchi tecnici restano leggibili senza allargare la pagina. */
.nexa-cms-page-body table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.nexa-cms-page-body pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.nexa-account-table-wrap,
.nexa-admin-table-wrap,
.nexa-order-table-wrap,
.table-responsive {
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}

.nexa-account-table-wrap,
.nexa-admin-table-wrap,
.nexa-order-table-wrap {
  scrollbar-gutter: stable;
}

/* Il menu off-canvas non può mai essere più largo dello schermo disponibile. */
.mobile-header-wrapper-style {
  width: min(370px, 100vw);
  max-width: 100vw;
}

.mobile-header-wrapper-style .mobile-header-wrapper-inner,
.mobile-header-wrapper-style .perfect-scroll,
.mobile-header-wrapper-style .mobile-menu-wrap,
.mobile-header-wrapper-style .mobile-menu {
  max-width: 100%;
}

.mobile-header-wrapper-style .mobile-menu li > a {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.mobile-header-wrapper-style .mobile-menu li.has-children > a {
  padding-right: 42px;
}

/* Tablet: usa il logo compatto quando il menu desktop è già sostituito dal burger. */
@media (max-width: 1199.98px) {
  .nexa-site-header .main-header,
  .nexa-site-header .header-left {
    width: 100%;
    min-width: 0;
  }

  .nexa-site-header .header-logo {
    width: 65px !important;
    max-width: 65px !important;
    flex: 0 0 65px;
  }

  .nexa-logo-desktop {
    display: none;
  }

  .nexa-logo-mobile {
    display: block;
  }

  .nexa-site-header .header-right {
    display: flex;
    min-width: 0;
    flex: 0 1 auto;
    align-items: center;
    justify-content: flex-end;
  }
}

@media (max-width: 767.98px) {
  .nexa-auth-page .box-banner-login,
  .nexa-auth-page .box-register,
  .nexa-account-main,
  .nexa-account-card,
  .nexa-admin-card {
    max-width: 100%;
  }

  .nexa-cart-line-content h2,
  .nexa-cart-line-content h3,
  .nexa-account-page-head h1,
  .nexa-admin-page-head h1 {
    overflow-wrap: anywhere;
  }

  .nexa-admin-pagination,
  .nexa-account-pagination {
    flex-wrap: wrap;
  }
}

@media (max-width: 575.98px) {
  .nexa-site-header .container {
    padding-right: 12px;
    padding-left: 12px;
  }

  .nexa-site-header .header-logo {
    width: 58px !important;
    max-width: 58px !important;
    flex-basis: 58px;
  }

  .nexa-logo-mobile {
    width: 58px;
    height: 58px;
  }

  .nexa-site-header .header-right {
    margin-left: auto;
    padding-right: 32px;
  }

  .nexa-site-header .box-search-top .icon-list {
    padding-right: 7px;
    padding-left: 7px;
  }

  .mobile-header-wrapper-style .mobile-header-wrapper-inner .mobile-logo,
  .mobile-header-wrapper-style .perfect-scroll {
    padding-right: 20px;
    padding-left: 20px;
  }

  .nexa-cart-empty,
  .nexa-cart-totals {
    padding: 22px 18px;
  }

  .nexa-cart-line {
    gap: 14px;
  }

  .nexa-cart-line-actions,
  .nexa-cart-line-actions form {
    width: 100%;
  }

  .nexa-cart-line-actions form .btn {
    flex: 1 1 auto;
  }

  .nexa-cart-totals p,
  .nexa-checkout-line {
    min-width: 0;
  }

  .nexa-cart-totals p strong,
  .nexa-checkout-line > span {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .nexa-account-page-head .btn,
  .nexa-account-head-action,
  .nexa-admin-page-head > .btn,
  .nexa-admin-page-head > a.btn {
    width: 100%;
    justify-content: center;
    white-space: normal;
    text-align: center;
  }

  .nexa-admin-filters,
  .nexa-admin-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .nexa-admin-pagination {
    margin-right: 0;
    margin-left: 0;
  }

  .nexa-admin-table-wrap,
  .nexa-account-table-wrap,
  .nexa-order-table-wrap {
    max-width: 100%;
  }
}

@media (max-width: 389.98px) {
  .nexa-site-header .header-logo {
    width: 52px !important;
    max-width: 52px !important;
    flex-basis: 52px;
  }

  .nexa-logo-mobile {
    width: 52px;
    height: 52px;
  }

  .nexa-cart-line {
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 12px;
  }

  .nexa-cart-line-image img {
    width: 64px;
    height: 64px;
  }

  .nexa-account-expiry-dates {
    grid-template-columns: minmax(0, 1fr);
  }

  .nexa-account-expiry-dates dd {
    white-space: normal;
  }
}

/* Logo partner/tecnologie: griglia responsive senza overflow su tablet e smartphone. */
.lists-logo {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  align-items: center;
  gap: 24px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lists-logo li {
  display: flex;
  width: auto;
  min-width: 0;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.lists-logo li img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 72px;
  object-fit: contain;
}

@media (max-width: 991.98px) {
  .lists-logo {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .lists-logo {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 14px;
  }

  .lists-logo li img {
    max-height: 60px;
  }
}
