/* LDG Access Center Governo Accessi V1 Commerciale */
body.ldg-ac-context-frontend #header,
body.ldg-ac-context-frontend #footer,
body.ldg-ac-context-frontend #socket,
body.ldg-ac-context-frontend .footer_color,
body.ldg-ac-context-frontend .socket_color,
body.ldg-ac-context-frontend .container_wrap.footer_color,
body.ldg-ac-context-frontend .container_wrap.socket_color,
body.ldg-ac-context-frontend .av-logo-container,
body.ldg-ac-context-frontend .main_menu,
body.ldg-ac-context-frontend .title_container,
body.ldg-ac-context-frontend .avia-breadcrumbs,
body.ldg-ac-context-frontend #scroll-top-link,
body.ldg-ac-context-frontend footer {
    display: none !important;
}
body.ldg-ac-context-frontend,
html.ldg-ac-context-frontend {
    margin-top: 0 !important;
    overflow-x: hidden;
    background: #f1f4f8;
}
body.ldg-ac-context-frontend #wpadminbar { display: none !important; }
body.ldg-ac-app-page .ldg-ac-app { isolation: isolate; }

.ldg-ac-app,
.ldg-ac-app * { box-sizing: border-box; }

.ldg-ac-app {
    --ldg-blue: #004080;
    --ldg-blue-2: #0066aa;
    --ldg-dark: #00234b;
    --ldg-green: #4f9e3d;
    --ldg-green-bg: #e7f8dc;
    --ldg-orange: #d97706;
    --ldg-orange-bg: #fff1cc;
    --ldg-red: #c62828;
    --ldg-red-bg: #ffe1e1;
    --ldg-gray: #64748b;
    --ldg-gray-bg: #eef2f7;
    --ldg-bg: #f1f4f8;
    --ldg-panel: #ffffff;
    --ldg-line: #d9e1ea;
    --ldg-line-soft: #e8eef5;
    --ldg-text: #10243f;
    --ldg-muted: #667085;
    width: 100%;
    min-height: 100vh;
    background: var(--ldg-bg);
    color: var(--ldg-text);
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    letter-spacing: -0.01em;
}
.ldg-ac-app[data-context="frontend"] {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.ldg-ac-sidebar {
    min-height: 100vh;
    background: radial-gradient(circle at 20% 0%, rgba(20,134,184,.28), transparent 32%), linear-gradient(180deg, #002b5c 0%, #001b3a 100%);
    color: #fff;
    padding: 20px 16px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-shadow: 18px 0 44px rgba(0,35,75,.15);
    position: sticky;
    top: 0;
    align-self: start;
    z-index: 8;
}
.ldg-ac-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 4px 18px;
    border-bottom: 1px solid rgba(255,255,255,.14);
}
.ldg-ac-brand-mark {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    color: var(--ldg-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 14px;
    flex: 0 0 auto;
}
.ldg-ac-brand strong {
    display: block;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    font-weight: 900;
}
.ldg-ac-brand span {
    display: block;
    margin-top: 5px;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 800;
}
.ldg-ac-nav { display: grid; gap: 6px; }
.ldg-ac-nav button {
    width: 100%;
    min-height: 44px;
    border: 0;
    background: transparent;
    color: rgba(255,255,255,.86);
    border-radius: 10px;
    padding: 0 13px;
    display: flex;
    align-items: center;
    gap: 11px;
    text-align: left;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
}
.ldg-ac-nav button:hover,
.ldg-ac-nav button.is-active {
    background: linear-gradient(135deg, #0058a8, #004080);
    color: #fff;
    box-shadow: 0 12px 26px rgba(0,0,0,.18);
}
.ldg-ac-nav svg,
.ldg-ac-btn svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
    flex: 0 0 auto;
}
.ldg-ac-sidebar-admin {
    margin-top: auto;
    border-top: 1px solid rgba(255,255,255,.14);
    padding: 16px 6px 4px;
}
.ldg-ac-sidebar-admin strong { display:block; color:#fff; font-weight:900; font-size:14px; }
.ldg-ac-sidebar-admin span { display:block; color:rgba(255,255,255,.72); font-size:12px; margin-top:4px; font-weight:700; }
.ldg-ac-logout { display:inline-flex; margin-top:12px; color:#fff; text-decoration:none; font-weight:900; font-size:13px; border:1px solid rgba(255,255,255,.22); border-radius:9px; padding:8px 12px; }

.ldg-ac-main { min-width: 0; padding: 24px; }
.ldg-ac-topbar {
    background: #fff;
    border: 1px solid var(--ldg-line);
    border-radius: 16px;
    min-height: 92px;
    padding: 20px 22px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 12px 28px rgba(15,23,42,.05);
}
.ldg-ac-topbar h1 { margin:0; color: var(--ldg-blue); font-size: 28px; font-weight: 900; line-height:1; text-transform: uppercase; letter-spacing: -.045em; }
.ldg-ac-topbar p { margin: 8px 0 0; color: var(--ldg-muted); font-size: 15px; font-weight: 800; }
.ldg-ac-top-actions, .ldg-ac-detail-actions, .ldg-ac-modal-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }

.ldg-ac-btn {
    min-height: 42px;
    border: 1px solid var(--ldg-line);
    background: #fff;
    color: var(--ldg-dark);
    border-radius: 10px;
    padding: 0 15px;
    font-size: 14px;
    font-weight: 900;
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.ldg-ac-btn-primary { background: var(--ldg-blue); border-color: var(--ldg-blue); color:#fff; box-shadow: 0 12px 24px rgba(0,64,128,.2); }
.ldg-ac-btn-danger { background: var(--ldg-red); border-color: var(--ldg-red); color:#fff; }
.ldg-ac-btn-ghost { background:#f7fafc; }

.ldg-ac-view { display: none; }
.ldg-ac-view.is-active { display: block; }
.ldg-ac-hero-dashboard {
    min-height: 170px;
    border-radius: 18px;
    padding: 26px 30px;
    margin-bottom: 16px;
    color: #fff;
    background: linear-gradient(135deg, #00234b, #004080 58%, #0d76b8);
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    box-shadow: 0 24px 50px rgba(0,35,75,.2);
    overflow:hidden;
    position:relative;
}
.ldg-ac-hero-dashboard:after { content:""; position:absolute; width:340px; height:340px; border-radius:50%; right:-90px; bottom:-150px; background:rgba(154,182,43,.25); }
.ldg-ac-hero-dashboard span { display:block; color:#b8d448; text-transform:uppercase; font-size:12px; font-weight:900; letter-spacing:.08em; }
.ldg-ac-hero-dashboard h2 { margin:8px 0 7px; font-size:36px; font-weight:900; letter-spacing:-.06em; color:#fff; }
.ldg-ac-hero-dashboard p { margin:0; color:rgba(255,255,255,.86); font-size:15px; font-weight:700; max-width:760px; }
.ldg-ac-hero-status { position:relative; z-index:1; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22); border-radius:14px; padding:14px 18px; text-align:right; }
.ldg-ac-hero-status strong { display:block; font-size:18px; color:#fff; font-weight:900; }
.ldg-ac-hero-status small { color:rgba(255,255,255,.78); font-weight:800; }

.ldg-ac-kpis { display:grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.ldg-ac-kpi, .ldg-ac-panel { background:#fff; border:1px solid var(--ldg-line); border-radius:14px; box-shadow:0 10px 25px rgba(15,23,42,.045); }
.ldg-ac-kpi { padding:18px 18px 16px; border-left:6px solid var(--ldg-blue); min-height:120px; }
.ldg-ac-kpi.is-ok { border-left-color: var(--ldg-green); }
.ldg-ac-kpi.is-warn { border-left-color: var(--ldg-orange); }
.ldg-ac-kpi.is-bad { border-left-color: var(--ldg-red); }
.ldg-ac-kpi.is-dark { border-left-color: #334155; }
.ldg-ac-kpi.is-info { border-left-color: #1486b8; }
.ldg-ac-kpi span { display:block; color:#475569; font-size:12px; text-transform:uppercase; letter-spacing:.04em; font-weight:900; }
.ldg-ac-kpi strong { display:block; color:var(--ldg-blue); font-size:34px; line-height:1; margin-top:10px; font-weight:900; }
.ldg-ac-kpi small { display:block; color:var(--ldg-muted); font-size:13px; margin-top:8px; font-weight:800; }

.ldg-ac-overview-grid { display:grid; grid-template-columns: 1.2fr .9fr; gap:16px; margin-bottom:16px; }
.ldg-ac-panel { overflow:hidden; }
.ldg-ac-panel-head { min-height:56px; border-bottom:1px solid var(--ldg-line-soft); display:flex; justify-content:space-between; align-items:center; padding:14px 18px; gap:12px; }
.ldg-ac-panel-head h2 { margin:0; font-size:17px; color:var(--ldg-blue); font-weight:900; text-transform:uppercase; letter-spacing:-.03em; }
.ldg-ac-panel-head button { border:0; background:#eaf2f8; color:var(--ldg-blue); border-radius:999px; padding:7px 12px; font-weight:900; cursor:pointer; }
.ldg-ac-chart-layout { padding:20px; display:grid; grid-template-columns:220px minmax(0,1fr); gap:18px; align-items:center; }
.ldg-ac-donut { width:190px; height:190px; border-radius:50%; position:relative; margin:auto; }
.ldg-ac-donut:after { content:""; position:absolute; inset:46px; border-radius:50%; background:#fff; box-shadow:inset 0 0 0 1px var(--ldg-line); }
.ldg-ac-donut div { position:absolute; inset:0; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.ldg-ac-donut strong { font-size:34px; color:var(--ldg-dark); font-weight:900; line-height:1; }
.ldg-ac-donut span { color:var(--ldg-muted); font-size:12px; font-weight:800; }
.ldg-ac-bars { display:grid; gap:12px; }
.ldg-ac-bar-row { display:grid; grid-template-columns:minmax(0,1fr) 38px; gap:10px; align-items:center; font-size:13px; font-weight:900; }
.ldg-ac-bar-row span { display:flex; align-items:center; gap:8px; color:var(--ldg-dark); }
.ldg-ac-bar-row i { width:10px; height:10px; border-radius:50%; display:inline-block; }
.ldg-ac-bar-row b { color:var(--ldg-blue); text-align:right; }
.ldg-ac-bar-row em { grid-column:1 / -1; height:8px; border-radius:999px; background:#eef2f7; overflow:hidden; }
.ldg-ac-bar-row u { display:block; height:8px; background:var(--ldg-green); border-radius:999px; }

.ldg-ac-list { padding:14px 18px; }
.ldg-ac-line { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--ldg-line-soft); }
.ldg-ac-line:last-child { border-bottom:0; }
.ldg-ac-line strong { display:block; font-size:14px; font-weight:900; color:var(--ldg-dark); }
.ldg-ac-line span { display:block; color:var(--ldg-muted); font-weight:700; margin-top:3px; }
.ldg-ac-line time { font-weight:900; color:var(--ldg-orange); }
.ldg-ac-line.is-bad time { color:var(--ldg-red); }
.ldg-ac-empty { padding:22px; color:var(--ldg-muted); font-weight:800; }

.ldg-ac-quick-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; padding:18px; }
.ldg-ac-quick-grid button { min-height:88px; border:1px solid var(--ldg-line); border-radius:12px; background:#fff; color:var(--ldg-dark); font-weight:900; cursor:pointer; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; }
.ldg-ac-quick-grid svg { width:28px; height:28px; fill:var(--ldg-blue); }

.ldg-ac-program-grid { display:grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap:12px; padding:18px; }
.ldg-ac-program-grid.is-large { grid-template-columns: repeat(4, minmax(0,1fr)); padding:0; }
.ldg-ac-program-tile { min-height:142px; border:1px solid var(--ldg-line); border-left:6px solid var(--ldg-green); border-radius:13px; background:#fff; padding:16px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; }
.ldg-ac-program-tile.is-muted { border-left-color:#cbd5e1; opacity:.78; }
.ldg-ac-program-tile strong { color:var(--ldg-blue); font-size:15px; font-weight:900; text-transform:uppercase; }
.ldg-ac-program-tile span { color:var(--ldg-muted); font-size:13px; font-weight:700; line-height:1.35; }
.ldg-ac-program-tile em { color:var(--ldg-dark); font-size:13px; font-style:normal; font-weight:900; }
.ldg-ac-program-icon { width:46px; height:46px; border-radius:12px; background:#eaf2f8; color:var(--ldg-blue); display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; }
.ldg-ac-program-icon svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:3.4; stroke-linecap:round; stroke-linejoin:round; }

.ldg-ac-workspace-head { min-height:70px; display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin:4px 0 14px; }
.ldg-ac-workspace-head h2 { margin:0; font-size:28px; color:var(--ldg-blue); font-weight:900; text-transform:uppercase; letter-spacing:-.045em; }
.ldg-ac-workspace-head p { margin:6px 0 0; color:var(--ldg-muted); font-weight:800; }
.ldg-ac-workspace { display:grid; grid-template-columns:360px minmax(0,1fr); gap:14px; }
.ldg-ac-users-panel { max-height: calc(100vh - 140px); display:flex; flex-direction:column; }
.ldg-ac-user-search { padding:12px; border-bottom:1px solid var(--ldg-line-soft); }
.ldg-ac-user-search input { width:100%; min-height:44px; border:1px solid var(--ldg-line); border-radius:10px; padding:0 12px; font-size:15px; font-weight:700; }
.ldg-ac-user-list { overflow:auto; }
.ldg-ac-user-row { width:100%; background:#fff; border:0; border-bottom:1px solid var(--ldg-line-soft); text-align:left; padding:14px 15px; cursor:pointer; position:relative; }
.ldg-ac-user-row:hover, .ldg-ac-user-row.is-active { background:#eaf4ff; }
.ldg-ac-user-row strong { display:block; color:var(--ldg-dark); font-size:15px; font-weight:900; }
.ldg-ac-user-row span { display:block; color:var(--ldg-muted); font-size:13px; margin-top:4px; font-weight:700; }
.ldg-ac-user-row small { display:block; color:#586b82; font-size:12px; margin-top:4px; font-weight:800; }
.ldg-ac-user-row em { position:absolute; right:12px; top:12px; background:var(--ldg-red-bg); color:var(--ldg-red); border-radius:999px; padding:4px 8px; font-style:normal; font-size:10px; font-weight:900; }
.ldg-ac-detail-shell { min-height:720px; }
.ldg-ac-user-detail { padding:16px; }
.ldg-ac-loading { padding:24px; color:var(--ldg-muted); font-weight:900; }
.ldg-ac-detail-head { border:1px solid var(--ldg-line); border-radius:14px; padding:18px; margin-bottom:14px; background:linear-gradient(180deg,#fff,#fbfcfe); display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.ldg-ac-detail-head h2 { margin:0; color:var(--ldg-blue); font-size:25px; font-weight:900; text-transform:uppercase; }
.ldg-ac-detail-head p { margin:5px 0 0; color:var(--ldg-muted); font-size:14px; font-weight:800; }
.ldg-ac-user-status { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.ldg-ac-badge { display:inline-flex; min-height:24px; align-items:center; justify-content:center; border-radius:999px; padding:0 10px; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.03em; background:var(--ldg-gray-bg); color:var(--ldg-gray); }
.ldg-ac-state-active { background:var(--ldg-green-bg); color:#2f6e1f; }
.ldg-ac-state-suspended { background:var(--ldg-orange-bg); color:#92400e; }
.ldg-ac-state-expired, .ldg-ac-state-revoked { background:var(--ldg-red-bg); color:#991b1b; }
.ldg-ac-state-info { background:#eaf2f8; color:var(--ldg-blue); }
.ldg-ac-pill { background:#eaf2f8; color:var(--ldg-blue); border-radius:999px; padding:5px 10px; font-weight:900; }

.ldg-ac-credentials-panel { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.ldg-ac-credentials-panel div { background:#f7fafc; border:1px solid var(--ldg-line); border-radius:12px; padding:13px; }
.ldg-ac-credentials-panel strong { display:block; font-size:12px; color:var(--ldg-blue); text-transform:uppercase; font-weight:900; }
.ldg-ac-credentials-panel span { display:block; margin-top:6px; color:var(--ldg-dark); font-size:14px; font-weight:900; }
.ldg-ac-credentials-panel.is-large { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ldg-ac-security-actions { border:1px solid var(--ldg-line); border-radius:14px; padding:18px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.ldg-ac-security-actions p { width:100%; margin:8px 0 0; color:var(--ldg-muted); font-size:14px; font-weight:800; }

.ldg-ac-form-card, .ldg-ac-license-panel { border:1px solid var(--ldg-line); border-radius:14px; background:#fff; padding:16px; margin-bottom:14px; }
.ldg-ac-form-card h3 { margin:0 0 14px; color:var(--ldg-blue); font-size:18px; text-transform:uppercase; font-weight:900; }
.ldg-ac-form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.ldg-ac-form-grid label, .ldg-ac-license-grid label, .ldg-ac-access-controls label { display:block; color:#475569; text-transform:uppercase; font-size:12px; font-weight:900; letter-spacing:.03em; }
.ldg-ac-form-grid input, .ldg-ac-form-grid select, .ldg-ac-license-grid input, .ldg-ac-license-grid select, .ldg-ac-access-controls input[type="date"], .ldg-ac-access-controls select { width:100%; min-height:42px; margin-top:5px; border:1px solid var(--ldg-line); border-radius:10px; padding:0 10px; color:var(--ldg-dark); font-size:14px; font-weight:800; }
.ldg-ac-license-head { display:flex; justify-content:space-between; gap:14px; margin-bottom:14px; align-items:flex-start; }
.ldg-ac-license-head strong { display:block; color:var(--ldg-blue); font-size:18px; font-weight:900; }
.ldg-ac-license-head span { display:block; color:var(--ldg-muted); font-size:13px; margin-top:4px; font-weight:800; }
.ldg-ac-license-grid { display:grid; grid-template-columns:1fr 1fr 240px; gap:12px; margin-bottom:14px; }
.ldg-ac-checkline input { width:auto; min-height:auto; margin:0 6px 0 0; }
.ldg-ac-checkline em { text-transform:none; color:var(--ldg-blue); font-style:normal; }
.ldg-ac-modules-drawer { border:1px solid var(--ldg-line-soft); border-radius:12px; padding:12px; background:#fbfff7; }
.ldg-ac-modules-drawer summary { cursor:pointer; color:var(--ldg-blue); font-size:14px; font-weight:900; text-transform:uppercase; }
.ldg-ac-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:12px; }
.ldg-ac-module-grid label { min-height:34px; border:1px solid var(--ldg-line); border-radius:9px; background:#f3f6fa; display:flex; align-items:center; gap:8px; padding:0 10px; font-size:12px; font-weight:800; }
.ldg-ac-module-grid label.is-on { background:var(--ldg-green-bg); border-color:#a6d56a; }
.ldg-ac-modules-drawer p { margin:10px 0 0; color:var(--ldg-muted); font-weight:800; }

.ldg-ac-access-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ldg-ac-access-card { border:1px solid var(--ldg-line); border-left:6px solid #9fb0c2; border-radius:14px; padding:14px; background:#fff; }
.ldg-ac-state-border-active { border-left-color:var(--ldg-green); background:#fbfff6; }
.ldg-ac-state-border-suspended { border-left-color:var(--ldg-orange); background:#fffaf0; }
.ldg-ac-state-border-expired, .ldg-ac-state-border-revoked { border-left-color:var(--ldg-red); background:#fff7f7; }
.ldg-ac-access-title { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:10px; }
.ldg-ac-program-heading { display:flex; align-items:center; gap:10px; }
.ldg-ac-program-heading strong { color:var(--ldg-blue); font-weight:900; font-size:15px; }
.ldg-ac-access-controls { display:grid; grid-template-columns:150px 1fr 220px; gap:10px; align-items:end; }
.ldg-ac-access-controls input[type="checkbox"] { width:19px; height:19px; margin-top:10px; }
.ldg-ac-savebar { position:sticky; bottom:0; z-index:5; margin:16px -16px -16px; background:rgba(255,255,255,.96); backdrop-filter:blur(12px); border-top:1px solid var(--ldg-line); padding:14px 16px; display:flex; justify-content:space-between; align-items:center; gap:10px; }
.ldg-ac-savebar strong { color:var(--ldg-blue); }

.ldg-ac-table-page .ldg-ac-panel { padding:16px; }
.ldg-ac-table { width:100%; border-collapse:collapse; font-size:14px; }
.ldg-ac-table th { text-align:left; background:#f3f6fa; color:#475569; font-size:12px; text-transform:uppercase; letter-spacing:.04em; font-weight:900; padding:13px; border:1px solid var(--ldg-line); }
.ldg-ac-table td { padding:13px; border:1px solid var(--ldg-line); background:#fff; vertical-align:top; }
.ldg-ac-table td strong { color:var(--ldg-blue); }
.ldg-ac-table td small { display:block; margin-top:4px; color:var(--ldg-muted); }
.ldg-ac-settings-grid { padding:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ldg-ac-settings-grid div { border:1px solid var(--ldg-line); border-radius:12px; padding:14px; background:#f7fafc; }
.ldg-ac-settings-grid strong { display:block; color:var(--ldg-blue); text-transform:uppercase; font-weight:900; }
.ldg-ac-settings-grid span { display:block; margin-top:7px; color:var(--ldg-dark); font-weight:800; }

.ldg-ac-modal { position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center; background:rgba(0,27,58,.55); padding:24px; }
.ldg-ac-modal.is-open { display:flex; }
.ldg-ac-modal-box { background:#fff; border-radius:16px; width:min(920px,100%); max-height:90vh; overflow:auto; box-shadow:0 30px 80px rgba(0,0,0,.25); }
.ldg-ac-modal-box.is-small { width:min(520px,100%); }
.ldg-ac-modal-head { padding:18px 20px; border-bottom:1px solid var(--ldg-line); display:flex; align-items:center; justify-content:space-between; }
.ldg-ac-modal-head h2 { margin:0; color:var(--ldg-blue); font-size:22px; font-weight:900; text-transform:uppercase; }
.ldg-ac-modal-head button { border:0; background:#eef2f7; width:34px; height:34px; border-radius:50%; font-size:22px; cursor:pointer; }
.ldg-ac-modal form, .ldg-ac-modal p[data-confirm-message] { padding:18px 20px; }
.ldg-ac-access-mini { margin-top:14px; border:1px solid var(--ldg-line); border-radius:12px; padding:14px; }
.ldg-ac-access-mini h3 { margin:0 0 10px; color:var(--ldg-blue); font-weight:900; }
.ldg-ac-mini-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.ldg-ac-mini-grid label { background:#f3f6fa; border-radius:8px; padding:9px; font-weight:800; }
.ldg-ac-wide-label { display:block; margin-top:12px; font-weight:900; color:#475569; }
.ldg-ac-wide-label input { display:block; width:220px; min-height:40px; margin-top:5px; border:1px solid var(--ldg-line); border-radius:9px; padding:0 10px; }
.ldg-ac-modal-actions { padding:16px 20px; border-top:1px solid var(--ldg-line); justify-content:flex-end; }
.ldg-ac-toast { position:fixed; right:22px; bottom:22px; z-index:1000000; display:grid; gap:8px; }
.ldg-ac-toast-msg { background:#123b68; color:#fff; border-radius:10px; padding:12px 14px; font-weight:900; box-shadow:0 16px 40px rgba(0,0,0,.18); }
.ldg-ac-toast-msg.is-error { background:var(--ldg-red); }
.ldg-ac-toast-msg.is-success { background:var(--ldg-green); }

.ldg-ac-client-access { max-width:1180px; margin:24px auto; padding:24px; background:#f5f7fa; font-family:"Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif; }
.ldg-ac-client-head h2 { color:#004080; margin:0; font-size:28px; font-weight:900; }
.ldg-ac-client-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }
.ldg-ac-client-card { background:#fff; border:1px solid #d9e1ea; border-left:5px solid #64748b; border-radius:12px; padding:16px; }
.ldg-ac-client-card.ldg-ac-state-active { border-left-color:#4f9e3d; }
.ldg-ac-client-card strong { display:block; color:#004080; font-weight:900; }
.ldg-ac-client-card span { display:inline-flex; margin-top:8px; border-radius:999px; padding:5px 9px; font-size:11px; font-weight:900; }

@media (max-width: 1420px) {
    .ldg-ac-kpis { grid-template-columns: repeat(3, 1fr); }
    .ldg-ac-overview-grid { grid-template-columns: 1fr; }
    .ldg-ac-program-grid { grid-template-columns: repeat(3, 1fr); }
    .ldg-ac-workspace { grid-template-columns:320px minmax(0,1fr); }
}
@media (max-width: 1100px) {
    .ldg-ac-app { grid-template-columns: 86px minmax(0,1fr); }
    .ldg-ac-brand div:last-child, .ldg-ac-nav span, .ldg-ac-sidebar-admin strong, .ldg-ac-sidebar-admin span, .ldg-ac-logout { display:none; }
    .ldg-ac-nav button { justify-content:center; padding:0; }
    .ldg-ac-workspace, .ldg-ac-chart-layout { grid-template-columns: 1fr; }
    .ldg-ac-access-grid, .ldg-ac-form-grid, .ldg-ac-license-grid, .ldg-ac-module-grid, .ldg-ac-credentials-panel, .ldg-ac-settings-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .ldg-ac-app { display:block; }
    .ldg-ac-sidebar { min-height:auto; position:relative; }
    .ldg-ac-nav { grid-template-columns: repeat(2,1fr); }
    .ldg-ac-nav span { display:inline; }
    .ldg-ac-main { padding:14px; }
    .ldg-ac-topbar, .ldg-ac-detail-head, .ldg-ac-savebar { display:block; }
    .ldg-ac-top-actions { margin-top:12px; }
    .ldg-ac-kpis, .ldg-ac-program-grid, .ldg-ac-mini-grid, .ldg-ac-client-grid { grid-template-columns: 1fr; }
    .ldg-ac-access-controls { grid-template-columns:1fr; }
}


/* ==========================================================
 * LDG Access Center V3 - WOW suite + color differentiation
 * ========================================================== */
.ldg-ac-app {
    --c-audit:#0b66c3;
    --c-ifs:#227a4d;
    --c-esg:#2f9d54;
    --c-control:#0057a8;
    --c-mega:#7c5cff;
    --c-ce:#0f8fb3;
    --c-haccp:#d97706;
    --c-aqua:#00a3c7;
    --c-relazioni:#7a3fb5;
    --c-label:#c7508c;
    --c-active:#24a148;
    --c-suspended:#d97706;
    --c-expired:#c62828;
    --c-revoked:#475569;
    --c-disabled:#94a3b8;
}
.ldg-ac-context-frontend #header,
.ldg-ac-context-frontend #header_main,
.ldg-ac-context-frontend #main > .title_container,
.ldg-ac-context-frontend .avia-breadcrumbs,
.ldg-ac-context-frontend .av-logo-container,
.ldg-ac-context-frontend .main_menu,
.ldg-ac-context-frontend .av-main-nav-wrap,
.ldg-ac-context-frontend #footer,
.ldg-ac-context-frontend #socket,
.ldg-ac-context-frontend footer,
.ldg-ac-context-frontend .footer_color,
.ldg-ac-context-frontend .socket_color,
.ldg-ac-context-frontend .container_wrap.footer_color,
.ldg-ac-context-frontend .container_wrap.socket_color,
.ldg-ac-context-frontend #scroll-top-link { display:none !important; }
body.ldg-ac-app-page #main,
html.ldg-ac-app-page #main { padding-top:0 !important; margin-top:0 !important; }
body.ldg-ac-app-page .container,
body.ldg-ac-app-page .content,
body.ldg-ac-app-page .entry-content-wrapper { max-width:none !important; width:100% !important; padding:0 !important; margin:0 !important; }

.ldg-ac-access-grid-v3 { gap:18px !important; align-items:stretch; }
.ldg-ac-access-card,
.ldg-ac-program-tile { position:relative; overflow:hidden; isolation:isolate; }
.ldg-ac-access-card::before,
.ldg-ac-program-tile::before {
    content:"";
    position:absolute;
    left:0; top:0; bottom:0;
    width:7px;
    background:var(--area-color, #64748b);
    opacity:.95;
    z-index:1;
}
.ldg-ac-access-card::after,
.ldg-ac-program-tile::after {
    content:"";
    position:absolute;
    right:-70px;
    top:-80px;
    width:180px;
    height:180px;
    border-radius:999px;
    background:var(--area-glow, rgba(100,116,139,.08));
    z-index:-1;
}
.ldg-ac-area-audit_iso{--area-color:var(--c-audit);--area-glow:rgba(11,102,195,.12);}
.ldg-ac-area-ifs{--area-color:var(--c-ifs);--area-glow:rgba(34,122,77,.14);}
.ldg-ac-area-esg_cflca{--area-color:var(--c-esg);--area-glow:rgba(47,157,84,.14);}
.ldg-ac-area-sicurezza_8108{--area-color:#16a34a;--area-glow:rgba(22,163,74,.15);}
.ldg-ac-area-ldg_control_center{--area-color:var(--c-control);--area-glow:rgba(0,87,168,.15);}
.ldg-ac-area-mega_iso_food{--area-color:var(--c-mega);--area-glow:rgba(124,92,255,.13);}
.ldg-ac-area-ce_dossier_system{--area-color:var(--c-ce);--area-glow:rgba(15,143,179,.13);}
.ldg-ac-area-haccp_dossier_system{--area-color:var(--c-haccp);--area-glow:rgba(217,119,6,.13);}
.ldg-ac-area-aquasafe_os{--area-color:var(--c-aqua);--area-glow:rgba(0,163,199,.14);}
.ldg-ac-area-ldg_relazioni_tecniche{--area-color:var(--c-relazioni);--area-glow:rgba(122,63,181,.16);}
.ldg-ac-area-ldg_label_studio{--area-color:var(--c-label);--area-glow:rgba(199,80,140,.14);}

.ldg-ac-program-heading svg,
.ldg-ac-program-tile svg { background:color-mix(in srgb, var(--area-color, #004080) 12%, white); color:var(--area-color, #004080); border:1px solid color-mix(in srgb, var(--area-color, #004080) 20%, white); }
.ldg-ac-access-card.is-enabled { background:linear-gradient(135deg, rgba(36,161,72,.08), #fff 45%, var(--area-glow)); border-color:color-mix(in srgb, var(--area-color, #64748b) 35%, #d9e1ea); box-shadow:0 18px 38px rgba(0,35,75,.08); }
.ldg-ac-access-card.is-disabled { background:linear-gradient(135deg, #fff, #fbfcfe); }
.ldg-ac-state-border-active::before{background:var(--c-active)!important;}
.ldg-ac-state-border-expired::before{background:var(--c-expired)!important;}
.ldg-ac-state-border-suspended::before{background:var(--c-suspended)!important;}
.ldg-ac-state-border-revoked::before{background:var(--c-revoked)!important;}
.ldg-ac-state-active{background:#daf8d7!important;color:#14532d!important;border:1px solid #98d98e!important;}
.ldg-ac-state-expired{background:#ffe1e1!important;color:#991b1b!important;border:1px solid #f6aaaa!important;}
.ldg-ac-state-suspended{background:#fff0cc!important;color:#92400e!important;border:1px solid #f5c86c!important;}
.ldg-ac-state-revoked{background:#e8edf3!important;color:#334155!important;border:1px solid #cbd5e1!important;}
.ldg-ac-state-info{background:#e5f2ff!important;color:#004080!important;border:1px solid #b9dbff!important;}

.ldg-ac-suite-card {
    grid-column:1 / -1;
    min-height:unset!important;
    border:1px solid rgba(122,63,181,.24)!important;
    background:linear-gradient(135deg, rgba(122,63,181,.06), #fff 32%, rgba(154,182,43,.07))!important;
    box-shadow:0 22px 48px rgba(24, 36, 56, .10)!important;
}
.ldg-ac-suite-card::before { width:9px; background:linear-gradient(180deg, var(--c-relazioni), #9ab62b)!important; }
.ldg-ac-suite-ribbon {
    position:absolute;
    top:16px;
    right:16px;
    border-radius:999px;
    padding:7px 12px;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
    background:linear-gradient(135deg,#7a3fb5,#004080);
    color:#fff;
    box-shadow:0 12px 26px rgba(122,63,181,.22);
}
.ldg-ac-suite-title { padding-right:150px; margin-bottom:16px!important; }
.ldg-ac-suite-title .ldg-ac-program-heading svg { width:54px!important; height:54px!important; border-radius:16px!important; background:#f1eafe!important; color:var(--c-relazioni)!important; }
.ldg-ac-suite-title strong { font-size:23px!important; color:#5f2f93!important; }
.ldg-ac-suite-title small { display:block; margin-top:4px; color:#64748b; font-size:13px; font-weight:800; }
.ldg-ac-suite-badges { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.ldg-ac-suite-controls {
    display:grid;
    grid-template-columns:minmax(150px,.55fr) minmax(180px,.8fr) minmax(170px,.7fr) minmax(180px,.8fr) minmax(140px,.55fr) minmax(190px,.7fr);
    gap:12px;
    align-items:end;
    padding:14px;
    border:1px solid rgba(122,63,181,.16);
    border-radius:14px;
    background:rgba(255,255,255,.78);
}
.ldg-ac-suite-controls label span,
.ldg-ac-access-controls label span { color:#344054!important; font-size:12px!important; font-weight:900!important; text-transform:uppercase; letter-spacing:.03em; }
.ldg-ac-switch-line { display:flex!important; flex-direction:column!important; gap:8px; }
.ldg-ac-switch-line input[type="checkbox"] { width:20px!important; height:20px!important; accent-color:var(--area-color, #004080); }
.ldg-ac-override em { display:block; color:#004080; font-style:normal; font-weight:900; font-size:12px; }
.ldg-ac-suite-modules {
    margin-top:14px!important;
    border:1px solid rgba(122,63,181,.18)!important;
    background:#fff!important;
    border-radius:16px!important;
    overflow:hidden;
}
.ldg-ac-suite-modules summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:15px 17px!important;
    font-size:15px!important;
    color:#00234b!important;
    background:linear-gradient(135deg, #f7f2ff, #f7ffe8)!important;
    cursor:pointer;
}
.ldg-ac-suite-modules summary b { background:#fff; border:1px solid #d9e1ea; border-radius:999px; padding:5px 10px; color:#5f2f93; }
.ldg-ac-module-grid-v3 { grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:10px!important; padding:14px!important; }
.ldg-ac-module-grid-v3 label {
    min-height:42px;
    border-radius:10px!important;
    padding:10px 12px!important;
    font-size:12px!important;
    font-weight:800!important;
    transition:.18s ease;
}
.ldg-ac-module-grid-v3 label.is-on { background:#eaf8d3!important; border-color:#9ab62b!important; color:#25470f!important; box-shadow:inset 0 0 0 1px rgba(154,182,43,.18); }
.ldg-ac-module-grid-v3 label.is-off { background:#f5f7fa!important; border-color:#dfe6ee!important; color:#475569!important; }
.ldg-ac-module-grid-v3 label:hover { transform:translateY(-1px); box-shadow:0 12px 24px rgba(15,23,42,.08); }

.ldg-ac-access-card:not(.ldg-ac-suite-card) { min-height:156px!important; }
.ldg-ac-access-card:not(.ldg-ac-suite-card) .ldg-ac-access-controls { grid-template-columns:110px minmax(170px,1fr) minmax(170px,.8fr)!important; align-items:end; }
.ldg-ac-savebar-v3 { border-top:1px solid #d9e1ea; background:rgba(255,255,255,.96); box-shadow:0 -12px 30px rgba(15,23,42,.06); }

.ldg-ac-program-tile.is-suite {
    background:linear-gradient(135deg, rgba(122,63,181,.08), #fff 55%, rgba(154,182,43,.08))!important;
    border-color:rgba(122,63,181,.28)!important;
}
.ldg-ac-suite-chip { display:inline-flex; margin-top:8px; width:max-content; border-radius:999px; padding:5px 9px; font-size:10px; text-transform:uppercase; background:#f1eafe; color:#5f2f93; }
.ldg-ac-kpi, .ldg-ac-panel, .ldg-ac-program-tile, .ldg-ac-access-card { border-radius:18px!important; }
.ldg-ac-topbar { border-radius:20px!important; }
.ldg-ac-hero-dashboard { border-radius:22px!important; }

@media (max-width:1500px){
    .ldg-ac-suite-controls { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .ldg-ac-module-grid-v3 { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
}
@media (max-width:1000px){
    .ldg-ac-suite-controls,
    .ldg-ac-access-card:not(.ldg-ac-suite-card) .ldg-ac-access-controls,
    .ldg-ac-module-grid-v3 { grid-template-columns:1fr!important; }
    .ldg-ac-suite-title { padding-right:0; padding-top:42px; }
}

/* V4 Governo Accessi: registro, email, attivazione */
.ldg-ac-governance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}
.ldg-ac-gov-card{background:#f8fafc;border:1px solid #dfe7ef;border-left:5px solid #1486b8;border-radius:14px;padding:16px;min-height:100px}
.ldg-ac-gov-card strong{display:block;color:#004080;text-transform:uppercase;font-size:12px;letter-spacing:.04em;margin-bottom:8px}
.ldg-ac-gov-card span{display:block;color:#00234b;font-weight:900;font-size:16px;margin-bottom:6px}
.ldg-ac-gov-card small{display:block;color:#5f6f86;font-weight:700;line-height:1.35}
.ldg-ac-gov-card.is-sent{border-left-color:#4caf50;background:linear-gradient(135deg,#f4fff2,#fff)}
.ldg-ac-gov-card.is-failed{border-left-color:#c62828;background:linear-gradient(135deg,#fff5f5,#fff)}
.ldg-ac-gov-card.is-empty{border-left-color:#d97706;background:linear-gradient(135deg,#fffaf0,#fff)}
.ldg-ac-inline-alert{border-radius:12px;padding:12px 14px;margin:10px 0 16px;font-weight:800}
.ldg-ac-inline-alert.is-danger{background:#fff0f0;border:1px solid #ffc5c5;color:#8a1111}
.ldg-ac-security-actions-v4{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:16px;margin-bottom:16px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ldg-ac-security-actions-v4 p{flex-basis:100%;margin:6px 0 0;color:#5f6f86;font-weight:700}
.ldg-ac-timeline-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ldg-ac-timeline-panel{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:16px;box-shadow:0 16px 35px rgba(15,35,65,.05)}
.ldg-ac-timeline-panel h3{margin:0 0 12px;color:#004080;text-transform:uppercase;font-size:14px;letter-spacing:.04em}
.ldg-ac-timeline{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto;padding-right:4px}
.ldg-ac-timeline-item{position:relative;background:#f8fafc;border:1px solid #e3eaf2;border-left:5px solid #1486b8;border-radius:12px;padding:12px 14px}
.ldg-ac-timeline-item strong{display:block;color:#00234b;font-weight:900;margin-bottom:4px}
.ldg-ac-timeline-item span,.ldg-ac-timeline-item small,.ldg-ac-timeline-item em{display:block;color:#5f6f86;font-weight:700;font-size:12px;line-height:1.4}
.ldg-ac-timeline-item em{color:#c62828;font-style:normal;margin-top:4px}
.ldg-ac-timeline-item.is-success,.ldg-ac-timeline-item.is-sent{border-left-color:#4caf50;background:#f5fff2}
.ldg-ac-timeline-item.is-warning{border-left-color:#d97706;background:#fffaf0}
.ldg-ac-timeline-item.is-danger,.ldg-ac-timeline-item.is-failed{border-left-color:#c62828;background:#fff5f5}
.ldg-ac-empty-state{background:#f8fafc;border:1px dashed #cdd8e4;border-radius:12px;padding:18px;color:#5f6f86;font-weight:800}
.ldg-ac-audit-dashboard{display:grid;grid-template-columns:1fr;gap:18px}
.ldg-ac-audit-dashboard .ldg-ac-panel h3{margin:0 0 12px;color:#004080;text-transform:uppercase;font-size:15px;letter-spacing:.04em}
.ldg-ac-audit-table tr.is-danger td,.ldg-ac-audit-table tr.is-failed td{background:#fff7f7}
.ldg-ac-audit-table tr.is-warning td{background:#fffaf0}
.ldg-ac-audit-table tr.is-success td,.ldg-ac-audit-table tr.is-sent td{background:#f8fff5}
.ldg-ac-severity-info{background:#eaf4ff!important;color:#004080!important}
.ldg-ac-severity-success{background:#e3f6d7!important;color:#315f00!important}
.ldg-ac-severity-warning{background:#fff0cf!important;color:#8a4b00!important}
.ldg-ac-severity-danger{background:#ffe0e0!important;color:#9b1111!important}
.ldg-ac-note{margin:12px 0 0;color:#5f6f86;font-size:12px;font-weight:700}
.ldg-ac-settings-grid-v4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1100px){.ldg-ac-governance-grid,.ldg-ac-timeline-grid{grid-template-columns:1fr}.ldg-ac-settings-grid-v4{grid-template-columns:1fr}}

/* V6 Definitive WOW: real branding, launcher and contrast hardening */
.ldg-ac-brand-real {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 0 0 18px !important;
}
.ldg-ac-brand-logo {
    display: block;
    width: 218px;
    max-width: 100%;
    height: auto;
    padding: 12px 14px;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 18px 34px rgba(0, 0, 0, .18);
}
.ldg-ac-brand-copy strong {
    color: #ffffff !important;
    font-size: 19px !important;
    letter-spacing: -.02em;
}
.ldg-ac-brand-copy span {
    color: #dff1ff !important;
    font-size: 12px !important;
}
.ldg-ac-brand-copy small {
    display: inline-flex;
    width: max-content;
    margin-top: 8px;
    border-radius: 999px;
    padding: 5px 10px;
    background: rgba(154, 190, 33, .18);
    border: 1px solid rgba(154, 190, 33, .38);
    color: #eaffb6;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.ldg-ac-sidebar-admin strong {
    color: #ffffff !important;
}
.ldg-ac-sidebar-admin span {
    color: #d9eaf5 !important;
}
.ldg-ac-logout {
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, .75) !important;
    background: rgba(255, 255, 255, .04) !important;
}
.ldg-ac-logout:hover {
    background: #97be21 !important;
    border-color: #97be21 !important;
    color: #00234b !important;
}
.ldg-ac-program-launcher .ldg-ac-program-tile {
    justify-content: flex-start;
    min-height: 208px;
}
.ldg-ac-program-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 12px;
    position: relative;
    z-index: 3;
}
.ldg-ac-mini-btn {
    min-height: 34px;
    border: 1px solid #cdd8e4;
    border-radius: 999px;
    padding: 0 12px;
    background: #ffffff;
    color: #003b66;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none !important;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
}
.ldg-ac-mini-btn:hover {
    border-color: #004080;
    color: #004080;
    box-shadow: 0 10px 22px rgba(0, 64, 128, .12);
}
.ldg-ac-mini-btn-primary {
    background: linear-gradient(135deg, #004080, #0066aa);
    border-color: #004080;
    color: #ffffff !important;
}
.ldg-ac-mini-btn-primary:hover {
    color: #ffffff !important;
    transform: translateY(-1px);
}
.ldg-ac-admin-open-program {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    margin-left: 8px;
    border-radius: 999px;
    padding: 0 10px;
    background: #004080;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
    position: relative;
    z-index: 3;
}
.ldg-ac-admin-open-program::after {
    content: "↗";
    margin-left: 5px;
    font-size: 11px;
}
.ldg-ac-admin-open-program:hover {
    background: #97be21;
    color: #00234b !important;
}
.ldg-ac-suite-title .ldg-ac-admin-open-program {
    margin-left: auto;
    margin-right: 8px;
}
.ldg-ac-email-settings-btn {
    color: #ffffff !important;
    justify-content: center;
    font-size: 15px !important;
}
.ldg-ac-email-settings-btn:hover {
    color: #ffffff !important;
}
.ldg-ac-settings-grid-v4 > div strong {
    color: #006d96 !important;
}
.ldg-ac-settings-grid-v4 > div span {
    color: #00234b !important;
}
.ldg-ac-topbar h1::after {
    content: " V2.1.21";
    display: inline-flex;
    vertical-align: middle;
    margin-left: 10px;
    border-radius: 999px;
    padding: 4px 9px;
    background: #eaf7d7;
    border: 1px solid #b9da73;
    color: #315f00;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .04em;
}
@media (max-width: 900px) {
    .ldg-ac-brand-logo {
        width: 44px;
        height: 44px;
        object-fit: contain;
        padding: 6px;
        border-radius: 12px;
    }
    .ldg-ac-brand-copy {
        display: none !important;
    }
    .ldg-ac-program-actions,
    .ldg-ac-admin-open-program {
        display: none !important;
    }
}

/* V7 Enterprise Design System LDG - allineamento con home ldgservice.it */
.ldg-ac-app {
    --ldg-blue: #0088bd;
    --ldg-blue-2: #0a9bd0;
    --ldg-dark: #003b66;
    --ldg-navy: #00315c;
    --ldg-navy-2: #00264a;
    --ldg-green: #97be21;
    --ldg-green-bg: #edf8d7;
    --ldg-bg: #f3f6fa;
    --ldg-panel: #ffffff;
    --ldg-line: #dfe7ef;
    --ldg-line-soft: #edf2f7;
    --ldg-text: #0d2742;
    --ldg-muted: #506178;
    --ldg-shadow: 0 22px 48px rgba(0, 38, 74, .09);
    --ldg-shadow-soft: 0 14px 30px rgba(0, 38, 74, .065);
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
    background: radial-gradient(circle at 80% 0%, rgba(0, 139, 195, .08), transparent 28%), var(--ldg-bg);
    grid-template-columns: 280px minmax(0, 1fr);
    font-size: 15px;
}
.ldg-ac-sidebar {
    background: radial-gradient(circle at 20% -8%, rgba(0, 139, 195, .36), transparent 30%), linear-gradient(180deg, #003f6d 0%, #00284f 42%, #001f3f 100%);
    padding: 24px 18px;
    box-shadow: 24px 0 60px rgba(0, 38, 74, .2);
}
.ldg-ac-brand-real {
    gap: 14px !important;
    padding-bottom: 22px !important;
}
.ldg-ac-brand-logo {
    width: 224px;
    padding: 14px 16px;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 20px 42px rgba(0, 0, 0, .18);
}
.ldg-ac-brand-copy strong {
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 950 !important;
    letter-spacing: -.035em;
}
.ldg-ac-brand-copy span {
    color: #e8f4ff !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}
.ldg-ac-brand-copy small {
    background: rgba(151, 190, 33, .2) !important;
    border-color: rgba(151, 190, 33, .55) !important;
    color: #f2ffca !important;
}
.ldg-ac-nav { gap: 8px; }
.ldg-ac-nav button {
    min-height: 48px;
    color: #f4fbff;
    border-radius: 14px;
    font-size: 15px;
    letter-spacing: -.01em;
}
.ldg-ac-nav button:hover,
.ldg-ac-nav button.is-active {
    background: linear-gradient(135deg, #0069ad, #004f8e);
    color: #ffffff;
    box-shadow: 0 16px 32px rgba(0, 0, 0, .2);
}
.ldg-ac-nav svg { opacity: .95; }
.ldg-ac-sidebar-admin {
    padding-top: 22px;
    border-top-color: rgba(255,255,255,.28);
}
.ldg-ac-sidebar-admin strong {
    color: #ffffff !important;
    font-size: 16px !important;
    letter-spacing: -.02em;
}
.ldg-ac-sidebar-admin span {
    color: #edf7ff !important;
    font-size: 13px !important;
}
.ldg-ac-logout {
    min-height: 42px;
    padding: 0 18px !important;
    border-radius: 14px !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.85) !important;
    background: rgba(255,255,255,.07) !important;
}
.ldg-ac-main { padding: 28px; }
.ldg-ac-topbar {
    min-height: 104px;
    border-radius: 22px;
    padding: 24px 28px;
    box-shadow: var(--ldg-shadow-soft);
}
.ldg-ac-topbar h1 {
    color: #007cad;
    font-size: 30px;
    letter-spacing: -.05em;
}
.ldg-ac-topbar h1::after { content: " V2.1.21" !important; background:#edf8d7; border-color:#c7e687; color:#305900; }
.ldg-ac-topbar p {
    color: #506178;
    font-size: 16px;
    font-weight: 850;
}
.ldg-ac-btn {
    border-radius: 12px;
    min-height: 44px;
    font-size: 14px;
    font-family: inherit;
}
.ldg-ac-btn-primary {
    background: linear-gradient(135deg, #004b86, #006dad);
    border-color: #005f9e;
    box-shadow: 0 16px 28px rgba(0, 76, 134, .22);
}
.ldg-ac-hero-dashboard {
    min-height: 205px;
    border-radius: 28px;
    padding: 34px 38px;
    background: radial-gradient(circle at 94% 0%, rgba(151, 190, 33, .28), transparent 26%), linear-gradient(135deg, #003b66 0%, #004b86 50%, #0088bd 100%);
    box-shadow: 0 30px 70px rgba(0, 51, 91, .2);
}
.ldg-ac-hero-dashboard:after {
    width: 390px;
    height: 390px;
    right: -120px;
    bottom: -190px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.16);
}
.ldg-ac-hero-dashboard span {
    color: #c8f042;
    letter-spacing: .12em;
    font-size: 12px;
}
.ldg-ac-hero-dashboard h2 {
    font-size: 44px;
    letter-spacing: -.065em;
    margin: 10px 0 9px;
}
.ldg-ac-hero-dashboard p {
    font-size: 17px;
    line-height: 1.55;
    font-weight: 800;
}
.ldg-ac-hero-status {
    border-radius: 18px;
    padding: 18px 22px;
    min-width: 160px;
    background: rgba(255,255,255,.16);
}
.ldg-ac-hero-status strong { font-size: 24px; }
.ldg-ac-kpis { gap: 16px; margin-bottom: 20px; }
.ldg-ac-kpi,
.ldg-ac-panel,
.ldg-ac-form-card,
.ldg-ac-access-card,
.ldg-ac-program-tile {
    border-color: var(--ldg-line);
    border-radius: 20px;
    box-shadow: var(--ldg-shadow-soft);
}
.ldg-ac-kpi {
    min-height: 132px;
    padding: 22px 22px 18px;
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}
.ldg-ac-kpi:after {
    content:"";
    position:absolute;
    width:110px;
    height:110px;
    right:-42px;
    bottom:-50px;
    border-radius:50%;
    background: rgba(0, 139, 195, .1);
}
.ldg-ac-kpi span { font-size: 12px; letter-spacing: .07em; color:#334155; }
.ldg-ac-kpi strong { font-size: 32px; color:#007cad; }
.ldg-ac-kpi small { color:#506178; font-size: 13px; }
.ldg-ac-overview-grid { gap: 18px; }
.ldg-ac-panel { overflow: hidden; }
.ldg-ac-panel-head h2,
.ldg-ac-workspace-head h2 {
    color: #007cad;
    font-size: 24px;
    letter-spacing: -.05em;
}
.ldg-ac-workspace-head p { color:#5b6b7f; font-size:16px; font-weight:850; }
.ldg-ac-program-grid.wow-cards,
.ldg-ac-program-grid.is-large {
    gap: 18px;
}
.ldg-ac-program-tile {
    min-height: 172px;
    padding: 22px 22px 20px;
    background: linear-gradient(145deg, #ffffff 0%, #fbfdff 72%, #f3f8fb 100%);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ldg-ac-program-tile:hover {
    transform: translateY(-3px);
    box-shadow: 0 28px 58px rgba(0, 51, 91, .13);
    border-color: rgba(0, 139, 195, .35);
}
.ldg-ac-program-tile strong {
    color:#007cad;
    font-size: 17px;
    letter-spacing: -.03em;
}
.ldg-ac-program-tile span {
    color:#516276;
    font-size: 14px;
    line-height: 1.42;
}
.ldg-ac-program-tile em {
    color:#0d2742;
    font-size: 14px;
}
.ldg-ac-program-icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: #edf7fd;
}
.ldg-ac-program-actions { gap: 10px; }
.ldg-ac-mini-btn {
    min-height: 38px;
    padding: 0 15px;
    border-radius: 999px;
    font-size: 12px;
    font-family: inherit;
}
.ldg-ac-mini-btn-primary {
    background: linear-gradient(135deg, #004b86, #0088bd);
    border-color: #006dad;
}
.ldg-ac-mini-btn-primary::after,
.ldg-ac-admin-open-program::after { content: "↗"; margin-left: 6px; }
.ldg-ac-admin-open-program {
    min-height: 34px;
    padding: 0 13px;
    background: linear-gradient(135deg, #004b86, #0088bd);
    border-radius: 999px;
}
.ldg-ac-suite-card {
    border-radius: 24px !important;
    background: radial-gradient(circle at 97% 0%, rgba(111, 66, 193, .14), transparent 20%), linear-gradient(145deg, #ffffff 0%, #fff 70%, #fbfff4 100%) !important;
}
.ldg-ac-suite-title strong { color:#6f42c1 !important; }
.ldg-ac-modules-drawer summary {
    background: linear-gradient(90deg, #fbf7ff, #f8fff0);
    border-radius: 14px;
}
.ldg-ac-module-grid label {
    border-radius: 12px;
    min-height: 46px;
}
.ldg-ac-module-grid label.is-on {
    background: #edf8d7 !important;
    border-color: #b6d45a !important;
}
.ldg-ac-users-panel,
.ldg-ac-detail-shell { box-shadow: var(--ldg-shadow-soft); }
.ldg-ac-user-row.is-active { background:#eaf4ff; }
.ldg-ac-user-row strong { color:#007cad; font-size: 15px; }
.ldg-ac-table th {
    background:#f5f8fb;
    color:#34445a;
    letter-spacing:.06em;
}
.ldg-ac-table td { font-size:14px; }
.ldg-ac-settings-grid-v4 > div {
    background: #f8fbfd;
    border-radius: 14px;
}
.ldg-ac-email-settings-btn {
    min-height: 48px;
    background: linear-gradient(135deg, #004b86, #0088bd) !important;
    border-color: #006dad !important;
    color: #ffffff !important;
}
.ldg-ac-settings-page input.regular-text,
.ldg-ac-settings-page textarea,
.ldg-ac-settings-page .large-text {
    max-width: 920px;
}
@media (max-width: 1100px) {
    .ldg-ac-app { grid-template-columns: 84px minmax(0, 1fr); }
    .ldg-ac-brand-logo { width: 52px; height: 52px; object-fit: contain; padding: 7px; }
    .ldg-ac-brand-copy, .ldg-ac-nav span, .ldg-ac-sidebar-admin span, .ldg-ac-sidebar-admin strong { display: none !important; }
    .ldg-ac-nav button { justify-content:center; padding:0; }
    .ldg-ac-logout { width:48px; overflow:hidden; padding:0!important; justify-content:center; }
}
@media (max-width: 900px) {
    .ldg-ac-hero-dashboard { min-height: unset; padding: 28px; display:block; }
    .ldg-ac-hero-dashboard h2 { font-size: 34px; }
    .ldg-ac-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ==========================================================
 * V2.1.2 Governance Core - Native Windows Typography System
 * ========================================================== */
.ldg-ac-app,
.ldg-ac-client-access,
.ldg-ac-modal,
.ldg-ac-toast {
    --ldg-font-system: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
    --ldg-fs-h1: 2rem;
    --ldg-fs-h2: 1.5rem;
    --ldg-fs-h3: 1.25rem;
    --ldg-fs-body: 1rem;
    --ldg-fs-ui: 0.875rem;
    --ldg-fs-caption: 0.75rem;
    font-family: var(--ldg-font-system) !important;
    font-size: var(--ldg-fs-body);
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
.ldg-ac-app *,
.ldg-ac-app *::before,
.ldg-ac-app *::after,
.ldg-ac-client-access *,
.ldg-ac-modal *,
.ldg-ac-toast * {
    font-family: inherit;
}
.ldg-ac-topbar h1,
.ldg-ac-app h1 {
    font-size: var(--ldg-fs-h1) !important;
    font-weight: 700 !important;
    line-height: 1.15;
    letter-spacing: -0.035em;
}
.ldg-ac-hero-dashboard h2,
.ldg-ac-panel-head h2,
.ldg-ac-workspace-head h2,
.ldg-ac-modal-head h2,
.ldg-ac-client-head h2,
.ldg-ac-app h2 {
    font-size: var(--ldg-fs-h2) !important;
    font-weight: 600 !important;
    line-height: 1.22;
    letter-spacing: -0.025em;
}
.ldg-ac-form-card h3,
.ldg-ac-timeline-panel h3,
.ldg-ac-audit-dashboard .ldg-ac-panel h3,
.ldg-ac-access-mini h3,
.ldg-ac-app h3 {
    font-size: var(--ldg-fs-h3) !important;
    font-weight: 600 !important;
    line-height: 1.28;
    letter-spacing: -0.015em;
}
.ldg-ac-app p,
.ldg-ac-app li,
.ldg-ac-client-access p,
.ldg-ac-program-tile span,
.ldg-ac-line span,
.ldg-ac-detail-head p,
.ldg-ac-timeline-item span {
    font-size: var(--ldg-fs-body);
    font-weight: 400;
    line-height: 1.5;
}
.ldg-ac-nav button,
.ldg-ac-btn,
.ldg-ac-mini-btn,
.ldg-ac-admin-open-program,
.ldg-ac-table,
.ldg-ac-table th,
.ldg-ac-table td,
.ldg-ac-form-grid input,
.ldg-ac-form-grid select,
.ldg-ac-license-grid input,
.ldg-ac-license-grid select,
.ldg-ac-access-controls input,
.ldg-ac-access-controls select,
.ldg-ac-user-search input,
.ldg-ac-module-grid label,
.ldg-ac-access-controls label,
.ldg-ac-form-grid label,
.ldg-ac-license-grid label {
    font-size: var(--ldg-fs-ui) !important;
    line-height: 1.4;
}
.ldg-ac-nav button,
.ldg-ac-btn,
.ldg-ac-mini-btn,
.ldg-ac-admin-open-program,
.ldg-ac-form-grid input,
.ldg-ac-form-grid select,
.ldg-ac-license-grid input,
.ldg-ac-license-grid select,
.ldg-ac-access-controls input,
.ldg-ac-access-controls select,
.ldg-ac-user-search input {
    font-weight: 500 !important;
}
.ldg-ac-table th,
.ldg-ac-form-grid label,
.ldg-ac-license-grid label,
.ldg-ac-access-controls label,
.ldg-ac-kpi span,
.ldg-ac-badge,
.ldg-ac-client-card span,
.ldg-ac-suite-ribbon,
.ldg-ac-brand-copy small {
    font-size: var(--ldg-fs-caption) !important;
    font-weight: 600 !important;
    letter-spacing: .04em;
}
.ldg-ac-brand-copy strong,
.ldg-ac-program-tile strong,
.ldg-ac-user-row strong,
.ldg-ac-line strong,
.ldg-ac-gov-card span,
.ldg-ac-kpi strong,
.ldg-ac-hero-status strong {
    font-weight: 700 !important;
}
.ldg-ac-topbar p,
.ldg-ac-workspace-head p,
.ldg-ac-kpi small,
.ldg-ac-gov-card small,
.ldg-ac-note,
.ldg-ac-empty,
.ldg-ac-loading,
.ldg-ac-timeline-item small,
.ldg-ac-timeline-item em {
    font-size: var(--ldg-fs-caption) !important;
    font-weight: 400 !important;
    line-height: 1.45;
}
.ldg-ac-kpi strong,
.ldg-ac-donut strong {
    font-variant-numeric: tabular-nums;
}
@media (max-width: 900px) {
    .ldg-ac-app,
    .ldg-ac-client-access {
        --ldg-fs-h1: 1.75rem;
        --ldg-fs-h2: 1.375rem;
        --ldg-fs-h3: 1.125rem;
    }
}

/* V2.1.6 Configuration Guard + UX Visibility */
.ldg-ac-configuration-guard .ldg-ac-form-hint {
    margin: -6px 0 18px;
    color: #53647a;
    font-size: var(--ldg-fs-caption);
}
.ldg-ac-inline-alert.is-warning {
    border: 1px solid #ffe1a6;
    background: #fff7e6;
    color: #744d00;
}
.ldg-ac-inline-alert.is-success {
    border: 1px solid #cdeec5;
    background: #f1fbef;
    color: #245c21;
}
.ldg-ac-inline-alert ul {
    margin: 8px 0 0 18px;
}
.ldg-ac-inline-alert li {
    margin: 3px 0;
}
.ldg-ac-guarded-grid .ldg-ac-scope-field.is-hidden {
    display: none !important;
}
.ldg-ac-role-helper {
    margin: 18px 0 0;
    padding: 14px 16px;
    border: 1px solid #dceaf7;
    border-radius: 16px;
    background: linear-gradient(135deg, #f7fbff, #ffffff);
    color: #18365b;
}
.ldg-ac-role-helper strong {
    display: block;
    color: #006997;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-size: var(--ldg-fs-caption);
    margin-bottom: 4px;
}
.ldg-ac-role-helper span {
    display: block;
    font-size: var(--ldg-fs-ui);
    line-height: 1.45;
}
.ldg-ac-ok-text {
    color: #2f7d32;
    font-weight: 700;
}
.ldg-ac-settings-page {
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif;
    max-width: 1280px;
}
.ldg-ac-settings-page h1 {
    color: #006997;
    font-size: 2rem;
    font-weight: 700;
}
.ldg-ac-settings-page form {
    margin-top: 18px;
    background: #fff;
    border: 1px solid #dfe7ef;
    border-radius: 20px;
    padding: 22px;
    box-shadow: 0 16px 42px rgba(12, 37, 65, .08);
}
.ldg-ac-settings-page .form-table {
    background: #f8fbfe;
    border: 1px solid #e2edf7;
    border-radius: 16px;
    display: block;
    padding: 8px 16px;
    margin-bottom: 16px;
}
.ldg-ac-settings-page input[type="text"],
.ldg-ac-settings-page input[type="email"],
.ldg-ac-settings-page input[type="url"],
.ldg-ac-settings-page textarea {
    border-radius: 10px;
    border: 1px solid #cddbe8;
    min-height: 42px;
}

/* ==========================================================
 * V2.1.21 NormaCloud Privacy GDPR AI Act NIS2 Data Act module support
 * Visual-only restyling: no governance, role, scope or access logic changes.
 * ========================================================== */
.ldg-ac-app {
    --ldg-fluent-bg: #f6f8fb;
    --ldg-fluent-surface: #ffffff;
    --ldg-fluent-surface-2: #f9fbfd;
    --ldg-fluent-border: #e3e8ef;
    --ldg-fluent-border-strong: #cbd6e2;
    --ldg-fluent-text: #111827;
    --ldg-fluent-muted: #5b6678;
    --ldg-fluent-primary: #005a9e;
    --ldg-fluent-primary-2: #0078d4;
    --ldg-fluent-primary-soft: #eaf4ff;
    --ldg-fluent-success: #107c10;
    --ldg-fluent-success-soft: #eaf7ea;
    --ldg-fluent-warning: #b7791f;
    --ldg-fluent-warning-soft: #fff7e6;
    --ldg-fluent-danger: #c50f1f;
    --ldg-fluent-danger-soft: #fff1f2;
    --ldg-fluent-radius-xl: 24px;
    --ldg-fluent-radius-lg: 18px;
    --ldg-fluent-radius-md: 12px;
    --ldg-fluent-shadow: 0 18px 48px rgba(15, 23, 42, .08);
    --ldg-fluent-shadow-soft: 0 10px 28px rgba(15, 23, 42, .055);
    background:
        radial-gradient(circle at 84% 0%, rgba(0, 120, 212, .10), transparent 30%),
        linear-gradient(180deg, #f8fbff 0%, var(--ldg-fluent-bg) 100%);
    color: var(--ldg-fluent-text);
    grid-template-columns: 292px minmax(0, 1fr);
}
.ldg-ac-sidebar {
    background:
        radial-gradient(circle at 14% 0%, rgba(96, 165, 250, .25), transparent 28%),
        linear-gradient(180deg, #092a4a 0%, #071f3a 52%, #06172d 100%);
    padding: 22px 18px;
    box-shadow: 20px 0 50px rgba(6, 23, 45, .20);
}
.ldg-ac-brand-real {
    padding: 0 0 20px !important;
    border-bottom-color: rgba(255,255,255,.14) !important;
}
.ldg-ac-brand-logo {
    width: 212px !important;
    padding: 12px 14px !important;
    border-radius: 18px !important;
    box-shadow: 0 18px 38px rgba(0, 0, 0, .20) !important;
}
.ldg-ac-brand-copy strong {
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: -.02em !important;
}
.ldg-ac-brand-copy span {
    color: #c8ddf2 !important;
    font-weight: 500 !important;
}
.ldg-ac-brand-copy small {
    background: rgba(255, 255, 255, .10) !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    color: #d9ecff !important;
    font-weight: 600 !important;
}
.ldg-ac-nav {
    gap: 6px !important;
}
.ldg-ac-nav button {
    min-height: 46px !important;
    border-radius: 12px !important;
    padding: 0 13px !important;
    color: #dce9f6 !important;
    font-weight: 500 !important;
    transition: background .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.ldg-ac-nav button:hover {
    background: rgba(255,255,255,.10) !important;
    color: #ffffff !important;
    transform: translateX(2px);
    box-shadow: none !important;
}
.ldg-ac-nav button.is-active {
    background: linear-gradient(135deg, #0f6cbd, #005a9e) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(0, 0, 0, .22) !important;
}
.ldg-ac-sidebar-admin {
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 16px;
    padding: 14px !important;
}
.ldg-ac-sidebar-admin strong {
    font-weight: 700 !important;
}
.ldg-ac-logout {
    width: 100%;
    justify-content: center;
    border-radius: 12px !important;
    font-weight: 600 !important;
}
.ldg-ac-main {
    padding: 28px 30px 38px !important;
}
.ldg-ac-topbar {
    border: 1px solid var(--ldg-fluent-border) !important;
    border-radius: var(--ldg-fluent-radius-xl) !important;
    box-shadow: var(--ldg-fluent-shadow-soft) !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,255,255,.88)),
        radial-gradient(circle at 92% 20%, rgba(0,120,212,.13), transparent 28%) !important;
    min-height: 98px !important;
}
.ldg-ac-topbar h1 {
    color: var(--ldg-fluent-text) !important;
    text-transform: none !important;
    font-weight: 700 !important;
    letter-spacing: -.035em !important;
}
.ldg-ac-topbar h1::after {
    content: " V2.1.21" !important;
    background: var(--ldg-fluent-primary-soft) !important;
    border-color: #b7d9f7 !important;
    color: #005a9e !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
}
.ldg-ac-topbar p {
    color: var(--ldg-fluent-muted) !important;
    font-weight: 400 !important;
    font-size: 1rem !important;
}
.ldg-ac-btn,
.ldg-ac-mini-btn,
.ldg-ac-admin-open-program {
    border-radius: 12px !important;
    font-weight: 600 !important;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
.ldg-ac-btn:hover,
.ldg-ac-mini-btn:hover,
.ldg-ac-admin-open-program:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15,23,42,.10) !important;
}
.ldg-ac-btn-primary,
.ldg-ac-mini-btn-primary,
.ldg-ac-admin-open-program {
    background: linear-gradient(135deg, var(--ldg-fluent-primary), var(--ldg-fluent-primary-2)) !important;
    border-color: var(--ldg-fluent-primary) !important;
    color: #ffffff !important;
}
.ldg-ac-btn-ghost {
    background: var(--ldg-fluent-surface-2) !important;
}
.ldg-ac-hero-dashboard {
    min-height: 188px !important;
    border-radius: 28px !important;
    padding: 30px 34px !important;
    background:
        radial-gradient(circle at 88% 18%, rgba(255,255,255,.20), transparent 22%),
        linear-gradient(135deg, #071f3a 0%, #005a9e 62%, #0f6cbd 100%) !important;
    box-shadow: 0 28px 58px rgba(7,31,58,.22) !important;
}
.ldg-ac-hero-dashboard:after {
    background: rgba(255,255,255,.10) !important;
}
.ldg-ac-hero-dashboard span {
    color: #b7dcff !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
}
.ldg-ac-hero-dashboard h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    letter-spacing: -.04em !important;
}
.ldg-ac-hero-dashboard p {
    font-weight: 400 !important;
    color: rgba(255,255,255,.88) !important;
}
.ldg-ac-hero-status {
    background: rgba(255,255,255,.13) !important;
    border-color: rgba(255,255,255,.22) !important;
    border-radius: 18px !important;
}
.ldg-ac-kpis {
    grid-template-columns: repeat(5, minmax(150px, 1fr)) !important;
    gap: 14px !important;
}
.ldg-ac-kpi,
.ldg-ac-panel,
.ldg-ac-access-card,
.ldg-ac-program-tile,
.ldg-ac-form-card,
.ldg-ac-detail-shell,
.ldg-ac-users-panel {
    border: 1px solid var(--ldg-fluent-border) !important;
    border-radius: var(--ldg-fluent-radius-lg) !important;
    background: var(--ldg-fluent-surface) !important;
    box-shadow: var(--ldg-fluent-shadow-soft) !important;
}
.ldg-ac-kpi {
    min-height: 116px !important;
    padding: 18px 18px 16px !important;
    border-left-width: 0 !important;
    position: relative;
    overflow: hidden;
}
.ldg-ac-kpi:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--ldg-fluent-primary);
}
.ldg-ac-kpi.is-ok:before { background: var(--ldg-fluent-success); }
.ldg-ac-kpi.is-warn:before { background: #f59e0b; }
.ldg-ac-kpi.is-bad:before { background: var(--ldg-fluent-danger); }
.ldg-ac-kpi.is-info:before { background: #0f6cbd; }
.ldg-ac-kpi span {
    color: var(--ldg-fluent-muted) !important;
    font-weight: 600 !important;
}
.ldg-ac-kpi strong {
    color: var(--ldg-fluent-text) !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
}
.ldg-ac-kpi small {
    color: var(--ldg-fluent-muted) !important;
    font-size: .75rem !important;
}
.ldg-ac-overview-grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr) !important;
    gap: 18px !important;
}
.ldg-ac-panel-head {
    min-height: 60px !important;
    padding: 16px 20px !important;
    background: linear-gradient(180deg, #ffffff, #fbfdff) !important;
    border-bottom-color: var(--ldg-fluent-border) !important;
}
.ldg-ac-panel-head h2,
.ldg-ac-workspace-head h2,
.ldg-ac-modal-head h2 {
    color: var(--ldg-fluent-text) !important;
    text-transform: none !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}
.ldg-ac-panel-head button,
.ldg-ac-pill {
    background: var(--ldg-fluent-primary-soft) !important;
    color: var(--ldg-fluent-primary) !important;
    border: 1px solid #c7e1fa !important;
    font-weight: 600 !important;
}
.ldg-ac-line,
.ldg-ac-user-row,
.ldg-ac-timeline-item {
    border-radius: 14px !important;
    background: #fbfdff !important;
    border: 1px solid var(--ldg-fluent-border) !important;
}
.ldg-ac-user-row {
    transition: background .14s ease, border-color .14s ease, transform .14s ease;
}
.ldg-ac-user-row:hover,
.ldg-ac-user-row.is-active {
    background: var(--ldg-fluent-primary-soft) !important;
    border-color: #a9d3f5 !important;
    transform: translateY(-1px);
}
.ldg-ac-user-search input,
.ldg-ac-form-grid input,
.ldg-ac-form-grid select,
.ldg-ac-license-grid input,
.ldg-ac-license-grid select,
.ldg-ac-access-controls input,
.ldg-ac-access-controls select,
.ldg-ac-settings-page input[type="text"],
.ldg-ac-settings-page input[type="email"],
.ldg-ac-settings-page input[type="url"],
.ldg-ac-settings-page textarea,
.ldg-ac-settings-page select {
    border: 1px solid var(--ldg-fluent-border-strong) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: var(--ldg-fluent-text) !important;
    box-shadow: none !important;
}
.ldg-ac-user-search input:focus,
.ldg-ac-form-grid input:focus,
.ldg-ac-form-grid select:focus,
.ldg-ac-license-grid input:focus,
.ldg-ac-license-grid select:focus,
.ldg-ac-access-controls input:focus,
.ldg-ac-access-controls select:focus,
.ldg-ac-settings-page input:focus,
.ldg-ac-settings-page textarea:focus {
    border-color: var(--ldg-fluent-primary-2) !important;
    box-shadow: 0 0 0 3px rgba(0, 120, 212, .14) !important;
    outline: none !important;
}
.ldg-ac-badge,
.ldg-ac-state-active,
.ldg-ac-state-info,
.ldg-ac-state-expired,
.ldg-ac-state-suspended,
.ldg-ac-state-revoked {
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    padding: 5px 10px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.ldg-ac-state-active,
.ldg-ac-severity-success {
    background: var(--ldg-fluent-success-soft) !important;
    border-color: #b7dfb7 !important;
    color: var(--ldg-fluent-success) !important;
}
.ldg-ac-state-info,
.ldg-ac-severity-info {
    background: var(--ldg-fluent-primary-soft) !important;
    border-color: #c7e1fa !important;
    color: var(--ldg-fluent-primary) !important;
}
.ldg-ac-state-expired,
.ldg-ac-state-suspended,
.ldg-ac-state-revoked,
.ldg-ac-severity-danger {
    background: var(--ldg-fluent-danger-soft) !important;
    border-color: #ffc7cf !important;
    color: var(--ldg-fluent-danger) !important;
}
.ldg-ac-severity-warning,
.ldg-ac-inline-alert.is-warning {
    background: var(--ldg-fluent-warning-soft) !important;
    border-color: #f6d08a !important;
    color: #7a4b00 !important;
}
.ldg-ac-program-grid,
.ldg-ac-program-launcher,
.ldg-ac-access-grid {
    gap: 16px !important;
}
.ldg-ac-program-tile,
.ldg-ac-access-card {
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.ldg-ac-program-tile:hover,
.ldg-ac-access-card:hover {
    transform: translateY(-2px);
    border-color: #bad7ef !important;
    box-shadow: var(--ldg-fluent-shadow) !important;
}
.ldg-ac-program-icon {
    background: linear-gradient(135deg, var(--ldg-fluent-primary-soft), #ffffff) !important;
    border: 1px solid #c7e1fa !important;
    color: var(--ldg-fluent-primary) !important;
    border-radius: 18px !important;
}
.ldg-ac-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden;
    border-radius: 16px;
}
.ldg-ac-table th {
    background: #f4f7fb !important;
    color: #334155 !important;
    text-transform: none !important;
    font-weight: 700 !important;
    border-bottom: 1px solid var(--ldg-fluent-border) !important;
}
.ldg-ac-table td {
    border-bottom: 1px solid #eef2f7 !important;
}
.ldg-ac-table tr:hover td {
    background: #f8fbff !important;
}
.ldg-ac-workspace {
    gap: 18px !important;
}
.ldg-ac-workspace-head {
    background: transparent !important;
    margin-bottom: 14px !important;
}
.ldg-ac-modal-box {
    border-radius: 24px !important;
    border: 1px solid var(--ldg-fluent-border) !important;
    box-shadow: 0 28px 72px rgba(15, 23, 42, .22) !important;
}
.ldg-ac-modal-head {
    background: linear-gradient(180deg, #ffffff, #f8fbff) !important;
    border-bottom: 1px solid var(--ldg-fluent-border) !important;
}
.ldg-ac-role-helper,
.ldg-ac-inline-alert {
    border-radius: 16px !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .04) !important;
}
.ldg-ac-settings-page {
    max-width: 1320px !important;
    color: var(--ldg-fluent-text, #111827);
}
.ldg-ac-settings-page h1 {
    color: #111827 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    letter-spacing: -.035em;
}
.ldg-ac-settings-page > p {
    max-width: 960px;
    color: #5b6678;
    font-size: 1rem;
}
.ldg-ac-settings-page form {
    border-radius: 24px !important;
    box-shadow: 0 18px 48px rgba(15,23,42,.08) !important;
    border-color: #e3e8ef !important;
}
.ldg-ac-settings-page .form-table {
    border-radius: 18px !important;
    background: #f9fbfd !important;
    border-color: #e3e8ef !important;
}
.ldg-ac-toast {
    border-radius: 14px !important;
    box-shadow: 0 18px 48px rgba(15,23,42,.18) !important;
}
@media (max-width: 1180px) {
    .ldg-ac-app { grid-template-columns: 88px minmax(0, 1fr) !important; }
    .ldg-ac-brand-logo { width: 52px !important; height: 52px !important; object-fit: contain; }
    .ldg-ac-brand-copy,
    .ldg-ac-nav span,
    .ldg-ac-sidebar-admin strong,
    .ldg-ac-sidebar-admin span { display: none !important; }
    .ldg-ac-sidebar-admin { padding: 10px !important; }
    .ldg-ac-nav button { justify-content: center !important; padding: 0 !important; }
}
@media (max-width: 920px) {
    .ldg-ac-app {
        display: block !important;
    }
    .ldg-ac-sidebar {
        position: static !important;
        min-height: auto !important;
        border-radius: 0 0 24px 24px;
    }
    .ldg-ac-nav {
        display: flex !important;
        overflow-x: auto;
        padding-bottom: 4px;
    }
    .ldg-ac-nav button {
        width: auto !important;
        min-width: 54px;
        padding: 0 14px !important;
    }
    .ldg-ac-main { padding: 18px !important; }
    .ldg-ac-topbar,
    .ldg-ac-hero-dashboard {
        display: block !important;
    }
    .ldg-ac-top-actions { margin-top: 14px; }
    .ldg-ac-kpis,
    .ldg-ac-overview-grid {
        grid-template-columns: 1fr !important;
    }
}

/* V2.1.21 NormaCloud Privacy GDPR AI Act NIS2 Data Act module support: official NormaCloud/Access Center logo and compact brand block. Governance untouched. */
.ldg-ac-brand-real {
    gap: 12px !important;
    padding: 0 0 20px !important;
}
.ldg-ac-brand-logo {
    display: block !important;
    width: 196px !important;
    max-width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain !important;
    filter: drop-shadow(0 10px 22px rgba(0, 0, 0, .24));
}
.ldg-ac-brand-copy strong {
    margin-top: 2px !important;
}
.ldg-ac-topbar h1::after {
    content: " V2.1.21" !important;
    background: #e8f4ff !important;
    border-color: #b8dcff !important;
    color: #005a9e !important;
}
.ldg-ac-sidebar-admin {
    margin-top: auto !important;
}
@media (max-width: 1180px) {
    .ldg-ac-brand-logo {
        width: 54px !important;
        height: 34px !important;
        object-fit: contain !important;
        filter: drop-shadow(0 8px 16px rgba(0, 0, 0, .20));
    }
}
@media (max-width: 920px) {
    .ldg-ac-brand-logo {
        width: 128px !important;
        height: auto !important;
    }
}

/* V2.1.21 Mail Delivery Trace statuses. Governance untouched. */
.ldg-ac-gov-card.is-accepted_by_wp_mail,.ldg-ac-timeline-item.is-accepted_by_wp_mail,.ldg-ac-email-log-row.is-accepted_by_wp_mail{border-left-color:#0b74b8;background:linear-gradient(135deg,#f0f8ff,#fff)}
.ldg-ac-timeline-item.is-wp_mail_failed,.ldg-ac-email-log-row.is-wp_mail_failed,.ldg-ac-gov-card.is-wp_mail_failed{border-left-color:#c62828;background:#fff5f5}
.ldg-ac-email-diag-row.is-warning em{color:#9a5b00}

/* V2.1.21 NormaCloud clean email UX + brand contrast fix. Governance untouched. */
.ldg-ac-email-front,
.ldg-ac-email-backend-clean {
    --nc-blue:#003a70;
    --nc-primary:#0072bc;
    --nc-green:#9ab62b;
    --nc-surface:#ffffff;
    --nc-border:#d9e3ee;
    --nc-muted:#5f6f84;
}
.ldg-ac-email-backend-clean.wrap {
    max-width: none !important;
    margin: 18px 24px 40px !important;
    font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;
}
.ldg-ac-email-front .ldg-ac-workspace-head,
.ldg-ac-email-backend-clean .ldg-ac-workspace-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin:0 0 18px;
    padding:22px 24px;
    background:linear-gradient(135deg,#fff,#f5f9fd);
    border:1px solid var(--nc-border);
    border-radius:22px;
    box-shadow:0 18px 44px rgba(0,35,75,.08);
}
.ldg-ac-email-front-head h2 { margin:4px 0 6px; color:#06152b; font-size:28px; letter-spacing:-.04em; }
.ldg-ac-email-front-head p { margin:0; color:var(--nc-muted); font-size:14px; }
.ldg-ac-section-kicker { font-size:11px; text-transform:uppercase; letter-spacing:.12em; font-weight:900; color:var(--nc-primary); }
.ldg-ac-email-front-actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.ldg-ac-email-center-save-form { display:block; }
.ldg-ac-email-center-grid {
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
    gap:18px;
    align-items:start;
}
.ldg-ac-email-center-grid.is-bottom { grid-template-columns:1fr 1fr; margin-top:18px; }
.ldg-ac-email-panel {
    background:#fff;
    border:1px solid var(--nc-border);
    border-radius:20px;
    padding:20px;
    box-shadow:0 12px 34px rgba(0,35,75,.06);
}
.ldg-ac-email-panel h3 { margin:0 0 8px; color:#003a70; font-size:20px; letter-spacing:-.03em; }
.ldg-ac-email-panel p { margin:0 0 14px; color:var(--nc-muted); }
.ldg-ac-email-logo-preview {
    display:flex; align-items:center; justify-content:flex-start;
    min-height:70px; margin-bottom:14px; padding:12px 14px;
    background:#00234b; border-radius:16px; overflow:hidden;
}
.ldg-ac-email-logo-preview img { max-width:190px!important; max-height:58px!important; width:auto!important; height:auto!important; object-fit:contain; display:block; }
.ldg-ac-email-fields-wide { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ldg-ac-email-fields-wide label,
.ldg-ac-template-pro-body label { display:flex!important; flex-direction:column!important; gap:7px; margin:0!important; font-weight:800; color:#334155; font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.ldg-ac-email-fields-wide label.is-full,
.ldg-ac-email-bcc-clean.is-full { grid-column:1/-1; }
.ldg-ac-email-front input[type="text"],
.ldg-ac-email-front input[type="email"],
.ldg-ac-email-front input[type="url"],
.ldg-ac-email-front textarea,
.ldg-ac-email-backend-clean input[type="text"],
.ldg-ac-email-backend-clean input[type="email"],
.ldg-ac-email-backend-clean input[type="url"],
.ldg-ac-email-backend-clean textarea {
    width:100%!important; max-width:100%!important; box-sizing:border-box!important;
    border:1px solid var(--nc-border)!important; border-radius:12px!important;
    background:#fff!important; color:#0f172a!important;
    font:500 14px/1.5 "Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif!important;
    padding:12px 14px!important; box-shadow:none!important;
}
.ldg-ac-email-front textarea,
.ldg-ac-email-backend-clean textarea {
    min-height:260px!important;
    resize:vertical!important;
    font-family:Consolas, Monaco, "Courier New", monospace!important;
    line-height:1.55!important;
    white-space:pre-wrap!important;
}
.ldg-ac-email-fields-wide textarea { min-height:120px!important; font-family:"Segoe UI",system-ui!important; }
.ldg-ac-email-bcc-clean { display:grid; grid-template-columns:1fr 1fr; gap:10px; align-items:center; }
.ldg-ac-email-bcc-clean label { display:flex!important; flex-direction:row!important; align-items:center; gap:8px; text-transform:none; letter-spacing:0; }
.ldg-ac-email-bcc-clean small { grid-column:1/-1; color:var(--nc-muted); }
.ldg-ac-email-diagnostics-clean { display:flex; flex-direction:column; gap:10px; }
.ldg-ac-email-diag-row { display:flex; justify-content:space-between; gap:14px; padding:12px; border:1px solid var(--nc-border); border-radius:14px; background:#f8fafc; }
.ldg-ac-email-diag-row strong { display:block; color:#0f2747; }
.ldg-ac-email-diag-row span { display:block; color:var(--nc-muted); font-size:12px; margin-top:3px; }
.ldg-ac-email-diag-row em { font-style:normal; font-weight:900; color:#0f2747; white-space:nowrap; }
.ldg-ac-template-editor-pro { margin-top:18px; }
.ldg-ac-email-card-head { display:flex; justify-content:space-between; gap:16px; margin-bottom:12px; }
.ldg-ac-template-grid-pro { display:grid; grid-template-columns:1fr; gap:14px; }
.ldg-ac-template-pro { border:1px solid var(--nc-border); border-radius:16px; background:#fbfdff; overflow:hidden; }
.ldg-ac-template-pro summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 16px; color:#003a70; font-size:15px; font-weight:900; }
.ldg-ac-template-pro summary::-webkit-details-marker { display:none; }
.ldg-ac-template-pro summary span { color:var(--nc-muted); background:#eef6ff; border-radius:999px; padding:5px 9px; font-size:11px; text-transform:uppercase; }
.ldg-ac-template-pro[open] summary { border-bottom:1px solid var(--nc-border); background:#f3f8fd; }
.ldg-ac-template-pro-body { display:grid; grid-template-columns:minmax(260px,.35fr) minmax(0,.65fr); gap:16px; padding:16px; align-items:start; }
.ldg-ac-template-pro-body label:last-child { grid-column:auto; }
.ldg-ac-template-pro-body textarea { min-height:360px!important; }
.ldg-ac-token-list-clean { display:flex; flex-wrap:wrap; gap:8px; }
.ldg-ac-token-list-clean code { background:#eef6ff; color:#003a70; border:1px solid #cfe4f8; border-radius:999px; padding:7px 10px; font-size:12px; }
.ldg-ac-email-log-clean { display:flex; flex-direction:column; gap:8px; max-height:360px; overflow:auto; padding-right:6px; }
.ldg-ac-email-log-row { border:1px solid var(--nc-border); border-left:4px solid var(--nc-primary); border-radius:14px; padding:11px 12px; background:#fff; }
.ldg-ac-email-log-row strong { display:block; color:#003a70; }
.ldg-ac-email-log-row span { display:block; color:var(--nc-muted); font-size:12px; margin-top:3px; }
.ldg-ac-email-log-row em { display:block; color:#c62828; font-style:normal; font-size:12px; margin-top:5px; }
.ldg-ac-email-savebar-clean { position:sticky; bottom:10px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:18px; padding:14px 16px; border:1px solid var(--nc-border); border-radius:18px; background:rgba(255,255,255,.96); box-shadow:0 14px 34px rgba(0,35,75,.12); backdrop-filter:blur(10px); }
.ldg-ac-email-savebar-clean strong { display:block; color:#003a70; }
.ldg-ac-email-savebar-clean span { color:var(--nc-muted); font-size:12px; }
@media (max-width:1100px){ .ldg-ac-email-center-grid,.ldg-ac-email-center-grid.is-bottom{grid-template-columns:1fr} .ldg-ac-template-pro-body{grid-template-columns:1fr} }

/* V2.1.14 name-lock: Privacy GDPR AI Act NIS2 Data Act must keep canonical display name. */
.ldg-ac-area-privacy_compliance strong,
.ldg-ac-program-tile.ldg-ac-area-privacy_compliance strong {
    text-transform: none !important;
}


/* V2.1.21 NormaCloud Email UX Alignment. Governance, ruoli e permessi non modificati. */
.ldg-ac-nav button small {
    display:block;
    width:100%;
    margin-top:3px;
    font-size:11px;
    line-height:1.25;
    font-weight:800;
    color:#dcecff;
    opacity:.95;
}
.ldg-ac-nav button.is-active small,
.ldg-ac-nav button:hover small { color:#ffffff; }
.ldg-ac-toast-msg.is-warning {
    background:#fff7e5;
    border-left:4px solid #b66b00;
    color:#573400;
}
.ldg-ac-btn:disabled,
.ldg-ac-btn.is-busy,
button.ldg-ac-btn:disabled,
.ldg-ac-mini-btn:disabled {
    opacity:.72;
    cursor:not-allowed !important;
    filter:saturate(.9);
    box-shadow:none !important;
}
.ldg-ac-btn.is-busy::after,
button.ldg-ac-btn.is-busy::after {
    content:"";
    display:inline-block;
    width:12px;
    height:12px;
    margin-left:8px;
    border:2px solid currentColor;
    border-right-color:transparent;
    border-radius:999px;
    vertical-align:-2px;
    animation:ldg-ac-spin .75s linear infinite;
}
@keyframes ldg-ac-spin { to { transform:rotate(360deg); } }
.ldg-ac-table-note {
    display:block;
    margin-top:4px;
    color:#506178;
    font-size:12px;
    line-height:1.35;
    font-weight:700;
}
.ldg-ac-action-label {
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:26px;
    padding:4px 9px;
    border-radius:999px;
    background:#edf6ff;
    border:1px solid #cfe5f8;
    color:#003b66;
    font-size:12px;
    font-weight:900;
}
.ldg-ac-next-action {
    border-left:4px solid #0072bc !important;
}
.ldg-ac-email-log-row small,
.ldg-ac-email-log-row b {
    color:#173b63;
}
.ldg-ac-email-log-row.is-failed,
.ldg-ac-email-log-row.is-smtp_failed,
.ldg-ac-timeline-item.is-failed,
.ldg-ac-gov-card.is-failed {
    border-left-color:#c62828 !important;
    background:#fff5f5 !important;
}
.ldg-ac-email-log-row.is-accepted_by_wp_mail,
.ldg-ac-timeline-item.is-accepted_by_wp_mail,
.ldg-ac-gov-card.is-accepted_by_wp_mail {
    border-left-color:#0b74b8 !important;
    background:linear-gradient(135deg,#f0f8ff,#fff) !important;
}
.ldg-ac-email-diag-row em,
.ldg-ac-email-diag-row span,
.ldg-ac-email-diag-row strong {
    color:#173b63;
}

/* V2.1.21 NormaCloud Email UX Alignment. Governance, roles and permissions untouched. */
.ldg-ac-nav-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    margin-left: auto;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef6ff;
    color: #003a70;
    border: 1px solid #cfe4f8;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .01em;
}
.ldg-ac-next-action {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    border-left: 5px solid #0072bc;
}
.ldg-ac-next-action h3 {
    margin: 0 0 6px;
    color: #06152b;
    font-size: 20px;
    letter-spacing: -.03em;
}
.ldg-ac-next-action p {
    margin: 0;
    color: #4a5b70;
    line-height: 1.45;
}
.ldg-ac-next-action.is-danger {
    border-left-color: #c62828;
    background: linear-gradient(135deg, #fff8f8, #ffffff);
}
.ldg-ac-next-action.is-warning {
    border-left-color: #b26a00;
    background: linear-gradient(135deg, #fff9ed, #ffffff);
}
.ldg-ac-next-action.is-ok {
    border-left-color: #4f7f16;
    background: linear-gradient(135deg, #f7fbef, #ffffff);
}
.ldg-ac-toast-msg.is-warning {
    background: #fff7ed;
    color: #7c2d12;
    border: 1px solid #fed7aa;
}
.ldg-ac-btn.is-busy,
.ldg-ac-btn:disabled {
    opacity: .62;
    cursor: progress !important;
    pointer-events: none;
}
.ldg-ac-action-label,
.ldg-ac-action-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    padding: 5px 9px;
    background: #eef6ff;
    color: #003a70;
    border: 1px solid #cfe4f8;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.2;
}
.ldg-ac-table-note {
    display: block;
    margin-top: 5px;
    color: #536173;
    font-size: 11px;
    line-height: 1.35;
}
.ldg-ac-table-note.is-danger {
    color: #9f1239;
    font-weight: 800;
}
.ldg-ac-email-log-row small {
    display: block;
    margin-top: 5px;
    color: #536173;
    font-size: 12px;
    line-height: 1.35;
}
.ldg-ac-email-log-row b {
    display: inline-flex;
    margin-top: 7px;
    border-radius: 999px;
    padding: 5px 8px;
    background: #eef6ff;
    color: #003a70;
    border: 1px solid #cfe4f8;
    font-size: 11px;
    line-height: 1.2;
}
.ldg-ac-gov-card.is-empty,
.ldg-ac-timeline-item.is-empty,
.ldg-ac-email-log-row.is-empty {
    border-left-color: #b26a00;
    background: #fff9ed;
}
.ldg-ac-timeline-item.is-failed,
.ldg-ac-email-log-row.is-failed,
.ldg-ac-gov-card.is-failed {
    border-left-color: #c62828;
    background: #fff5f5;
}
@media (max-width: 820px) {
    .ldg-ac-next-action {
        grid-template-columns: 1fr;
    }
}

/* V2.1.21 final UI overrides for guided next action and sidebar counters. */
.ldg-ac-next-action.is-danger { border-left-color: #c62828 !important; }
.ldg-ac-next-action.is-warning { border-left-color: #b26a00 !important; }
.ldg-ac-next-action.is-ok { border-left-color: #4f7f16 !important; }
.ldg-ac-next-action > div > span {
    display: block;
    margin-bottom: 5px;
    color: #005a9e;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ldg-ac-next-action > div > strong {
    display: block;
    margin-bottom: 6px;
    color: #06152b;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -.03em;
}
.ldg-ac-nav button .ldg-ac-nav-status {
    margin-left: auto;
    color: #003a70 !important;
}

.ldg-ac-trs-inactive [name^="trs["] {
    opacity: .55;
    pointer-events: none;
}

.ldg-ac-trs-inactive .ldg-ac-suite-modules {
    opacity: .72;
}

.ldg-ac-client-email-visibility textarea {
    width: 100%;
    min-height: 108px;
    resize: vertical;
    border: 1px solid #d7e2f1;
    border-radius: 14px;
    padding: 12px 14px;
    background: #ffffff;
    color: #102033;
    font: inherit;
    line-height: 1.45;
}
.ldg-ac-client-scope-preview {
    grid-column: 1 / -1;
    background: #f8fbff;
    border: 1px solid #d7e2f1;
    border-radius: 16px;
    padding: 14px;
}
.ldg-ac-client-scope-preview strong {
    display: block;
    color: #102033;
    margin-bottom: 8px;
}
.ldg-ac-client-scope-preview code {
    display: block;
    white-space: pre-wrap;
    color: #102033;
    background: #ffffff;
    border: 1px solid #d7e2f1;
    border-radius: 12px;
    padding: 12px;
}


/* V2.1.21 - Pulizia topbar, versione unica e localizzazione finale */
.ldg-ac-topbar h1::after{content:none!important;display:none!important;}
.ldg-ac-top-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;}
.ldg-ac-top-meta span{display:inline-flex;align-items:center;min-height:26px;padding:5px 10px;border-radius:999px;background:#e8f4ff;border:1px solid #b8dcff;color:#005a9e;font-size:12px;font-weight:800;line-height:1.15;}
.ldg-ac-top-meta span+span{background:#edf8d7;border-color:#c7e687;color:#305900;}
.ldg-ac-report-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 12px;}
.ldg-ac-report-tools input{min-height:38px;border:1px solid var(--ldg-line);border-radius:10px;padding:8px 12px;min-width:260px;background:#fff;color:var(--ldg-dark);font-weight:700;}
.ldg-ac-field-help{display:block;margin-top:6px;color:var(--ldg-muted);font-size:12px;line-height:1.35;font-weight:700;}
