/* CLAUDE: stile applicazione Mango Mobile Privacy (BS5 nativo, ritocchi) */
body { font-size: 14px; }

/* ---------- LAYOUT SIDEBAR ---------- */
.mm-sidebar { --bs-bg-opacity: 1; width: 250px; }
.mm-brand {
	align-items: center; gap: .5rem; padding: 1rem 1.1rem; font-size: 1.15rem; font-weight: 700;
	color: #fff; text-decoration: none; letter-spacing: .3px; border-bottom: 1px solid rgba(255,255,255,.08);
}
.mm-brand:hover { color: #fff; }
.mm-nav { padding: .6rem; gap: 2px; }
.mm-nav .nav-link { color: #cfd4da; border-radius: .4rem; padding: .55rem .8rem; display: flex; align-items: center; gap: .6rem; }
.mm-nav .nav-link:hover { background: rgba(255,255,255,.07); color: #fff; }
.mm-nav .nav-link.active { background: #0d6efd; color: #fff; }
.mm-nav .nav-link i { width: 1.1rem; text-align: center; }
.mm-user .dropdown-toggle::after { margin-left: auto; }

/* desktop: sidebar fissa, contenuto a fianco */
@media (min-width: 992px) {
	.mm-shell { display: flex; min-height: 100vh; }
	.mm-sidebar { position: sticky; top: 0; height: 100vh; flex: 0 0 250px; }
	.mm-main { flex: 1 1 auto; min-width: 0; }
}
/* mobile: barra superiore con hamburger */
.mm-topbar { display: flex; align-items: center; padding: .5rem .75rem; background: #212529; color: #fff; position: sticky; top: 0; z-index: 1030; }

/* respiro del contenuto rispetto a bordi e sidebar */
.mm-main > main { padding-left: 1.75rem; padding-right: 1.75rem; }
@media (min-width: 992px) { .mm-main > main { padding-left: 2rem; padding-right: 2rem; } }

.navbar-brand { letter-spacing: .3px; }
.card { border: 0; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.table > :not(caption) > * > * { vertical-align: middle; }
.priv-preview { background:#fff; color:#222; padding:24px 28px; max-height:68vh; overflow:auto;
	font-size:14px; text-align:justify; line-height:1.55; }
.priv-preview h1 { font-size:22px; } .priv-preview h2 { font-size:18px; }
.priv-preview h3 { font-size:15px; text-transform:uppercase; }
.priv-legend { font-size:12px; color:#888; }
.priv-legend code { background:#f2f2f2; padding:1px 5px; border-radius:3px; }
.col-azioni { white-space:nowrap; text-align:right; }
.login-wrap { max-width: 380px; margin: 8vh auto; }

/* ---------- BLOCCHI PREVENTIVO (accordion) ---------- */
.blocco-caret i { transition: transform .15s ease; }
.blocco-caret.collapsed i { transform: rotate(-90deg); }
.blocco-titolo { cursor: pointer; }
.prev-corpo { color:#444; border-top:1px solid #eee; padding-top:8px; }
.prev-corpo p:last-child { margin-bottom:0; }
.prev-blocco.border, .prev-blocco-figlio.border { border-color:#e3e6ea !important; }
