/* BredaNet Assistenza v2.8.1 — correttivo grafico e servizi web */

/* Riquadri riepilogo: VLAN/client, Trivy, domini */
.v28-network-kpis,.v28-trivy-kpis,.v28-domain-kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:18px 0!important;
}
.v28-network-kpis>div,.v28-trivy-kpis>div,.v28-domain-kpis>div{
  min-width:0!important;
  min-height:104px;
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  padding:18px 20px!important;
  border:1px solid #d8e4ed!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(29,63,91,.05)!important;
}
.v28-network-kpis b,.v28-trivy-kpis b,.v28-domain-kpis b{
  display:block!important;
  margin:0 0 5px!important;
  font-size:1.65rem!important;
  line-height:1!important;
  color:#112942!important;
}
.v28-network-kpis span,.v28-trivy-kpis span,.v28-domain-kpis span{
  display:block!important;
  font-size:.82rem!important;
  font-weight:800!important;
  line-height:1.25!important;
  color:#5f7487!important;
}

/* Centro Sicurezza: le scorciatoie diventano vere card, non testo sbiadito. */
.v28-security-nav{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:18px 0 20px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.v28-security-nav a{
  min-height:78px;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:16px 18px!important;
  border:1px solid #d8e4ed!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(29,63,91,.05)!important;
  color:#17324a!important;
  font-size:.86rem!important;
  font-weight:850!important;
  line-height:1.25!important;
  text-decoration:none!important;
}
.v28-security-nav a:hover{
  border-color:#b9d2e3!important;
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(29,63,91,.08)!important;
}

/* Toolbar VLAN/client */
.v28-network-toolbar{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto auto!important;
  gap:14px!important;
  align-items:end!important;
  margin:0 0 18px!important;
  padding:16px!important;
}
.v28-network-toolbar label{margin:0!important}
.v28-network-toolbar [data-v28-network-result]{align-self:center;color:#60778a!important;font-weight:750!important}

/* Domini e servizi web */
.v281-domain-top-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}
.v281-domain-filters{
  display:grid!important;
  grid-template-columns:minmax(240px,1.5fr) repeat(4,minmax(150px,.75fr)) auto!important;
  gap:12px!important;
  align-items:end!important;
  margin:0 0 16px!important;
  padding:16px!important;
}
.v281-domain-filters label{margin:0!important;min-width:0}
.v281-filter-actions{display:flex;gap:8px;align-items:end;white-space:nowrap}
.v281-result-note{margin:8px 2px 12px;color:#6d8193;font-weight:700;font-size:.75rem}

.v281-domain-row{
  grid-template-columns:minmax(230px,1.25fr) 110px 115px minmax(160px,.9fr) 150px auto!important;
  padding:14px 15px!important;
}
.v281-domain-health{min-width:0}
.v281-domain-health>small:first-child{display:block;margin-bottom:5px;color:#6d8193;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.v281-domain-health>small:last-child{display:block;margin-top:5px;color:#73879a;font-size:.65rem;white-space:normal}
.v281-health{
  display:inline-flex!important;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid #d7e2ea;
  background:#f5f8fa;
  color:#617587!important;
  font-size:.68rem!important;
  font-weight:900!important;
  line-height:1.1!important;
}
.v281-health.ok{background:#edf9f2;border-color:#bee5ce;color:#167646!important}
.v281-health.info{background:#eef7fd;border-color:#c7dff0;color:#176b9a!important}
.v281-health.danger{background:#fff1f2;border-color:#efc4c9;color:#a62b39!important}
.v281-domain-row .v28-domain-actions{align-items:center!important}
.v281-domain-row .v28-domain-actions form{margin:0!important}
.v281-domain-row .v28-domain-actions button,.v281-domain-row .v28-domain-actions .button{white-space:nowrap}

.v281-domain-check{margin-bottom:16px!important}
.v281-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.v281-check-grid>div{min-width:0;padding:12px 13px;border:1px solid #e0e8ee;border-radius:12px;background:#f9fbfd}
.v281-check-grid small,.v281-check-grid b{display:block}
.v281-check-grid small{margin-bottom:4px;color:#6d8193;font-size:.66rem;font-weight:800}
.v281-check-grid b{color:#19344c;font-size:.78rem;overflow-wrap:anywhere}
.v281-domain-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.v281-domain-actions form{margin:0}

/* Trivy: i contatori restano compatti anche senza report. */
.v28-trivy .v26-toolbar{margin-top:0}
.v28-trivy-kpis+.v26-toolbar{margin-top:0!important}

/* Migliora l'aspetto del pannello di inserimento servizio. */
.v28-domain-create>summary{cursor:pointer;font-weight:850;color:#213d56;padding:2px 0}
.v28-domain-create[open]>summary{margin-bottom:16px}

@media (max-width:1250px){
  .v281-domain-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
  .v281-filter-actions{grid-column:auto}
  .v281-domain-row{grid-template-columns:minmax(220px,1.25fr) 105px 115px minmax(150px,.9fr) auto!important}
  .v281-domain-row>div:nth-child(5){display:none}
}
@media (max-width:1000px){
  .v28-security-nav,.v28-network-kpis,.v28-trivy-kpis,.v28-domain-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v281-domain-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v281-filter-actions{grid-column:1/-1}
  .v281-domain-row{grid-template-columns:minmax(0,1fr) 110px 130px auto!important}
  .v281-domain-row>div:nth-child(2){display:none}
  .v281-domain-row>div:nth-child(5){display:none}
  .v281-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .v28-security-nav,.v28-network-kpis,.v28-trivy-kpis,.v28-domain-kpis{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .v28-security-nav a{min-height:64px;padding:13px!important;font-size:.78rem!important}
  .v28-network-kpis>div,.v28-trivy-kpis>div,.v28-domain-kpis>div{min-height:88px;padding:14px!important;border-radius:14px!important}
  .v28-network-kpis b,.v28-trivy-kpis b,.v28-domain-kpis b{font-size:1.35rem!important}
  .v28-network-toolbar,.v281-domain-filters{grid-template-columns:1fr!important}
  .v281-filter-actions{grid-column:auto}
  .v281-domain-top-actions{justify-content:flex-start}
  .v281-domain-row{grid-template-columns:1fr!important;gap:10px!important}
  .v281-domain-row>div:nth-child(2),.v281-domain-row>div:nth-child(5){display:block}
  .v281-domain-row .v28-domain-actions{justify-content:flex-start!important}
  .v281-check-grid{grid-template-columns:1fr}
}
@media (max-width:420px){
  .v28-security-nav,.v28-network-kpis,.v28-trivy-kpis,.v28-domain-kpis{grid-template-columns:1fr!important}
}

/* Area cliente v2.8.1: Il mio account e La mia rete */
.v281-account>section.card{margin-bottom:16px}
.v281-account-summary{margin-bottom:18px!important}
.v281-account-profile{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,.8fr);gap:18px;align-items:start}
.v281-profile-identity{display:flex;align-items:center;gap:18px;min-width:0}
.v281-profile-identity .profile-avatar{width:92px;height:92px;flex:0 0 92px}
.v281-profile-identity h2{margin:.15rem 0 .25rem}
.v281-profile-identity p{margin:.1rem 0;color:#687e91}
.v281-profile-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.v281-photo-form{padding:14px;border:1px solid #e0e8ee;border-radius:14px;background:#f8fbfd}
.v281-photo-form label,.v281-photo-form small{display:block}
.v281-photo-form button{margin-top:10px}
.v281-profile-details{grid-column:1/-1;margin-top:0}
.v281-account-separator{border:0;border-top:1px solid #e2e9ef;margin:20px 0}
.v281-notification-summary{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center;margin-top:16px;padding:13px;border:1px solid #dfe8ef;border-radius:14px;background:#f8fbfd}
.v281-notification-summary div{min-width:0}
.v281-notification-summary small,.v281-notification-summary b{display:block}
.v281-notification-summary small{color:#6f8394;font-size:.7rem;font-weight:800}
.v281-notification-summary b{margin-top:3px;color:#18354e;font-size:.82rem}
.v281-account-devices td:first-child small{display:block;color:#718597;margin-top:3px}
.v281-service-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0 14px}
.v281-service-summary>div{padding:13px;border:1px solid #e0e8ee;border-radius:13px;background:#f9fbfd;min-width:0}
.v281-service-summary small,.v281-service-summary b{display:block}
.v281-service-summary small{font-size:.68rem;font-weight:800;color:#718597;margin-bottom:4px}
.v281-service-summary b{font-size:.8rem;color:#17334b;overflow-wrap:anywhere}
.v281-account-service-list{display:grid;gap:8px}
.v281-account-service{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 13px;border:1px solid #e2e9ef;border-radius:12px;background:#fff}
.v281-account-service>div:first-child{min-width:0}
.v281-account-service b,.v281-account-service small{display:block}
.v281-account-service small{margin-top:3px;color:#73879a}
.v281-account-service>div:last-child{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.v281-account-security .profile-details{margin-bottom:16px}
.v281-account-security>.account-actions{margin-top:14px}
.v281-account-security>.account-actions form{margin:0}
.v281-network-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin:16px 0!important}
.v281-network-kpis>div{padding:16px!important;border:1px solid #dce6ed!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 22px rgba(29,63,91,.05)!important}
.v281-network-kpis b,.v281-network-kpis span{display:block!important}
.v281-network-kpis b{font-size:1.45rem!important;color:#17344d!important;margin-bottom:4px}
.v281-network-kpis span{font-size:.76rem!important;font-weight:800!important;color:#687e91!important}
.v281-network-toolbar{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(160px,.4fr) auto auto!important;gap:10px!important;align-items:end!important;margin-bottom:16px!important}
.v281-network-toolbar label{margin:0!important}
.v281-network-toolbar>a{align-self:center}

@media (max-width:1000px){
  .v281-account-profile{grid-template-columns:1fr}
  .v281-profile-details{grid-column:auto}
  .v281-service-summary,.v281-network-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v281-notification-summary{grid-template-columns:1fr 1fr}
  .v281-notification-summary>a{grid-column:1/-1;width:max-content}
  .v281-network-toolbar{grid-template-columns:1fr 1fr!important}
}
@media (max-width:700px){
  .v281-profile-identity{align-items:flex-start}
  .v281-profile-identity .profile-avatar{width:74px;height:74px;flex-basis:74px}
  .v281-service-summary,.v281-network-kpis{grid-template-columns:1fr 1fr!important}
  .v281-network-toolbar{grid-template-columns:1fr!important}
  .v281-account-service{align-items:flex-start;flex-direction:column}
  .v281-account-service>div:last-child{justify-content:flex-start}
}
@media (max-width:430px){
  .v281-service-summary,.v281-network-kpis,.v281-notification-summary{grid-template-columns:1fr!important}
  .v281-notification-summary>a{grid-column:auto}
}
