/* 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: clip;
    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: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.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;}


/* V2.1.22 Enterprise Visual Polish Lock — visual/UX only. No access, role, permission, API or email-engine changes. */
.ldg-ac-brand-text-only {
    min-height: 74px !important;
    align-items: center !important;
    padding: 8px 6px 18px !important;
}
.ldg-ac-brand-text-only .ldg-ac-brand-copy { display:block !important; }
.ldg-ac-brand-text-only .ldg-ac-brand-copy strong {
    font-size: 22px !important;
    letter-spacing: -.03em !important;
}
.ldg-ac-brand-text-only .ldg-ac-brand-copy span {
    color: rgba(255,255,255,.82) !important;
    font-size: 12px !important;
}
.ldg-ac-brand-text-only .ldg-ac-brand-copy small {
    display:block !important;
    margin-top:4px !important;
    color:rgba(255,255,255,.56) !important;
    font-size:11px !important;
    font-weight:700 !important;
}
.ldg-ac-topbar h1::after { display:none !important; content:none !important; }
.ldg-ac-top-meta { margin-top:10px !important; display:flex !important; gap:8px !important; flex-wrap:wrap !important; }
.ldg-ac-top-meta span { background:#f3f7fb !important; border:1px solid #dce6f0 !important; border-radius:999px !important; padding:5px 9px !important; color:#53657a !important; font-size:11px !important; font-weight:700 !important; }
.ldg-ac-section-kicker { display:block; margin:0 0 5px; color:#60758d; font-size:11px; line-height:1.2; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.ldg-ac-workspace-head p { max-width:860px; }

/* Deadlines and operational issues: compact summary, CSS-only filters and refined empty states. */
.ldg-ac-table-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 14px; }
.ldg-ac-table-summary > div { background:#fff; border:1px solid #dde6ef; border-radius:16px; padding:15px 16px; box-shadow:0 8px 22px rgba(15,35,65,.04); }
.ldg-ac-table-summary span { display:block; color:#68788c; font-size:12px; font-weight:700; }
.ldg-ac-table-summary strong { display:block; margin-top:5px; color:#10243f; font-size:24px; line-height:1; font-weight:750; }
.ldg-ac-filter-radio { position:absolute !important; inline-size:1px !important; block-size:1px !important; opacity:0 !important; pointer-events:none !important; }
.ldg-ac-table-toolbar { display:flex; justify-content:space-between; align-items:center; gap:14px; margin:0 0 12px; padding:12px 14px; border:1px solid #dde6ef; border-radius:14px; background:#f8fafc; }
.ldg-ac-table-toolbar > strong { color:#34465c; font-size:13px; }
.ldg-ac-filter-chips { display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; }
.ldg-ac-filter-chips label { display:inline-flex; align-items:center; min-height:34px; padding:0 12px; border:1px solid #d4dfeb; border-radius:999px; background:#fff; color:#4f6074; font-size:12px; font-weight:750; cursor:pointer; transition:.14s ease; }
.ldg-ac-filter-chips label:hover { border-color:#8fc2ea; color:#005a9e; }
.ldg-ac-table-panel { overflow:hidden; }
.ldg-ac-table-scroll { overflow:auto; }
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-all:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-deadlines-all"],
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-next7:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-deadlines-next7"],
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-next30:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-deadlines-next30"],
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-expired:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-deadlines-expired"],
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-all:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-blocks-all"],
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-access:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-blocks-access"],
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-credentials:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-blocks-credentials"],
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-first-login:checked ~ .ldg-ac-table-toolbar label[for="ldg-ac-filter-blocks-first-login"] { background:#eaf4ff; border-color:#9acbf0; color:#004f8a; box-shadow:inset 0 0 0 1px rgba(0,90,158,.04); }
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-next7:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-next7),
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-next30:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-next30),
.ldg-ac-table-page-deadlines #ldg-ac-filter-deadlines-expired:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-expired),
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-access:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-access),
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-credentials:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-credentials),
.ldg-ac-table-page-blocks #ldg-ac-filter-blocks-first-login:checked ~ .ldg-ac-table-panel tbody tr:not(.is-filter-first-login) { display:none; }
.ldg-ac-empty-state-premium { display:flex; align-items:center; gap:16px; min-height:150px; padding:26px !important; border:1px dashed #bfd0e0 !important; background:linear-gradient(145deg,#fbfdff,#f4f8fc) !important; }
.ldg-ac-empty-state-icon { display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:14px; background:#e9f4ff; color:#0066aa; }
.ldg-ac-empty-state-icon svg { width:22px; height:22px; fill:currentColor; }
.ldg-ac-empty-state-premium strong { display:block; color:#16314f; font-size:17px; }
.ldg-ac-empty-state-premium p { margin:5px 0 0; color:#65758a; }

/* Programmi, registri e impostazioni: stronger enterprise hierarchy. */
.ldg-ac-program-launcher .ldg-ac-program-tile { min-height:245px; padding:20px !important; }
.ldg-ac-program-launcher .ldg-ac-program-tile > strong { font-size:17px !important; line-height:1.25 !important; }
.ldg-ac-program-launcher .ldg-ac-program-actions { margin-top:auto !important; padding-top:14px !important; }
.ldg-ac-audit-dashboard .ldg-ac-panel { overflow:hidden; }
.ldg-ac-audit-dashboard .ldg-ac-panel > h3 { margin:0 !important; padding:17px 20px !important; background:#f8fafc !important; border-bottom:1px solid #e2e8f0 !important; }
.ldg-ac-settings-grid-v4 { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:0 !important; overflow:hidden; padding:0 !important; }
.ldg-ac-settings-grid-v4 > div { min-height:88px; padding:18px 20px !important; border-right:1px solid #e7edf4; border-bottom:1px solid #e7edf4; background:#fff; }
.ldg-ac-settings-grid-v4 > div strong { display:block; margin-bottom:6px; color:#183652; font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.ldg-ac-settings-grid-v4 > div span { color:#55687d; line-height:1.5; }
.ldg-ac-settings-grid-v4 .ldg-ac-email-settings-btn { grid-column:1/-1; margin:16px 20px 20px !important; justify-self:start; }

/* Centro email: enterprise card system with editing, preview, operational status and delivery checks separated. */
.ldg-ac-normacloud-email-center { max-width:1500px; margin:0 auto; }
.ldg-ac-email-front-head { padding-bottom:4px !important; }
.ldg-ac-email-status-strip { display:grid; grid-template-columns:1.35fr repeat(3,minmax(0,1fr)); gap:10px; margin:4px 0 16px; }
.ldg-ac-email-status-strip > div { background:#fff; border:1px solid #dce5ef; border-radius:15px; padding:14px 16px; box-shadow:0 8px 22px rgba(15,35,65,.04); }
.ldg-ac-email-status-strip > div.is-primary { border-left:4px solid #0072bc; }
.ldg-ac-email-status-strip > div.is-danger { border-left:4px solid #c62828; background:#fffafa; }
.ldg-ac-email-status-strip span { display:block; color:#68788c; font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
.ldg-ac-email-status-strip strong { display:block; margin-top:5px; color:#173b63; font-size:18px; line-height:1.25; }
.ldg-ac-email-config-panel { margin-bottom:16px; }
.ldg-ac-email-panel { border-radius:18px !important; box-shadow:0 10px 28px rgba(0,35,75,.055) !important; }
.ldg-ac-email-panel h3 { color:#173b63 !important; font-size:19px !important; font-weight:750 !important; letter-spacing:-.02em !important; }
.ldg-ac-email-card-head { align-items:flex-start; }
.ldg-ac-email-logo-preview { flex:0 0 180px; min-height:64px !important; margin:0 !important; padding:10px 12px !important; justify-content:center !important; background:#f7fafc !important; border:1px solid #dfe7ef !important; border-radius:14px !important; }
.ldg-ac-email-logo-preview img { max-width:154px !important; max-height:44px !important; filter:none !important; }
.ldg-ac-email-fields-wide label,
.ldg-ac-template-pro-body label { color:#475b72 !important; font-size:11px !important; font-weight:750 !important; letter-spacing:.045em !important; }
.ldg-ac-email-front textarea,
.ldg-ac-email-backend-clean textarea { font-family:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif !important; }
.ldg-ac-email-bcc-clean { padding:13px 14px; border:1px solid #dfe7ef; border-radius:14px; background:#f8fafc; }
.ldg-ac-template-editor-pro { margin-top:0 !important; }
.ldg-ac-template-grid-pro { gap:10px !important; }
.ldg-ac-template-pro { background:#fff !important; border-color:#dce5ef !important; border-radius:15px !important; }
.ldg-ac-template-pro summary { min-height:62px; padding:13px 16px !important; }
.ldg-ac-template-pro summary > div { min-width:0; }
.ldg-ac-template-pro summary strong { display:block; color:#173b63; font-size:15px; }
.ldg-ac-template-pro summary small { display:block; max-width:740px; margin-top:3px; overflow:hidden; color:#728196; font-size:12px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
.ldg-ac-template-pro summary > span { background:#f2f7fb !important; border:1px solid #d9e5ef; color:#536b84 !important; text-transform:none !important; }
.ldg-ac-template-pro[open] summary > span { background:#eaf4ff !important; color:#005a9e !important; border-color:#b9daf4; }
.ldg-ac-template-pro[open] summary { background:#f8fbfe !important; }
.ldg-ac-template-pro-body { grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr) !important; gap:18px !important; padding:18px !important; }
.ldg-ac-template-edit-column { display:grid; gap:14px; }
.ldg-ac-template-pro-body textarea { min-height:330px !important; }
.ldg-ac-email-preview { align-self:stretch; overflow:hidden; border:1px solid #d8e2ec; border-radius:15px; background:#edf2f7; }
.ldg-ac-email-preview-toolbar { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; background:#e7edf4; border-bottom:1px solid #d3dee9; color:#52677e; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.ldg-ac-email-preview-toolbar small { color:#718196; font-size:11px; text-transform:none; letter-spacing:0; }
.ldg-ac-email-preview-sheet { max-width:680px; min-height:350px; margin:16px auto; padding:26px 30px; background:#fff; border:1px solid #dfe7ef; border-radius:10px; box-shadow:0 10px 28px rgba(15,35,65,.08); }
.ldg-ac-email-preview-brand { margin-bottom:24px; color:#003a70; font-size:18px; font-weight:800; }
.ldg-ac-email-preview-sheet h4 { margin:0 0 18px; color:#172b42; font-size:18px; line-height:1.35; }
.ldg-ac-email-preview-body { color:#44566c; font-size:13px; line-height:1.65; overflow-wrap:anywhere; }
.ldg-ac-email-token-help { margin-top:14px; border:1px solid #dce5ef; border-radius:14px; background:#f8fafc; }
.ldg-ac-email-token-help summary { cursor:pointer; padding:13px 15px; color:#39536e; font-size:13px; font-weight:800; }
.ldg-ac-email-token-help p { margin:0; padding:0 15px 10px; }
.ldg-ac-email-token-help .ldg-ac-token-list-clean { padding:0 15px 15px; }
.ldg-ac-token-list-clean code { font-family:"Segoe UI",system-ui !important; font-weight:700; }
.ldg-ac-email-operations-grid { grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr) !important; gap:16px !important; }
.ldg-ac-email-log-clean { max-height:470px !important; }
.ldg-ac-email-log-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:6px 12px; align-items:start; padding:13px 14px !important; }
.ldg-ac-email-log-main strong { margin:0 !important; }
.ldg-ac-email-log-main span { margin-top:3px !important; }
.ldg-ac-email-log-date { white-space:nowrap; }
.ldg-ac-email-log-row > small,
.ldg-ac-email-log-row > b,
.ldg-ac-email-log-row > em { grid-column:1/-1; }
.ldg-ac-email-log-row > b { display:inline-flex; width:max-content; margin-top:3px; padding:5px 9px; border-radius:999px; background:#edf6ff; border:1px solid #cfe5f8; color:#003b66; font-size:11px; }
.ldg-ac-email-diag-row { background:#fbfcfe !important; border-color:#dfe7ef !important; }
.ldg-ac-email-diag-row em { max-width:42%; overflow:hidden; text-overflow:ellipsis; }
.ldg-ac-email-savebar-clean { z-index:3; border-radius:16px !important; }
.ldg-ac-email-savebar-clean strong { font-size:14px; }
.ldg-ac-email-savebar-clean span { display:block; max-width:860px; margin-top:3px; }

@media (max-width:1180px) {
    .ldg-ac-brand-text-only { min-height:58px !important; padding:6px 0 14px !important; justify-content:center !important; }
    .ldg-ac-brand-text-only .ldg-ac-brand-copy strong { font-size:14px !important; text-align:center; }
    .ldg-ac-brand-text-only .ldg-ac-brand-copy span,
    .ldg-ac-brand-text-only .ldg-ac-brand-copy small { display:none !important; }
    .ldg-ac-email-status-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ldg-ac-template-pro-body { grid-template-columns:1fr !important; }
    .ldg-ac-email-operations-grid { grid-template-columns:1fr !important; }
}
@media (max-width:920px) {
    .ldg-ac-brand-text-only { min-height:auto !important; justify-content:flex-start !important; }
    .ldg-ac-brand-text-only .ldg-ac-brand-copy strong { font-size:18px !important; text-align:left; }
    .ldg-ac-brand-text-only .ldg-ac-brand-copy span,
    .ldg-ac-brand-text-only .ldg-ac-brand-copy small { display:block !important; }
    .ldg-ac-table-summary,
    .ldg-ac-email-status-strip,
    .ldg-ac-settings-grid-v4 { grid-template-columns:1fr 1fr !important; }
    .ldg-ac-table-toolbar { align-items:flex-start; flex-direction:column; }
    .ldg-ac-filter-chips { justify-content:flex-start; }
    .ldg-ac-email-card-head { flex-direction:column; }
    .ldg-ac-email-logo-preview { width:100%; flex-basis:auto; justify-content:flex-start !important; }
}
@media (max-width:620px) {
    .ldg-ac-table-summary,
    .ldg-ac-email-status-strip,
    .ldg-ac-settings-grid-v4 { grid-template-columns:1fr !important; }
    .ldg-ac-email-fields-wide { grid-template-columns:1fr !important; }
    .ldg-ac-email-bcc-clean { grid-template-columns:1fr !important; }
    .ldg-ac-email-preview-sheet { margin:10px; padding:20px; }
    .ldg-ac-email-log-row { grid-template-columns:1fr !important; }
    .ldg-ac-email-log-row > * { grid-column:1 !important; }
    .ldg-ac-email-savebar-clean { position:static !important; align-items:stretch !important; flex-direction:column !important; }
}


/* ==========================================================================
   V2.1.23 Enterprise UX/UI Gold Lock
   Design-system, hierarchy and presentation layer. Functional contracts stay unchanged.
   ========================================================================== */
.ldg-ac-app {
    --ac-page-max: 1680px;
    --ac-work-max: 1800px;
    --ac-form-max: 1540px;
    --ac-email-max: 1320px;
    --ac-text: #17263a;
    --ac-muted: #607086;
    --ac-heading: #0b2440;
    --ac-line: #dce5ef;
    --ac-soft: #f5f8fb;
    --ac-blue: #0067ad;
    --ac-blue-dark: #07345d;
    --ac-success: #16823a;
    --ac-warning: #a86200;
    --ac-danger: #c62828;
    font-size: 14px !important;
    line-height: 1.48 !important;
}
.ldg-ac-main { padding: 22px 26px 34px !important; }
.ldg-ac-topbar { max-width: var(--ac-work-max); margin: 0 auto 18px !important; padding: 22px 24px !important; }
.ldg-ac-topbar h1 { font-size: 26px !important; line-height:1.12 !important; text-transform:none !important; letter-spacing:-.035em !important; color:var(--ac-heading) !important; }
.ldg-ac-topbar p { font-size:14px !important; font-weight:600 !important; color:var(--ac-muted) !important; }
.ldg-ac-top-meta { margin-top:9px !important; }
.ldg-ac-top-meta span { min-height:25px; display:inline-flex; align-items:center; font-size:11px !important; }
.ldg-ac-top-actions .ldg-ac-btn { min-height:38px !important; padding:0 14px !important; font-size:13px !important; }
.ldg-ac-view { width:100%; max-width:var(--ac-page-max); margin:0 auto; }
.ldg-ac-view[data-view-panel="users"],
.ldg-ac-view[data-view-panel="access"],
.ldg-ac-view[data-view-panel="credentials"] { max-width:var(--ac-work-max); }
.ldg-ac-view[data-view-panel="email_center"] { max-width:var(--ac-email-max); }
.ldg-ac-sidebar { width:230px !important; }
.ldg-ac-brand-text-only { padding:18px 14px 16px !important; min-height:auto !important; }
.ldg-ac-brand-copy strong { font-size:18px !important; letter-spacing:-.02em; }
.ldg-ac-brand-copy span { font-size:12px !important; }
.ldg-ac-brand-copy small { display:none !important; }
.ldg-ac-nav { padding:8px 10px !important; gap:4px !important; }
.ldg-ac-nav button { min-height:42px !important; padding:0 11px !important; border-radius:10px !important; font-size:13px !important; }
.ldg-ac-nav .ldg-ac-nav-status { min-width:24px !important; height:22px !important; padding:0 7px !important; font-size:11px !important; }
.ldg-ac-sidebar-admin { margin:12px 10px !important; padding:12px !important; border-radius:12px !important; }
.ldg-ac-sidebar-admin strong { font-size:12px !important; }
.ldg-ac-sidebar-admin span { font-size:11px !important; }

/* Page hierarchy */
.ldg-ac-workspace-head { min-height:auto !important; margin:8px 0 16px !important; align-items:center !important; }
.ldg-ac-workspace-head .ldg-ac-section-kicker,
.ldg-ac-section-kicker { font-size:10px !important; letter-spacing:.09em !important; color:#5c7188 !important; }
.ldg-ac-workspace-head h2,
.ldg-ac-panel-head h2 { text-transform:none !important; color:var(--ac-heading) !important; letter-spacing:-.035em !important; }
.ldg-ac-workspace-head h2 { font-size:28px !important; }
.ldg-ac-workspace-head p { max-width:900px !important; margin-top:5px !important; font-size:14px !important; line-height:1.5 !important; font-weight:500 !important; color:var(--ac-muted) !important; }
.ldg-ac-panel-head { min-height:58px !important; padding:14px 18px !important; }
.ldg-ac-panel-head h2 { font-size:18px !important; }
.ldg-ac-panel-head button { min-height:32px; padding:0 12px !important; font-size:12px !important; }
.ldg-ac-panel, .ldg-ac-kpi, .ldg-ac-program-tile, .ldg-ac-access-card, .ldg-ac-form-card { border-color:var(--ac-line) !important; box-shadow:0 8px 24px rgba(25,45,70,.045) !important; }

/* Compact action-oriented dashboard hero. */
.ldg-ac-hero-dashboard-gold { min-height:112px !important; margin-bottom:14px !important; padding:22px 26px !important; border-radius:18px !important; background:linear-gradient(105deg,#07345d 0%,#075b96 62%,#1682c0 100%) !important; align-items:center !important; }
.ldg-ac-hero-dashboard-gold:after { width:220px !important; height:220px !important; right:-55px !important; bottom:-120px !important; background:rgba(255,255,255,.08) !important; }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-copy { max-width:900px; position:relative; z-index:1; }
.ldg-ac-hero-dashboard-gold span { color:#c9e4f8 !important; font-size:10px !important; letter-spacing:.1em !important; }
.ldg-ac-hero-dashboard-gold h2 { margin:4px 0 4px !important; font-size:27px !important; line-height:1.15 !important; letter-spacing:-.035em !important; }
.ldg-ac-hero-dashboard-gold p { font-size:14px !important; line-height:1.5 !important; color:#eef7fd !important; }
.ldg-ac-hero-dashboard-gold p strong { color:#fff; font-size:16px; }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-status { min-width:205px !important; min-height:62px !important; padding:12px 15px !important; border-radius:14px !important; display:flex !important; align-items:center !important; gap:10px !important; background:rgba(255,255,255,.12) !important; border:1px solid rgba(255,255,255,.18) !important; }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-status i { width:10px; height:10px; flex:0 0 10px; border-radius:50%; background:#6fd08c; box-shadow:0 0 0 5px rgba(111,208,140,.14); }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-status strong { color:#fff !important; font-size:15px !important; }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-status small { color:#d9ebf7 !important; font-size:11px !important; }

.ldg-ac-kpis { gap:12px !important; margin-bottom:14px !important; }
.ldg-ac-kpi { min-height:106px !important; padding:16px 17px 14px !important; border-left:0 !important; border-radius:14px !important; }
.ldg-ac-kpi:before { height:3px !important; top:0 !important; left:0 !important; right:0 !important; width:auto !important; border-radius:14px 14px 0 0 !important; }
.ldg-ac-kpi span { font-size:10px !important; letter-spacing:.07em !important; }
.ldg-ac-kpi strong { margin-top:7px !important; font-size:30px !important; line-height:1 !important; color:var(--ac-heading) !important; }
.ldg-ac-kpi small { margin-top:7px !important; font-size:11px !important; font-weight:600 !important; line-height:1.35 !important; }
.ldg-ac-next-action { min-height:68px !important; margin-bottom:14px !important; padding:13px 16px !important; border-left-width:4px !important; border-radius:14px !important; align-items:center !important; }
.ldg-ac-next-action span { font-size:9px !important; letter-spacing:.08em !important; }
.ldg-ac-next-action strong { font-size:16px !important; }
.ldg-ac-next-action p { margin-top:2px !important; font-size:12px !important; }
.ldg-ac-overview-grid { grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr) !important; gap:14px !important; }
.ldg-ac-chart-layout { min-height:250px !important; }
.ldg-ac-bar-row { min-height:34px; }
.ldg-ac-bar-row span, .ldg-ac-bar-row b { font-size:12px !important; }
.ldg-ac-dashboard-empty { min-height:190px; display:flex !important; align-items:center; justify-content:center; gap:12px; padding:22px !important; text-align:left; color:var(--ac-muted); }
.ldg-ac-dashboard-empty > span { width:46px; height:46px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:#edf6fd; color:#0871b6; }
.ldg-ac-dashboard-empty svg { width:21px; height:21px; fill:currentColor; }
.ldg-ac-dashboard-empty strong { display:block; color:var(--ac-heading); font-size:15px; }
.ldg-ac-dashboard-empty small { display:block; margin-top:3px; font-size:12px; }

/* Workspaces: readable master/detail. */
.ldg-ac-workspace { grid-template-columns:330px minmax(0,1fr) !important; gap:16px !important; }
.ldg-ac-users-panel { border-radius:15px !important; }
.ldg-ac-user-search { padding:12px !important; }
.ldg-ac-user-search input { min-height:40px !important; font-size:13px !important; }
.ldg-ac-user-row { min-height:68px !important; padding:11px 12px !important; }
.ldg-ac-user-row strong { font-size:13px !important; }
.ldg-ac-user-row span { font-size:11px !important; }
.ldg-ac-user-row small { font-size:10px !important; }
.ldg-ac-detail-head { padding:17px 19px !important; border-radius:15px !important; }
.ldg-ac-detail-head h2 { font-size:21px !important; text-transform:none !important; letter-spacing:-.03em !important; }
.ldg-ac-detail-head p { font-size:12px !important; font-weight:500 !important; }
.ldg-ac-detail-secondary { color:#7a8899; }
.ldg-ac-user-status .ldg-ac-badge { min-height:25px; display:inline-flex; align-items:center; }
.ldg-ac-form-card { padding:20px !important; border-radius:16px !important; }
.ldg-ac-form-card h3 { margin-bottom:5px !important; font-size:19px !important; text-transform:none !important; letter-spacing:-.025em !important; }
.ldg-ac-form-hint { margin:0 0 16px !important; font-size:12px !important; color:var(--ac-muted) !important; }
.ldg-ac-form-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:14px !important; }
.ldg-ac-form-grid label { font-size:10px !important; letter-spacing:.055em !important; color:#52677e !important; }
.ldg-ac-form-grid input, .ldg-ac-form-grid select, .ldg-ac-form-grid textarea { min-height:42px !important; margin-top:6px !important; border-radius:9px !important; font-size:13px !important; font-weight:600 !important; color:var(--ac-text) !important; }
.ldg-ac-form-grid textarea { padding:10px 12px !important; line-height:1.5 !important; text-transform:none !important; }
.ldg-ac-form-grid label small { margin-top:5px; display:block; font-size:10px; line-height:1.4; font-weight:500; text-transform:none; letter-spacing:0; color:#758397; }
.ldg-ac-client-scope-preview { grid-column:1/-1; border:1px solid #dce6ef !important; border-radius:13px !important; padding:14px !important; background:#f8fbfd !important; }
.ldg-ac-scope-preview-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ldg-ac-scope-preview-head > strong { color:var(--ac-heading); font-size:13px; }
.ldg-ac-scope-preview-head > span { padding:4px 8px; border-radius:999px; background:#eaf4fb; color:#0a5d95; font-size:10px; font-weight:700; }
.ldg-ac-scope-preview-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }
.ldg-ac-scope-preview-grid > div { padding:10px 11px; border:1px solid #e1e9f1; border-radius:10px; background:#fff; }
.ldg-ac-scope-preview-grid > div.is-wide { grid-column:1/-1; }
.ldg-ac-scope-preview-grid small { display:block; color:#708097; font-size:10px; text-transform:uppercase; letter-spacing:.05em; }
.ldg-ac-scope-preview-grid strong { display:block; margin-top:4px; color:#173b63; font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
.ldg-ac-role-helper { border-radius:12px !important; padding:12px 14px !important; }
.ldg-ac-savebar { padding:12px 16px !important; font-size:12px !important; }
.ldg-ac-savebar .ldg-ac-btn { min-height:36px !important; }

/* Accesses: cards remain complete but become scan-friendly. */
.ldg-ac-access-grid-v3 { gap:12px !important; }
.ldg-ac-access-card { border-radius:14px !important; padding:14px !important; }
.ldg-ac-access-title { min-height:40px !important; }
.ldg-ac-program-heading strong { font-size:13px !important; }
.ldg-ac-access-controls { gap:10px !important; }
.ldg-ac-access-controls label, .ldg-ac-suite-controls label { font-size:9px !important; }
.ldg-ac-access-controls input[type="date"], .ldg-ac-access-controls select, .ldg-ac-suite-controls input, .ldg-ac-suite-controls select { min-height:36px !important; font-size:12px !important; }
.ldg-ac-suite-card { grid-column:1/-1 !important; padding:18px !important; }
.ldg-ac-suite-controls { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:11px !important; }
.ldg-ac-modules-drawer { margin-top:14px !important; border-radius:12px !important; }
.ldg-ac-modules-drawer summary { min-height:45px !important; }
.ldg-ac-module-grid-v3 { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:7px !important; }
.ldg-ac-module-grid-v3 label { min-height:36px !important; font-size:11px !important; }

/* Tables: operational wording, sticky head, readable rows. */
.ldg-ac-table-summary { gap:10px !important; }
.ldg-ac-table-summary > div { padding:14px 15px !important; border-radius:13px !important; }
.ldg-ac-table-summary span { font-size:11px !important; }
.ldg-ac-table-summary strong { font-size:26px !important; }
.ldg-ac-table-toolbar { min-height:50px; padding:9px 12px !important; }
.ldg-ac-filter-chips label { min-height:31px; display:inline-flex; align-items:center; padding:0 11px !important; font-size:11px !important; }
.ldg-ac-table-page .ldg-ac-panel { padding:0 !important; }
.ldg-ac-table-scroll { max-height:calc(100vh - 305px); overflow:auto !important; }
.ldg-ac-table { font-size:13px !important; }
.ldg-ac-table th { position:sticky; top:0; z-index:2; padding:11px 13px !important; background:#f3f7fa !important; font-size:10px !important; letter-spacing:.05em !important; }
.ldg-ac-table td { min-height:44px; padding:11px 13px !important; vertical-align:middle !important; }
.ldg-ac-table td strong { font-size:12px !important; }
.ldg-ac-table td small { font-size:10px !important; }
.ldg-ac-deadline-human { white-space:nowrap; color:#52657b; font-weight:650; }
.ldg-ac-deadline-human.is-overdue { color:var(--ac-danger); }
.ldg-ac-row-action { min-height:31px; padding:0 10px; border:1px solid #c8d8e7; border-radius:8px; background:#fff; color:#075b96; font:700 11px/1 "Segoe UI",system-ui,sans-serif; cursor:pointer; white-space:nowrap; }
.ldg-ac-row-action:hover { background:#edf6fd; border-color:#9ec7e5; }

/* Programs: three-column enterprise catalogue. */
.ldg-ac-program-grid.is-large.ldg-ac-program-launcher { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:14px !important; }
.ldg-ac-program-launcher .ldg-ac-program-tile { min-height:210px !important; padding:18px !important; border-radius:15px !important; }
.ldg-ac-program-launcher .ldg-ac-program-tile > strong { font-size:15px !important; text-transform:none !important; letter-spacing:-.015em !important; }
.ldg-ac-program-launcher .ldg-ac-program-tile > span { font-size:12px !important; line-height:1.45 !important; }
.ldg-ac-program-launcher .ldg-ac-program-tile > em { font-size:11px !important; }
.ldg-ac-program-actions .ldg-ac-mini-btn { min-height:34px; display:inline-flex; align-items:center; }

/* Registers: local client-side filters, manageable table height. */
.ldg-ac-registers-gold { gap:16px !important; }
.ldg-ac-register-panel { overflow:hidden !important; }
.ldg-ac-register-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; border-bottom:1px solid var(--ac-line); background:#fbfcfe; }
.ldg-ac-register-toolbar h3 { margin:2px 0 2px !important; padding:0 !important; border:0 !important; background:none !important; color:var(--ac-heading) !important; font-size:17px !important; text-transform:none !important; letter-spacing:-.02em !important; }
.ldg-ac-register-toolbar p { margin:0; color:var(--ac-muted); font-size:11px; }
.ldg-ac-register-controls { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.ldg-ac-register-controls input, .ldg-ac-register-controls select { min-height:36px; border:1px solid #ccd9e6; border-radius:9px; background:#fff; padding:0 10px; color:#263b52; font-size:11px; font-weight:600; }
.ldg-ac-register-controls input { width:260px; }
.ldg-ac-register-scroll { max-height:390px !important; }
.ldg-ac-register-no-results { padding:24px; text-align:center; color:var(--ac-muted); font-size:12px; }
.ldg-ac-register-panel .ldg-ac-note { margin:0 !important; padding:12px 16px !important; border-top:1px solid var(--ac-line); background:#f8fafc; font-size:11px !important; }

/* Settings: real configuration architecture instead of a sparse summary table. */
.ldg-ac-settings-shell { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; max-width:1200px; }
.ldg-ac-settings-section { padding:18px !important; border-radius:15px !important; }
.ldg-ac-settings-section-head { display:flex; gap:12px; align-items:flex-start; padding-bottom:14px; border-bottom:1px solid #e6edf4; }
.ldg-ac-settings-section-head > span { width:38px; height:38px; flex:0 0 38px; display:flex; align-items:center; justify-content:center; border-radius:11px; background:#edf6fd; color:#0871b6; }
.ldg-ac-settings-section-head svg { width:18px; height:18px; fill:currentColor; }
.ldg-ac-settings-section-head h3 { margin:0; color:var(--ac-heading); font-size:16px; letter-spacing:-.02em; }
.ldg-ac-settings-section-head p { margin:3px 0 0; color:var(--ac-muted); font-size:11px; }
.ldg-ac-settings-value, .ldg-ac-settings-pairs { margin-top:14px; }
.ldg-ac-settings-value { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ldg-ac-settings-value.is-column { align-items:flex-start; flex-direction:column; }
.ldg-ac-settings-value strong, .ldg-ac-settings-pairs strong { color:#62738a; font-size:10px; text-transform:uppercase; letter-spacing:.05em; }
.ldg-ac-settings-value > span:not(.ldg-ac-badge), .ldg-ac-settings-pairs span { color:#183652; font-size:12px; font-weight:650; overflow-wrap:anywhere; }
.ldg-ac-settings-pairs { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.ldg-ac-settings-pairs > div { padding:10px 11px; border:1px solid #e2e9f0; border-radius:10px; background:#fafcfe; }
.ldg-ac-settings-pairs span { display:block; margin-top:4px; }
.ldg-ac-settings-section > .ldg-ac-btn { margin-top:14px; }

/* Email center: width and readability optimized for enterprise editing. */
.ldg-ac-normacloud-email-center { width:100%; max-width:var(--ac-email-max) !important; }
.ldg-ac-email-front-head { margin-bottom:10px !important; }
.ldg-ac-email-front-head h2 { font-size:26px !important; }
.ldg-ac-email-status-strip { grid-template-columns:1.25fr repeat(3,minmax(0,1fr)) !important; gap:9px !important; }
.ldg-ac-email-status-strip > div { padding:13px 14px !important; border-radius:13px !important; }
.ldg-ac-email-status-strip span { font-size:9px !important; }
.ldg-ac-email-status-strip strong { font-size:16px !important; }
.ldg-ac-email-panel { padding:18px !important; border-radius:15px !important; }
.ldg-ac-email-panel h3 { font-size:18px !important; }
.ldg-ac-email-panel p { font-size:12px !important; line-height:1.45 !important; }
.ldg-ac-email-fields-wide { gap:12px !important; }
.ldg-ac-email-fields-wide label, .ldg-ac-template-pro-body label { font-size:10px !important; }
.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 { min-height:40px !important; font-size:13px !important; }
.ldg-ac-template-pro summary { min-height:58px !important; }
.ldg-ac-template-pro summary strong { font-size:14px !important; }
.ldg-ac-template-pro summary small { font-size:11px !important; }
.ldg-ac-template-pro summary > span { min-height:28px; display:inline-flex; align-items:center; padding:0 9px !important; font-size:10px !important; }
.ldg-ac-template-pro-body { grid-template-columns:minmax(0,1.1fr) minmax(440px,.9fr) !important; gap:16px !important; }
.ldg-ac-template-pro-body textarea { min-height:350px !important; line-height:1.55 !important; }
.ldg-ac-email-preview-sheet { min-height:370px !important; padding:28px 30px !important; }
.ldg-ac-email-preview-body { font-size:13px !important; line-height:1.65 !important; }
.ldg-ac-email-operations-grid { grid-template-columns:minmax(0,1fr) minmax(420px,.85fr) !important; gap:14px !important; }
.ldg-ac-email-log-clean { max-height:430px !important; }
.ldg-ac-email-diag-row { min-height:66px; padding:12px 13px !important; }
.ldg-ac-email-diag-row strong { font-size:12px !important; }
.ldg-ac-email-diag-row span { font-size:10px !important; line-height:1.4 !important; }
.ldg-ac-email-diag-row em { max-width:44% !important; font-size:11px !important; }
.ldg-ac-email-savebar-clean { padding:13px 16px !important; }
.ldg-ac-email-savebar-clean strong { font-size:13px !important; }
.ldg-ac-email-savebar-clean span { font-size:10px !important; }

/* Status grammar: consistent success / info / warning / danger. */
.ldg-ac-badge { min-height:23px; display:inline-flex; align-items:center; justify-content:center; padding:0 8px !important; border-radius:999px !important; font-size:10px !important; line-height:1 !important; font-weight:750 !important; }
.ldg-ac-state-active, .ldg-ac-severity-success { background:#eaf7ed !important; border-color:#b9dfc1 !important; color:#176b2c !important; }
.ldg-ac-state-info, .ldg-ac-severity-info { background:#edf6fd !important; border-color:#c4def0 !important; color:#075b96 !important; }
.ldg-ac-state-suspended, .ldg-ac-severity-warning { background:#fff6e6 !important; border-color:#f0d6a3 !important; color:#8a5600 !important; }
.ldg-ac-state-expired, .ldg-ac-state-revoked, .ldg-ac-severity-danger { background:#fff0f0 !important; border-color:#efc4c4 !important; color:#b42323 !important; }

/* Responsive behavior. */
@media (max-width:1500px) {
    .ldg-ac-main { padding-left:20px !important; padding-right:20px !important; }
    .ldg-ac-program-grid.is-large.ldg-ac-program-launcher { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .ldg-ac-module-grid-v3 { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:1180px) {
    .ldg-ac-workspace { grid-template-columns:290px minmax(0,1fr) !important; }
    .ldg-ac-kpis { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    .ldg-ac-overview-grid { grid-template-columns:1fr !important; }
    .ldg-ac-template-pro-body { grid-template-columns:1fr !important; }
    .ldg-ac-email-operations-grid { grid-template-columns:1fr !important; }
    .ldg-ac-form-grid, .ldg-ac-suite-controls { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:920px) {
    .ldg-ac-main { padding:14px !important; }
    .ldg-ac-topbar { padding:18px !important; }
    .ldg-ac-workspace { grid-template-columns:1fr !important; }
    .ldg-ac-users-panel { max-height:340px; }
    .ldg-ac-kpis { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .ldg-ac-program-grid.is-large.ldg-ac-program-launcher { grid-template-columns:1fr !important; }
    .ldg-ac-access-grid, .ldg-ac-form-grid, .ldg-ac-suite-controls, .ldg-ac-settings-shell { grid-template-columns:1fr !important; }
    .ldg-ac-module-grid-v3 { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .ldg-ac-register-toolbar { align-items:stretch; flex-direction:column; }
    .ldg-ac-register-controls { justify-content:flex-start; }
    .ldg-ac-register-controls input { width:min(100%,320px); }
}
@media (max-width:620px) {
    .ldg-ac-kpis { grid-template-columns:1fr !important; }
    .ldg-ac-hero-dashboard-gold { align-items:flex-start !important; flex-direction:column !important; }
    .ldg-ac-hero-dashboard-gold .ldg-ac-hero-status { width:100%; }
    .ldg-ac-module-grid-v3, .ldg-ac-settings-pairs, .ldg-ac-scope-preview-grid { grid-template-columns:1fr !important; }
    .ldg-ac-scope-preview-grid > div.is-wide { grid-column:auto; }
}

.ldg-ac-profile-advanced { grid-column:1/-1; border:1px solid #e0e8f0; border-radius:11px; background:#fafcfe; }
.ldg-ac-profile-advanced summary { min-height:40px; display:flex; align-items:center; padding:0 12px; cursor:pointer; color:#4d6379; font-size:11px; font-weight:750; }
.ldg-ac-profile-advanced[open] summary { border-bottom:1px solid #e5ebf1; }
.ldg-ac-profile-advanced > label { display:block; padding:12px !important; }
.ldg-ac-profile-advanced select { max-width:520px; }


/* ==========================================================================
   V2.1.24 Enterprise Visual Acceptance & Density Closure Lock
   Final visual-density closure. Functional contracts remain unchanged.
   ========================================================================== */

/* Sidebar: remove redundant brand/footer actions and make deadline meaning explicit. */
.ldg-ac-brand-text-only .ldg-ac-brand-copy small { display:none !important; }
.ldg-ac-sidebar-admin { padding:11px 12px !important; }
.ldg-ac-sidebar-admin strong { font-size:12px !important; line-height:1.25 !important; }
.ldg-ac-sidebar-admin span { margin-top:3px !important; color:rgba(255,255,255,.7) !important; }
.ldg-ac-nav .ldg-ac-nav-status { white-space:nowrap; }

/* Dashboard: final contrast and density closure. */
.ldg-ac-hero-dashboard-gold h2 { color:#ffffff !important; text-shadow:0 1px 0 rgba(0,0,0,.06); }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-copy > span { color:#d9edf9 !important; }
.ldg-ac-dashboard-critical-list .ldg-ac-line { min-height:50px; padding:9px 0 !important; }
.ldg-ac-dashboard-list-more {
    width:100%; min-height:38px; margin-top:6px; border:0; border-top:1px solid #e3eaf1;
    background:#f8fbfd; color:#075b96; font:750 11px/1 "Segoe UI",system-ui,sans-serif; cursor:pointer;
}
.ldg-ac-dashboard-list-more:hover { background:#eef6fc; }
.ldg-ac-overview-grid > .ldg-ac-panel { display:flex; flex-direction:column; }
.ldg-ac-overview-grid > .ldg-ac-panel > .ldg-ac-list,
.ldg-ac-overview-grid > .ldg-ac-panel > .ldg-ac-quick-grid { flex:1 1 auto; }
.ldg-ac-overview-grid .ldg-ac-quick-grid { height:100%; grid-auto-rows:minmax(94px,1fr); align-content:stretch; }
.ldg-ac-program-overview-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:12px !important; }
.ldg-ac-program-overview-grid .ldg-ac-program-tile { min-height:155px !important; padding:18px !important; }

/* Credential action: attention rather than destructive danger. */
.ldg-ac-btn[data-reset-password] {
    background:#fff6e6 !important; border-color:#e8c47f !important; color:#815100 !important;
    box-shadow:none !important;
}
.ldg-ac-btn[data-reset-password]:hover { background:#ffedc8 !important; border-color:#d7aa54 !important; }

/* Registers: title first, then one compact full-width filter toolbar. */
.ldg-ac-register-toolbar {
    display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:12px !important;
    align-items:stretch !important; padding:15px 16px 12px !important;
}
.ldg-ac-register-controls {
    display:grid !important; grid-template-columns:minmax(280px,2fr) repeat(2,minmax(160px,1fr)) !important;
    gap:9px !important; width:100%; align-items:center !important;
}
.ldg-ac-register-controls input, .ldg-ac-register-controls select {
    width:100% !important; min-height:38px !important; font-size:12px !important;
}
.ldg-ac-register-scroll { max-height:430px !important; }
.ldg-ac-register-panel .ldg-ac-table th { top:0; }

/* Settings: centered 2x2 composition sized to actual content. */
.ldg-ac-view[data-view-panel="settings"] { max-width:1240px !important; }
.ldg-ac-settings-shell { width:100%; max-width:1120px !important; margin:0 auto !important; align-items:stretch; }
.ldg-ac-settings-section { min-height:180px; display:flex; flex-direction:column; }
.ldg-ac-settings-section > .ldg-ac-btn { margin-top:auto !important; align-self:flex-start; }

/* Email center: expose the logo visually, keep the technical URL secondary. */
.ldg-ac-email-status-strip .is-primary { position:relative; }
.ldg-ac-email-status-strip .is-primary a {
    display:inline-flex; margin-top:7px; color:#075b96; font-size:10px; font-weight:750; text-decoration:none;
}
.ldg-ac-email-status-strip .is-primary a:hover { text-decoration:underline; }
.ldg-ac-email-logo-settings {
    grid-column:1/-1; border:1px solid #dfe7ef; border-radius:11px; background:#fafcfe; overflow:hidden;
}
.ldg-ac-email-logo-settings summary {
    min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:12px;
    padding:0 12px; cursor:pointer; color:#29445f; font-size:11px; font-weight:750; list-style:none;
}
.ldg-ac-email-logo-settings summary::-webkit-details-marker { display:none; }
.ldg-ac-email-logo-settings summary strong {
    padding:4px 8px; border-radius:999px; background:#eaf7ed; color:#176b2c; font-size:10px;
}
.ldg-ac-email-logo-settings[open] summary { border-bottom:1px solid #e4eaf0; }
.ldg-ac-email-logo-settings > label { display:block; padding:12px 12px 5px !important; }
.ldg-ac-email-logo-settings > small { display:block; padding:0 12px 12px; color:#6d7d90; font-size:10px; line-height:1.45; }
.ldg-ac-email-signature textarea { min-height:142px !important; line-height:1.6 !important; resize:vertical; }
.ldg-ac-email-diagnostic-panel { scroll-margin-top:18px; }

@media (max-width:1400px) {
    .ldg-ac-program-overview-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:920px) {
    .ldg-ac-register-controls { grid-template-columns:1fr !important; }
    .ldg-ac-program-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:620px) {
    .ldg-ac-program-overview-grid { grid-template-columns:1fr !important; }
}

/* ==========================================================================
   V2.1.25 Full Width Workspace Hotfix
   Operational workspaces use the full width available after the sidebar.
   Email Center and Settings retain a controlled reading width.
   ========================================================================== */
.ldg-ac-topbar {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.ldg-ac-view {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Keep form-heavy pages intentionally readable instead of stretching inputs
   across ultra-wide displays. */
.ldg-ac-view[data-view-panel="email_center"] {
    max-width: var(--ac-email-max) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.ldg-ac-view[data-view-panel="settings"] {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Avoid legacy inner caps reintroducing artificial side gutters. */
.ldg-ac-view[data-view-panel="overview"],
.ldg-ac-view[data-view-panel="users"],
.ldg-ac-view[data-view-panel="access"],
.ldg-ac-view[data-view-panel="credentials"],
.ldg-ac-view[data-view-panel="deadlines"],
.ldg-ac-view[data-view-panel="blocks"],
.ldg-ac-view[data-view-panel="programs"],
.ldg-ac-view[data-view-panel="report"] {
    max-width: none !important;
}

@media (max-width: 920px) {
    .ldg-ac-view[data-view-panel="email_center"],
    .ldg-ac-view[data-view-panel="settings"] {
        max-width: none !important;
    }
}


/* V2.1.31 — Superadmin Governance Workspace & Platform Tools Separation Lock */
.ldg-ac-nav-divider{height:1px;margin:8px 14px;background:rgba(255,255,255,.14)}
.ldg-ac-governance-head{align-items:flex-start!important}
.ldg-ac-governance-lock{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #d9e8b0;background:#f4f9e7;color:#526c13;border-radius:999px;font-size:11px;font-weight:850;white-space:nowrap}
.ldg-ac-governance-lock svg{width:16px;height:16px;fill:currentColor}
.ldg-ac-governance-grid{display:grid;gap:14px;margin-top:18px}
.ldg-ac-governance-tool{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px 24px;background:linear-gradient(135deg,#fff 0%,#fbfdf8 100%);border:1px solid #dce8ee;border-left:4px solid #95b52d;border-radius:16px;box-shadow:0 8px 28px rgba(35,55,68,.06)}
.ldg-ac-governance-tool-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#eef6db;color:#587516;border:1px solid #dcebb0}
.ldg-ac-governance-tool-icon svg{width:27px;height:27px;fill:currentColor}
.ldg-ac-governance-tool-copy h3{margin:5px 0 6px!important;font-size:20px!important;line-height:1.2!important;color:#0b4058!important}
.ldg-ac-governance-tool-copy p{margin:0!important;max-width:820px;color:#5f707b!important;font-size:13px!important;line-height:1.55!important}
.ldg-ac-governance-tool-meta{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#0f5e82}
.ldg-ac-governance-tool-meta em{font-style:normal;padding:3px 7px;border-radius:999px;background:#edf3f5;color:#536772;letter-spacing:0;text-transform:none}
.ldg-ac-governance-tool-status{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:10px;color:#657983}
.ldg-ac-governance-tool-status span{padding:5px 8px;border:1px solid #dce8ee;border-radius:999px;background:#f7fafb}
.ldg-ac-governance-tool-status .is-private{background:#eef6db;border-color:#dcebb0;color:#526c13;font-weight:850}
.ldg-ac-governance-tool-action .ldg-ac-btn{white-space:nowrap;min-height:43px!important}
@media(max-width:900px){.ldg-ac-governance-tool{grid-template-columns:52px minmax(0,1fr)}.ldg-ac-governance-tool-action{grid-column:1/-1}.ldg-ac-governance-tool-action .ldg-ac-btn{width:100%;justify-content:center}.ldg-ac-governance-lock{margin-top:10px}}

/* ==========================================================================
   V2.1.32 NormaCloud Global Premium Shell & G7 Visual Readiness Alignment Lock
   Presentation-only alignment with NormaCloud Global Ecosystem Certifier V0.3.5.
   Functional, RBAC, inventory, registry, email and governance contracts unchanged.
   ========================================================================== */
html.ldg-ac-context-frontend,
body.ldg-ac-context-frontend { overflow-x:clip !important; background:#edf4f7 !important; }
body.ldg-ac-context-frontend #main,
body.ldg-ac-context-frontend .main_color,
body.ldg-ac-context-frontend .container_wrap { background:#edf4f7 !important; border:0 !important; margin:0 !important; padding:0 !important; }
body.ldg-ac-context-frontend #main > .container,
body.ldg-ac-context-frontend #main .container,
body.ldg-ac-context-frontend .container,
body.ldg-ac-context-frontend .content,
body.ldg-ac-context-frontend .entry-content-wrapper,
body.ldg-ac-context-frontend .avia_textblock { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }

.ldg-ac-app {
    --acg-ink:#102c3b;
    --acg-ink-soft:#314f5f;
    --acg-muted:#607887;
    --acg-bg:#edf4f7;
    --acg-surface:#ffffff;
    --acg-line:#d7e3e9;
    --acg-line-strong:#bfd0d9;
    --acg-blue:#075f96;
    --acg-blue-2:#0c76b2;
    --acg-blue-soft:#eaf5fb;
    --acg-navy:#062f45;
    --acg-navy-2:#083f5a;
    --acg-green:#365f09;
    --acg-green-bg:#edf7db;
    --acg-green-line:#c8dc95;
    --acg-amber:#704700;
    --acg-amber-bg:#fff1cc;
    --acg-amber-line:#e9c56c;
    --acg-red:#872218;
    --acg-red-bg:#fdeae7;
    --acg-shadow:0 18px 48px rgba(20,53,70,.08);
    --acg-shadow-soft:0 8px 24px rgba(20,53,70,.055);
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-height:100vh !important;
    margin:0 !important;
    background:var(--acg-bg) !important;
    color:var(--acg-ink) !important;
    overflow-x:clip !important;
    font-family:Inter,"Segoe UI",Arial,sans-serif !important;
    font-size:14px !important;
    line-height:1.5 !important;
    letter-spacing:0 !important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}
.ldg-ac-app[data-context="frontend"] { width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important; }
.ldg-ac-app *, .ldg-ac-app *::before, .ldg-ac-app *::after { box-sizing:border-box; }

/* Premium governance topbar */
.ldg-ac-global-topbar {
    min-height:86px;
    background:linear-gradient(105deg,#052d43 0%,#073d57 58%,#062f45 100%) !important;
    color:#fff !important;
    border-bottom:1px solid rgba(255,255,255,.10);
    box-shadow:0 8px 28px rgba(6,47,69,.13);
    position:relative;
    z-index:1002;
}
.ldg-ac-global-topbar-inner {
    width:100%; max-width:none; min-height:86px; margin:0 auto;
    padding-left:clamp(24px,2.5vw,52px); padding-right:clamp(24px,2.5vw,52px);
    display:flex; align-items:center; justify-content:space-between; gap:28px;
}
.ldg-ac-global-brand { display:flex; align-items:center; gap:16px; min-width:0; }
.ldg-ac-cloudmark {
    width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center;
    border:1px solid rgba(255,255,255,.32); border-radius:12px;
    color:#99d9f2 !important; background:rgba(255,255,255,.07) !important;
}
.ldg-ac-cloudmark svg { width:22px; height:22px; fill:currentColor; }
.ldg-ac-wordmark { color:#fff !important; font-weight:850 !important; font-size:20px !important; white-space:nowrap; }
.ldg-ac-global-separator { width:1px; height:38px; background:rgba(255,255,255,.26); flex:0 0 auto; }
.ldg-ac-global-product { display:flex; flex-direction:column; min-width:0; }
.ldg-ac-global-product > strong { color:#fff !important; font-size:18px !important; line-height:1.2 !important; font-weight:830 !important; }
.ldg-ac-global-product > span { color:#d2e7ef !important; font-size:12px !important; margin-top:5px !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ldg-ac-global-actions { display:flex; align-items:center; gap:10px; justify-content:flex-end; flex-wrap:wrap; }
.ldg-ac-global-pill {
    display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:29px;
    border-radius:999px; padding:5px 11px; font-size:11.5px !important; font-weight:850 !important;
    letter-spacing:.025em; border:1px solid transparent; white-space:nowrap; line-height:1.2; text-transform:uppercase;
}
.ldg-ac-global-pill-role { background:#fff !important; color:#072f44 !important; border-color:#fff !important; }
.ldg-ac-global-pill-state { background:var(--acg-green-bg) !important; color:var(--acg-green) !important; border-color:var(--acg-green-line) !important; }
.ldg-ac-global-menu {
    display:none; min-height:40px; border:0; border-radius:10px; padding:9px 13px;
    background:#fff !important; color:#082f43 !important; font:800 12px/1 Inter,"Segoe UI",Arial,sans-serif !important;
    align-items:center; gap:7px; cursor:pointer;
}
.ldg-ac-global-menu svg { width:18px; height:18px; fill:currentColor; }

/* Sidebar becomes the same sticky horizontal navigation grammar as Global Certifier. */
.ldg-ac-sidebar {
    width:100% !important; min-height:54px !important; height:auto !important; padding:0 clamp(24px,2.5vw,52px) !important;
    position:sticky !important; top:0 !important; left:auto !important; right:auto !important; align-self:auto !important;
    z-index:1000 !important; display:block !important;
    background:rgba(255,255,255,.985) !important; color:var(--acg-ink) !important;
    border:0 !important; border-bottom:1px solid var(--acg-line) !important;
    box-shadow:0 3px 12px rgba(16,42,58,.04) !important; backdrop-filter:blur(12px);
    overflow:visible !important;
}
.ldg-ac-brand, .ldg-ac-sidebar-admin { display:none !important; }
.ldg-ac-nav {
    min-height:54px; width:100%; padding:0 !important; margin:0 !important;
    display:flex !important; align-items:center; gap:3px !important; flex-wrap:nowrap;
    overflow-x:auto; overflow-y:hidden; scrollbar-width:none;
}
.ldg-ac-nav::-webkit-scrollbar { display:none; }
.ldg-ac-nav button {
    width:auto !important; flex:0 0 auto; min-height:54px !important; padding:15px 13px 12px !important;
    border:0 !important; border-bottom:3px solid transparent !important; border-radius:0 !important;
    background:transparent !important; color:#2a4858 !important; box-shadow:none !important;
    font-size:12.5px !important; font-weight:760 !important; line-height:1.2 !important; text-align:center !important;
    justify-content:center !important; gap:7px !important; white-space:nowrap;
}
.ldg-ac-nav button:hover { color:#075d91 !important; background:#f4f9fc !important; box-shadow:none !important; }
.ldg-ac-nav button.is-active { color:#075fa5 !important; border-bottom-color:#0d73b4 !important; background:#f7fbfe !important; box-shadow:none !important; }
.ldg-ac-nav button svg { width:16px !important; height:16px !important; opacity:1 !important; }
.ldg-ac-nav .ldg-ac-nav-status {
    min-width:22px !important; height:auto !important; min-height:22px !important; padding:3px 7px !important;
    border-radius:999px !important; background:#edf3f6 !important; color:#3f5966 !important;
    font-size:11.5px !important; font-style:normal !important; font-weight:800 !important; line-height:1.1 !important;
}
.ldg-ac-nav button.is-active .ldg-ac-nav-status, .ldg-ac-nav button:hover .ldg-ac-nav-status { background:#e5f2fa !important; color:#075f96 !important; }
.ldg-ac-nav-divider { width:1px !important; height:28px !important; margin:0 5px !important; background:var(--acg-line) !important; flex:0 0 1px; }
.ldg-ac-nav-backdrop { display:none; }

/* Full-width workspace and restrained command surface. */
.ldg-ac-main { min-width:0 !important; width:100% !important; padding:22px clamp(24px,2.5vw,52px) 40px !important; background:var(--acg-bg) !important; }
.ldg-ac-topbar {
    width:100% !important; max-width:none !important; min-height:96px !important; margin:0 0 18px !important;
    padding:20px 22px !important; border:1px solid var(--acg-line) !important; border-radius:16px !important;
    background:#fff !important; box-shadow:var(--acg-shadow-soft) !important;
}
.ldg-ac-top-kicker { display:block; color:#075f91 !important; font-size:11.5px !important; font-weight:900 !important; letter-spacing:.11em; text-transform:uppercase; margin-bottom:6px; }
.ldg-ac-topbar h1 { margin:0 !important; color:#0a3a55 !important; font-size:30px !important; line-height:1.08 !important; font-weight:790 !important; letter-spacing:-.018em !important; text-transform:none !important; }
.ldg-ac-topbar p { margin:8px 0 0 !important; color:#506b79 !important; font-size:14px !important; line-height:1.55 !important; font-weight:500 !important; }
.ldg-ac-top-meta { margin-top:8px !important; display:flex; gap:7px; flex-wrap:wrap; }
.ldg-ac-top-meta span { display:inline-flex; align-items:center; min-height:25px; padding:4px 8px; border:1px solid #d6e3e9; border-radius:999px; background:#f6fafc; color:#536d7a; font-size:11.5px !important; font-weight:700 !important; }
.ldg-ac-btn { border-radius:10px !important; border-color:var(--acg-line-strong) !important; color:#173f54 !important; box-shadow:none !important; }
.ldg-ac-btn-primary { background:#075f96 !important; border-color:#075f96 !important; color:#fff !important; }
.ldg-ac-btn-primary:hover { background:#064e7b !important; border-color:#064e7b !important; }
.ldg-ac-btn-ghost { background:#f7fafc !important; }

/* Global Certifier-compatible card grammar. */
.ldg-ac-panel, .ldg-ac-kpi, .ldg-ac-program-tile, .ldg-ac-access-card, .ldg-ac-form-card,
.ldg-ac-governance-tool { border-color:var(--acg-line) !important; box-shadow:var(--acg-shadow-soft) !important; }
.ldg-ac-panel, .ldg-ac-kpi { border-radius:16px !important; }
.ldg-ac-workspace-head h2, .ldg-ac-panel-head h2, .ldg-ac-governance-tool-copy h3 { color:#0a3a55 !important; }
.ldg-ac-workspace-head p, .ldg-ac-governance-tool-copy p { color:#5f7580 !important; }
.ldg-ac-hero-dashboard-gold {
    background:linear-gradient(145deg,#062f45,#0a435e) !important; border:1px solid #126487 !important;
    box-shadow:0 16px 34px rgba(8,47,67,.18) !important;
}
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-copy > span { color:#a9dff3 !important; }
.ldg-ac-hero-dashboard-gold .ldg-ac-hero-status { background:rgba(255,255,255,.08) !important; }
.ldg-ac-kpi strong { color:#075c9d !important; }
.ldg-ac-governance-lock { font-size:11.5px !important; }
.ldg-ac-governance-tool-meta, .ldg-ac-governance-tool-status { font-size:11.5px !important; }

/* G7 visual-readiness typography floor for operational text. */
.ldg-ac-app small,
.ldg-ac-app label,
.ldg-ac-app th,
.ldg-ac-app .ldg-ac-section-kicker,
.ldg-ac-app .ldg-ac-badge,
.ldg-ac-app .ldg-ac-table-note,
.ldg-ac-app .ldg-ac-action-label,
.ldg-ac-app .ldg-ac-next-action span,
.ldg-ac-app .ldg-ac-kpi span,
.ldg-ac-app .ldg-ac-kpi small,
.ldg-ac-app .ldg-ac-panel-head button,
.ldg-ac-app .ldg-ac-dashboard-list-more,
.ldg-ac-app .ldg-ac-profile-advanced summary,
.ldg-ac-app .ldg-ac-email-status-strip a,
.ldg-ac-app .ldg-ac-email-logo-settings summary,
.ldg-ac-app .ldg-ac-email-logo-settings summary strong,
.ldg-ac-app .ldg-ac-email-logo-settings > small,
.ldg-ac-app .ldg-ac-governance-tool-meta,
.ldg-ac-app .ldg-ac-governance-tool-status,
.ldg-ac-app .ldg-ac-governance-lock,
.ldg-ac-app .ldg-ac-nav-status { font-size:11.5px !important; }
.ldg-ac-app small, .ldg-ac-app .ldg-ac-table-note, .ldg-ac-app .ldg-ac-kpi small { font-size:12px !important; }

/* Drawer/off-canvas below the same 1180px breakpoint used by Global Certifier. */
@media (max-width:1180px) {
    .ldg-ac-global-topbar-inner { padding-left:22px; padding-right:22px; }
    .ldg-ac-global-menu { display:inline-flex !important; }
    .ldg-ac-global-pill-state { display:none !important; }
    .ldg-ac-sidebar {
        position:fixed !important; top:86px !important; right:0 !important; left:auto !important;
        width:min(380px,92vw) !important; max-width:92vw !important; height:calc(100vh - 86px) !important; min-height:0 !important;
        padding:14px !important; z-index:1004 !important; overflow-y:auto !important; overflow-x:hidden !important;
        border-left:1px solid var(--acg-line) !important; border-bottom:0 !important;
        box-shadow:-18px 0 44px rgba(20,53,70,.16) !important;
        opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
        transition:opacity .16s ease, visibility .16s ease;
    }
    .ldg-ac-sidebar.open { opacity:1 !important; visibility:visible !important; pointer-events:auto !important; }
    .ldg-ac-sidebar .ldg-ac-nav { display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:4px !important; overflow:visible !important; min-height:auto !important; }
    .ldg-ac-sidebar .ldg-ac-nav button {
        width:100% !important; min-height:46px !important; justify-content:flex-start !important; text-align:left !important;
        padding:0 12px !important; border:1px solid transparent !important; border-radius:10px !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav button:hover { border-color:#d7e5ec !important; }
    .ldg-ac-sidebar .ldg-ac-nav button.is-active { border-color:#c5dce8 !important; border-bottom-color:#c5dce8 !important; background:#eef7fb !important; }
    .ldg-ac-sidebar .ldg-ac-nav .ldg-ac-nav-status { margin-left:auto; }
    .ldg-ac-sidebar .ldg-ac-nav-divider { width:100% !important; height:1px !important; margin:7px 0 !important; }
    .ldg-ac-sidebar-admin {
        display:block !important; margin:14px 0 0 !important; padding:13px !important; border:1px solid var(--acg-line) !important;
        border-radius:12px !important; background:#f7fafc !important;
    }
    .ldg-ac-sidebar-admin strong { display:block !important; color:#173f54 !important; font-size:12px !important; }
    .ldg-ac-sidebar-admin span { display:block !important; color:#607887 !important; font-size:11.5px !important; }
    .ldg-ac-nav-backdrop {
        position:fixed; inset:86px 0 0 0; z-index:1003; border:0; padding:0; background:rgba(4,31,45,.26); cursor:default;
    }
    .ldg-ac-nav-backdrop.open { display:block; }
    .ldg-ac-main { padding-left:22px !important; padding-right:22px !important; }
}
@media (max-width:760px) {
    .ldg-ac-global-topbar, .ldg-ac-global-topbar-inner { min-height:78px; }
    .ldg-ac-global-topbar-inner { padding-left:16px; padding-right:16px; gap:12px; }
    .ldg-ac-wordmark, .ldg-ac-global-separator { display:none !important; }
    .ldg-ac-global-brand { gap:10px; }
    .ldg-ac-global-product > strong { font-size:15px !important; }
    .ldg-ac-global-product > span { font-size:11.5px !important; }
    .ldg-ac-global-pill-role { display:none !important; }
    .ldg-ac-sidebar { top:78px !important; height:calc(100vh - 78px) !important; width:min(360px,94vw) !important; max-width:94vw !important; }
    .ldg-ac-nav-backdrop { inset:78px 0 0 0; }
    .ldg-ac-main { padding:16px !important; }
    .ldg-ac-topbar { padding:18px !important; display:block !important; }
    .ldg-ac-topbar h1 { font-size:26px !important; }
    .ldg-ac-top-actions { margin-top:15px; }
    .ldg-ac-top-actions .ldg-ac-btn { flex:1 1 auto; }
}
@media (max-width:460px) {
    .ldg-ac-cloudmark { width:36px; height:36px; flex-basis:36px; }
    .ldg-ac-global-product > strong { font-size:14px !important; }
    .ldg-ac-global-product > span { max-width:190px; }
    .ldg-ac-global-menu span { display:none; }
    .ldg-ac-global-menu { width:40px; padding:0; justify-content:center; }
    .ldg-ac-main { padding:14px !important; }
}

/* ========================================================================== 
   V2.1.33 — Primary Navigation Recovery & Governance Visibility Closure Lock
   Runtime closure only: shell/navigation visibility. No RBAC, inventory,
   registry, email, module assignment or governance contract changes.
   ========================================================================== */

/* Keep the command header reachable at every responsive breakpoint. */
.ldg-ac-global-topbar {
    position:sticky !important;
    top:0 !important;
    z-index:1010 !important;
}

/* Desktop: the primary navigation is always rendered directly below the
   sticky command header. Explicit visibility neutralizes inherited legacy
   sidebar states from previous visual layers. */
@media (min-width:1181px) {
    .ldg-ac-sidebar {
        position:sticky !important;
        top:86px !important;
        display:block !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
        transform:none !important;
        z-index:1008 !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav {
        display:flex !important;
        visibility:visible !important;
        opacity:1 !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav button,
    .ldg-ac-sidebar .ldg-ac-nav button > span,
    .ldg-ac-sidebar .ldg-ac-nav .ldg-ac-nav-status,
    .ldg-ac-sidebar .ldg-ac-nav-divider {
        visibility:visible !important;
        opacity:1 !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav button > span {
        display:inline !important;
    }
}

/* Drawer range: V2.1.32 inherited legacy rules that hid nav <span> labels
   with !important. Restore complete labels and keep the menu trigger visible
   because the global header is now sticky. */
@media (max-width:1180px) {
    .ldg-ac-global-topbar {
        position:sticky !important;
        top:0 !important;
        z-index:1010 !important;
    }
    .ldg-ac-global-menu {
        display:inline-flex !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }
    .ldg-ac-sidebar {
        z-index:1009 !important;
    }
    .ldg-ac-sidebar.open {
        display:block !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav button > span {
        display:inline !important;
        visibility:visible !important;
        opacity:1 !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav button svg {
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
    }
    .ldg-ac-sidebar .ldg-ac-nav .ldg-ac-nav-status {
        display:inline-flex !important;
        visibility:visible !important;
        opacity:1 !important;
    }
    .ldg-ac-nav-backdrop {
        z-index:1008 !important;
    }
}

/* Mobile header height remains 78px; drawer starts immediately below it. */
@media (max-width:760px) {
    .ldg-ac-sidebar { top:78px !important; height:calc(100vh - 78px) !important; }
    .ldg-ac-nav-backdrop { inset:78px 0 0 0 !important; }
}

/* ========================================================================== 
   V2.1.34 — Sticky Shell Offset, Workspace Width & Premium Navigation State Closure Lock
   Runtime-observed visual closure only. No RBAC, inventory, registry, email,
   module assignment, tenant isolation or governance contract changes.
   ========================================================================== */

/* The previous frontend chrome cleanup used generic `header` / `footer`
   selectors in JavaScript. V2.1.34 scopes that cleanup to theme chrome only,
   so the NormaCloud command header remains visible and defines the sticky
   offset for the primary navigation. */
.ldg-ac-global-topbar {
    display:block !important;
    position:sticky !important;
    top:0 !important;
    z-index:1010 !important;
}

@media (min-width:1181px) {
    .ldg-ac-sidebar {
        top:86px !important;
        z-index:1008 !important;
    }
}

body.ldg-ac-app-page { scroll-padding-top:150px; }

/* Premium navigation state: selected view uses the same quiet blue language
   as Global Ecosystem Certifier; keyboard focus remains visible without the
   heavy browser-default black rectangle observed in runtime. */
.ldg-ac-nav button:focus {
    outline:none !important;
    box-shadow:none !important;
}
.ldg-ac-nav button:focus-visible {
    outline:2px solid rgba(13,115,180,.58) !important;
    outline-offset:-4px !important;
    border-radius:8px !important;
    background:#f2f8fc !important;
    box-shadow:inset 0 0 0 1px rgba(13,115,180,.12) !important;
}
.ldg-ac-nav button.is-active,
.ldg-ac-nav button.is-active:focus {
    color:#075fa5 !important;
    border-bottom-color:#0d73b4 !important;
    background:#f5fafe !important;
    box-shadow:none !important;
}

/* Workspace width reconciliation. Settings and Email Center retain a
   controlled reading width, but no longer collapse into a narrow legacy
   column on 1920px-class workspaces. */
.ldg-ac-view[data-view-panel="settings"],
.ldg-ac-view[data-view-panel="email_center"] {
    width:100% !important;
    max-width:1680px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.ldg-ac-settings-shell,
.ldg-ac-normacloud-email-center {
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
.ldg-ac-settings-shell {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
}
.ldg-ac-settings-section { min-height:174px !important; }
.ldg-ac-email-center-save-form,
.ldg-ac-email-center-grid,
.ldg-ac-email-center-grid.is-bottom { width:100% !important; max-width:none !important; }

/* The operational header exposes only stable runtime identity, never an
   internal release codename. */
.ldg-ac-top-meta span:first-child { letter-spacing:.02em; }

/* Master/detail empty state should read as intentional, not as a failed load. */
.ldg-ac-user-detail > .ldg-ac-loading:only-child {
    min-height:260px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:28px !important;
    border:1px dashed #cadbe4 !important;
    border-radius:14px !important;
    background:linear-gradient(180deg,#fbfdfe 0%,#f6fafc 100%) !important;
    color:#607887 !important;
    font-size:13px !important;
    font-weight:650 !important;
    text-align:center !important;
}

@media (max-width:1180px) {
    .ldg-ac-view[data-view-panel="settings"],
    .ldg-ac-view[data-view-panel="email_center"] { max-width:none !important; }
}
@media (max-width:920px) {
    .ldg-ac-settings-shell { grid-template-columns:1fr !important; }
}



/* V2.1.35 — Dedicated Frontend Authentication Gateway & WordPress Chrome Isolation Lock */
body.ldg-ac-context-frontend.admin-bar { margin-top:0 !important; }
body.ldg-ac-context-frontend #wpadminbar { display:none !important; }
.ldg-ac-btn-tech { background:#f2f6f8 !important; border-color:#cbdbe3 !important; color:#24495b !important; }
.ldg-ac-btn-tech:hover { background:#e8f1f5 !important; border-color:#afc9d5 !important; }

.ldg-ac-login-shell {
    width:100%; min-height:100vh; padding:clamp(32px,7vh,88px) 20px;
    display:grid; place-items:center; background:linear-gradient(155deg,#edf4f7 0%,#f8fbfc 56%,#eaf2f5 100%);
    color:#102c3b; font-family:Inter,"Segoe UI",Arial,sans-serif;
}
.ldg-ac-login-card {
    width:min(520px,100%); padding:34px 36px 30px; background:#fff; border:1px solid #d7e3e9;
    border-radius:22px; box-shadow:0 24px 70px rgba(20,53,70,.12);
}
.ldg-ac-login-brand { display:flex; align-items:center; gap:12px; margin-bottom:28px; }
.ldg-ac-login-brand .ldg-ac-cloudmark { background:#0a405b !important; border-color:#0a405b !important; color:#a8e1f5 !important; }
.ldg-ac-login-brand > div { display:flex; flex-direction:column; }
.ldg-ac-login-brand strong { color:#0a3a55; font-size:19px; line-height:1.15; font-weight:850; }
.ldg-ac-login-brand span { color:#607887; font-size:12px; margin-top:3px; font-weight:700; }
.ldg-ac-login-kicker { display:block; color:#075f91; font-size:11.5px; font-weight:900; letter-spacing:.12em; margin-bottom:7px; }
.ldg-ac-login-card h1 { margin:0; color:#092f45; font-size:32px; line-height:1.08; letter-spacing:-.02em; }
.ldg-ac-login-card > p { margin:12px 0 22px; color:#526f7d; font-size:14px; line-height:1.6; }
.ldg-ac-login-alert { margin:0 0 18px; padding:11px 13px; border:1px solid #efc1ba; border-radius:10px; background:#fff0ee; color:#84291f; font-size:13px; font-weight:700; }
.ldg-ac-login-form { display:grid; gap:9px; }
.ldg-ac-login-form label { color:#234c5f; font-size:12px !important; font-weight:800; }
.ldg-ac-login-form input[type="text"], .ldg-ac-login-form input[type="password"] {
    width:100%; min-height:46px; padding:10px 12px; border:1px solid #c9d9e1; border-radius:10px; background:#fff;
    color:#102c3b; font:600 14px/1.35 Inter,"Segoe UI",Arial,sans-serif; outline:none;
}
.ldg-ac-login-form input:focus { border-color:#0c76b2; box-shadow:0 0 0 3px rgba(12,118,178,.13); }
.ldg-ac-login-remember { display:flex; align-items:center; gap:8px; margin:4px 0 7px; font-weight:650 !important; }
.ldg-ac-login-submit { width:100%; min-height:47px !important; justify-content:center !important; font-size:14px !important; }
.ldg-ac-login-links { display:flex; justify-content:space-between; gap:16px; margin-top:18px; padding-top:16px; border-top:1px solid #e2ebef; }
.ldg-ac-login-links a { color:#075f96; font-size:12px; font-weight:750; text-decoration:none; }
.ldg-ac-login-links a:hover { text-decoration:underline; }
@media(max-width:620px){
    .ldg-ac-login-shell { padding:24px 14px; }
    .ldg-ac-login-card { padding:26px 22px 24px; border-radius:18px; }
    .ldg-ac-login-card h1 { font-size:27px; }
    .ldg-ac-login-links { flex-direction:column; gap:9px; }
    .ldg-ac-btn-tech { width:100%; justify-content:center; }
}
\n\n/* ==========================================================================\n   V2.1.38 — Unified Ecosystem Navigation Shell & Governance Shortcut Alignment Lock\n   Cross-application navigation only. No business, RBAC, tenant, inventory or\n   governance authority changes.\n   ========================================================================== */\n.ldg-ac-ecosystem-link {\n    display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:8px !important;\n    min-height:38px !important; padding:8px 12px !important; border-radius:10px !important;\n    border:1px solid rgba(255,255,255,.26) !important; background:rgba(255,255,255,.06) !important;\n    color:#d9f1fb !important; text-decoration:none !important; box-shadow:none !important; white-space:nowrap !important;\n    font-weight:800 !important; font-size:12px !important; line-height:1 !important;\n    transition:background .15s ease,border-color .15s ease,transform .15s ease;\n}\n.ldg-ac-ecosystem-link:hover { background:rgba(255,255,255,.15) !important; border-color:rgba(255,255,255,.50) !important; color:#fff !important; transform:translateY(-1px); }\n.ldg-ac-ecosystem-link:focus-visible { outline:3px solid #a9dcf0 !important; outline-offset:2px !important; }\n.ldg-ac-ecosystem-link svg { width:18px !important; height:18px !important; fill:currentColor !important; flex:0 0 18px; }\n.ldg-ac-global-certifier-link { background:rgba(255,255,255,.09) !important; border-color:rgba(255,255,255,.31) !important; }\n@media (max-width:1280px) {\n    .ldg-ac-ecosystem-link span { display:none !important; }\n    .ldg-ac-ecosystem-link { width:40px !important; padding:8px !important; }\n}\n@media (max-width:1180px) {\n    .ldg-ac-ecosystem-link { display:none !important; }\n}\n

/* ==========================================================================
   V2.1.39 — Ecosystem Shortcut Icon Containment & Topbar Visual Integrity Lock
   Runtime regression closure: contain cross-app SVGs inside compact controls.
   ========================================================================== */
.ldg-ac-global-actions .ldg-ac-ecosystem-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:auto !important;
    min-width:0 !important;
    min-height:38px !important;
    max-height:40px !important;
    padding:8px 12px !important;
    overflow:hidden !important;
    color:#e8f6fb !important;
    line-height:1 !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-icon {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    min-height:18px !important;
    max-width:18px !important;
    max-height:18px !important;
    flex:0 0 18px !important;
    overflow:hidden !important;
    color:currentColor !important;
    font-size:0 !important;
    line-height:0 !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-icon > svg {
    display:block !important;
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    min-height:18px !important;
    max-width:18px !important;
    max-height:18px !important;
    flex:none !important;
    fill:currentColor !important;
    color:inherit !important;
    transform:none !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-label {
    display:inline !important;
    color:inherit !important;
    font:inherit !important;
    line-height:1 !important;
}
@media (max-width:1280px) {
    .ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-label { display:none !important; }
    .ldg-ac-global-actions .ldg-ac-ecosystem-link { width:40px !important; min-width:40px !important; padding:8px !important; }
}
@media (max-width:1180px) {
    .ldg-ac-global-actions .ldg-ac-ecosystem-link { display:none !important; }
}

/* ==========================================================================
   V2.1.40 — Ecosystem Navigation Action Styling & Premium Topbar Visual Closure Lock
   Runtime visual closure only: dedicated cross-app action icons, unified command
   controls and optical alignment. No business, RBAC, tenant, inventory or
   governance authority changes.
   ========================================================================== */
.ldg-ac-global-actions {
    gap:10px !important;
    flex-wrap:nowrap !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link {
    box-sizing:border-box !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    padding:0 13px !important;
    border:1px solid rgba(220,240,248,.22) !important;
    border-radius:10px !important;
    background:rgba(255,255,255,.055) !important;
    color:#eef9fc !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
    text-decoration:none !important;
    text-shadow:none !important;
    font-family:Inter,"Segoe UI",Arial,sans-serif !important;
    font-size:13px !important;
    font-weight:650 !important;
    letter-spacing:-.005em !important;
    line-height:1 !important;
    white-space:nowrap !important;
    vertical-align:middle !important;
    overflow:hidden !important;
    transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease !important;
}
.ldg-ac-global-actions .ldg-ac-global-certifier-link {
    background:rgba(255,255,255,.085) !important;
    border-color:rgba(220,240,248,.30) !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link:hover {
    background:rgba(255,255,255,.14) !important;
    border-color:rgba(232,247,252,.48) !important;
    color:#ffffff !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 14px rgba(0,20,32,.13) !important;
    transform:translateY(-1px) !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link:active {
    transform:translateY(0) !important;
    background:rgba(255,255,255,.11) !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link:focus-visible {
    outline:2px solid #bce8f7 !important;
    outline-offset:2px !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-icon {
    display:grid !important;
    place-items:center !important;
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    min-height:18px !important;
    max-width:18px !important;
    max-height:18px !important;
    flex:0 0 18px !important;
    overflow:visible !important;
    color:#d8f0f8 !important;
    opacity:1 !important;
    font-size:0 !important;
    line-height:0 !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link:hover .ldg-ac-ecosystem-icon { color:#ffffff !important; }
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-icon > svg.ldg-ac-ecosystem-svg {
    display:block !important;
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    min-height:18px !important;
    max-width:18px !important;
    max-height:18px !important;
    flex:none !important;
    overflow:visible !important;
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:1.75 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
    vector-effect:non-scaling-stroke !important;
    transform:none !important;
}
.ldg-ac-global-actions .ldg-ac-global-certifier-link .ldg-ac-ecosystem-icon > svg.ldg-ac-ecosystem-svg {
    stroke-width:1.85 !important;
}
.ldg-ac-global-actions .ldg-ac-wordpress-admin-link .ldg-ac-ecosystem-icon > svg.ldg-ac-ecosystem-svg {
    width:17px !important;
    height:17px !important;
    min-width:17px !important;
    min-height:17px !important;
    max-width:17px !important;
    max-height:17px !important;
    stroke-width:1.55 !important;
}
.ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-label {
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    color:inherit !important;
    font:inherit !important;
    font-size:13px !important;
    font-weight:650 !important;
    letter-spacing:-.005em !important;
    line-height:1 !important;
    text-decoration:none !important;
    text-shadow:none !important;
    transform:translateY(.2px) !important;
}
.ldg-ac-global-actions .ldg-ac-global-pill {
    height:40px !important;
    min-height:40px !important;
    padding:0 17px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
}
@media (max-width:1280px) and (min-width:1181px) {
    .ldg-ac-global-actions .ldg-ac-ecosystem-link {
        width:40px !important;
        min-width:40px !important;
        max-width:40px !important;
        padding:0 !important;
    }
    .ldg-ac-global-actions .ldg-ac-ecosystem-link .ldg-ac-ecosystem-label { display:none !important; }
}
@media (max-width:1180px) {
    .ldg-ac-global-actions .ldg-ac-ecosystem-link { display:none !important; }
    .ldg-ac-global-actions { flex-wrap:wrap !important; }
    .ldg-ac-global-actions .ldg-ac-global-pill { height:auto !important; min-height:29px !important; padding:5px 11px !important; }
}
