/* =============================================================
   pim-formazione · CSS frontend pubblico (/formazione/)
   Va DOPO pim-theme.css. Stili specifici delle pagine collaboratore.
   ============================================================= */

/* ---------- GATE (non loggato) ---------- */
.gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.gate-card{width:100%;max-width:460px;text-align:center;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:44px 36px;box-shadow:var(--shadow-2);position:relative;overflow:hidden}
.gate-card::before{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,transparent 70%);opacity:.12;pointer-events:none}
.ag-stage{--size:72px;width:var(--size);height:var(--size);margin:0 auto 22px;position:relative}
.ag-mark{position:absolute;inset:0;border-radius:50%;background:var(--accent);font-size:0}
.ag-orbit{position:absolute;top:50%;left:50%;width:calc(var(--size) * .81);height:calc(var(--size) * .81);transform:translate(-50%,-50%);animation:ag-spin 6.5s linear infinite}
.ag-sphere{position:absolute;top:0;left:50%;width:11px;height:11px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 10px 1px rgba(255,255,255,.45)}
@keyframes ag-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.gate-card .eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.gate-card h1{font-size:24px;font-weight:700;letter-spacing:-.01em;margin:0 0 12px}
.gate-card .lead{font-size:14px;color:var(--ink-soft);line-height:1.6;margin:0 0 8px}
.gate-card .why{font-size:13px;color:var(--ink-mute);line-height:1.6;margin:18px 0 26px;padding:14px 16px;background:var(--bg-2);border-radius:var(--radius);text-align:left;border:1px solid var(--line-soft)}
.gate-card .why b{color:var(--ink-soft)}
.gate-card .btn{width:100%;justify-content:center}
.gate-foot{margin-top:18px;font-size:12px;color:var(--ink-mute)}
.gate-theme{position:fixed;top:16px;right:16px}

/* ---------- DASHBOARD ---------- */
.mt-team-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start;margin-top:26px}.mt-team-people{display:flex;flex-direction:column;gap:8px;position:sticky;top:130px}.mt-team-person{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--bg-1);color:var(--ink);text-decoration:none}.mt-team-person:hover,.mt-team-person.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--bg-1))}.mt-team-person span,.mt-team-person b,.mt-team-person small{display:block}.mt-team-person small{margin-top:4px;color:var(--ink-soft);font-size:12px}.mt-team-person i{font-size:24px;font-style:normal;color:var(--accent)}.mt-team-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 14px;padding:20px}.mt-team-head h2{margin:3px 0 6px;font-size:22px}.mt-team-head p{margin:0;color:var(--ink-soft);font-size:13px}.mt-team-types{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 14px;color:var(--ink-soft);font-size:12px}.mt-team-types span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:var(--bg-1)}.mt-team-appointment{display:grid;grid-template-columns:72px minmax(180px,1fr) minmax(130px,.6fr) auto;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:var(--bg-1);margin-bottom:8px}.mt-team-appointment time b,.mt-team-appointment time span,.mt-team-appointment div b,.mt-team-appointment div small{display:block}.mt-team-appointment time span,.mt-team-appointment div small{margin-top:3px;color:var(--ink-soft);font-size:12px}.mt-team-appointment em{font-size:11px;font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:var(--ok)}.mt-team-appointment.is-cancelled{opacity:.58}.mt-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}.mt-guide-grid article,.mt-guide-example{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--bg-1)}.mt-guide-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:800}.mt-guide-grid h2,.mt-guide-example h2{margin:16px 0 8px;font-size:18px}.mt-guide-grid p,.mt-guide-example p{margin:0;color:var(--ink-soft);line-height:1.65}.mt-guide-example{margin-bottom:20px;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--bg-1))}.mt-tour{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:rgba(4,8,8,.72);backdrop-filter:blur(8px)}.mt-tour-card{width:min(620px,100%);padding:30px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:24px;background:var(--bg-1);box-shadow:var(--shadow-2)}.mt-tour-progress{display:flex;gap:7px;margin-bottom:30px}.mt-tour-progress i{height:4px;flex:1;border-radius:99px;background:var(--line)}.mt-tour-progress i.is-on{background:var(--accent)}.mt-tour section{display:none;min-height:250px}.mt-tour section.is-on{display:block}.mt-tour-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border-radius:18px;background:var(--accent);color:var(--accent-ink);font-size:16px;font-weight:850}.mt-tour h2{margin:0 0 12px;font-size:28px;letter-spacing:-.025em}.mt-tour p{margin:0;color:var(--ink-soft);font-size:16px;line-height:1.65}.mt-tour-example{display:block;margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));font-size:13px;line-height:1.5}.mt-tour-actions{display:flex;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid var(--line)}.mt-tour-actions form{margin-left:auto}.mt-tour-actions [hidden]{display:none}
@media(max-width:850px){.mt-team-layout{grid-template-columns:1fr}.mt-team-people{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.mt-team-appointment{grid-template-columns:64px 1fr}.mt-team-appointment>span,.mt-team-appointment>em{grid-column:2}.mt-guide-grid{grid-template-columns:1fr}}@media(max-width:560px){.mt-team-people{grid-template-columns:1fr}.mt-team-head{flex-direction:column}.mt-team-head .mt-booking-actions{width:100%}.mt-tour-card{padding:22px}.mt-tour h2{font-size:23px}.mt-tour section{min-height:300px}}

.hero{border-radius:var(--radius-lg);border:1px solid var(--line);padding:24px;margin-bottom:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--ok) 6%,var(--bg-1)) 0%,var(--bg-1) 55%);display:flex;align-items:center;gap:24px;flex-wrap:wrap;position:relative;overflow:hidden}
.hero.is-warn{background:linear-gradient(135deg,color-mix(in srgb,var(--warn) 6%,var(--bg-1)) 0%,var(--bg-1) 55%);border-color:color-mix(in srgb,var(--warn) 30%,var(--line))}
.hero .ring{flex:0 0 96px;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--accent) calc(var(--p,0)*1%),var(--bg-2) 0)}
.hero .ring::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--bg-1)}
.hero .ring .val{position:relative;z-index:1;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;text-align:center}
.hero .ring .val small{display:block;font-size:9px;font-weight:600;letter-spacing:.1em;color:var(--ink-mute);text-transform:uppercase}
.hero .htxt{flex:1;min-width:240px}
.hero .heyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hero h1{margin:0 0 6px;font-size:24px;font-weight:700;letter-spacing:-.01em}
.hero .hsub{margin:0;font-size:14px;color:var(--ink-soft);line-height:1.55;max-width:460px}
.pgd-progress-breakdown{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.pgd-progress-breakdown span,.pgd-progress-breakdown a{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--card) 88%,transparent);color:var(--ink-soft);font-size:11px;line-height:1.25;text-decoration:none}.pgd-progress-breakdown b{color:var(--ink);font-size:12px;font-variant-numeric:tabular-nums}.pgd-progress-breakdown .is-ok{border-color:color-mix(in srgb,var(--ok,#198754) 35%,var(--line))}.pgd-progress-breakdown .is-warn{border-color:color-mix(in srgb,var(--warn,#b56b00) 45%,var(--line));background:color-mix(in srgb,var(--warn,#b56b00) 7%,var(--card))}.pgd-progress-breakdown a:hover{border-color:var(--accent);color:var(--ink)}
.hero .hcta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

.alert{margin-bottom:24px}

.sec{margin-bottom:36px}
.sec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
/* Header impilato: titolo sempre su una riga a sé, controlli sotto (coerente su
   ogni larghezza, non solo quando andrebbe a capo). */
.sec-head-stack{flex-direction:column;align-items:flex-start;gap:10px}
.sec-head h2{margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:10px}
.sec-head h2 .cnt{font-size:11px;font-weight:600;color:var(--ink-mute);background:var(--bg-2);border:1px solid var(--line);padding:2px 8px;border-radius:var(--radius-pill)}

.mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.pf-card .progress > i{background:var(--accent)}

.empty{text-align:center;padding:48px 24px;border:1.5px dashed var(--line);border-radius:var(--radius-lg);background:var(--bg-1);color:var(--ink-soft)}
.empty .ico{font-size:32px;margin-bottom:10px;opacity:.6}
.empty h4{margin:0 0 6px;font-size:15px;color:var(--ink);font-weight:600}
.empty p{margin:0;font-size:13px}

/* ---------- PLAYER MODULO ---------- */
.crumbs{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-mute);margin-bottom:18px;flex-wrap:wrap}
.crumbs a{color:var(--ink-mute)} .crumbs a:hover{color:var(--accent)} .crumbs .sep{opacity:.5}
.player{display:grid;grid-template-columns:1fr 280px;gap:28px;align-items:start}
@media (max-width:900px){.player{grid-template-columns:1fr}.player .side{order:-1}}
.mod-hero{margin-bottom:24px}
.mod-hero .eyebrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:10px}
.mod-hero h1{margin:0 0 12px;font-size:30px;font-weight:700;letter-spacing:-.015em;line-height:1.15}
.mod-hero .facts{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--ink-soft);align-items:center}
.mod-hero .facts .sep{width:3px;height:3px;background:var(--ink-mute);border-radius:50%}
.mod-progress{margin:18px 0 0;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;align-items:center;gap:14px}
.mod-progress .lab{font-size:12px;color:var(--ink-soft);white-space:nowrap}
.mod-progress .progress{flex:1}

.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}
.tab{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;border:none;background:transparent;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--t-fast),border-color var(--t-fast)}
.tab svg{width:15px;height:15px}.tab:hover{color:var(--ink)}
.tab[aria-selected="true"]{color:var(--accent);border-bottom-color:var(--accent)}
.tab .badge-mini{font-size:10px;padding:1px 6px;border-radius:999px;background:var(--bg-2);color:var(--ink-mute);font-weight:600}
.panel{display:none;padding-top:22px}.panel.is-active{display:block}

.pdf-stage{position:relative;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pdf-stage object,.pdf-stage iframe{width:100%;height:70vh;min-height:480px;border:none;display:block}
.pdf-empty{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--ink-mute);font-size:13px;text-align:center;padding:24px}
.pdf-empty .doc-ico{width:48px;height:48px;color:var(--accent)}

.video-stage{position:relative;aspect-ratio:16/9;background:#0a0a0a;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.video-stage iframe{width:100%;height:100%;border:none;display:block}
.video-empty{aspect-ratio:16/9;border:1.5px dashed var(--line);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ink-mute);font-size:13px;text-align:center;padding:24px}

/* prosa dispensa */
.reading{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px 36px}
.reading h1{font-size:24px;font-weight:700;letter-spacing:-.01em;margin:0 0 14px}
.reading h2{font-size:20px;font-weight:700;letter-spacing:-.01em;margin:26px 0 8px}
.reading h3{font-size:16px;font-weight:600;margin:22px 0 8px}
.reading p{font-size:15px;line-height:1.7;color:var(--ink-soft);margin:0 0 16px}
.reading strong{color:var(--ink);font-weight:600}
.reading ul,.reading ol{margin:0 0 16px;padding-left:22px;color:var(--ink-soft);font-size:15px;line-height:1.7}
.reading li{margin-bottom:6px}
.reading code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.88em;background:var(--bg-2);padding:2px 6px;border-radius:5px;border:1px solid var(--line-soft)}
.reading hr{border:none;border-top:1px solid var(--line);margin:24px 0}
.reading .lf-callout{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));padding:14px 18px;border-radius:0 var(--radius) var(--radius) 0;margin:20px 0;font-size:14px;color:var(--ink-soft)}
.reading .lf-table{width:100%;border-collapse:collapse;margin:18px 0;font-size:13px}
.reading .lf-table th{text-align:left;padding:9px 12px;border-bottom:2px solid var(--line);color:var(--ink);font-weight:600}
.reading .lf-table td{padding:9px 12px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft);vertical-align:top}

.quiz-cta{margin-top:28px;background:none;border-top:1px solid var(--line-soft);padding:18px 0 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.quiz-cta .qinfo{font-size:13px;color:var(--ink-soft)}
.quiz-cta .qinfo strong{color:var(--ink)}

.side{position:sticky;top:80px}
.side-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px}
.side-card h4{margin:0 0 12px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}
.side-list{display:flex;flex-direction:column;gap:2px}
.side-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);font-size:13px;color:var(--ink-soft);transition:background var(--t-fast)}
.side-item:hover{background:var(--bg-2)}
.side-item.is-current{background:var(--bg-2);color:var(--ink);font-weight:600}
.side-item .dot{flex:0 0 16px;width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;border:1.5px solid var(--line)}
.side-item .dot.done{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.side-item .dot.current{border-color:var(--accent)}
.side-item .dot.current::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}
.side-item .t{flex:1;line-height:1.3}

/* ---------- QUIZ ---------- */
.quiz-top{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg-0) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft)}
.quiz-top .inner{max-width:760px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.quiz-top .exit{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-soft);padding:6px 8px;border-radius:var(--radius)}
.quiz-top .exit:hover{background:var(--bg-2);color:var(--ink)} .quiz-top .exit svg{width:15px;height:15px}
.quiz-top .modtitle{font-size:13px;font-weight:600;color:var(--ink);text-align:center;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quiz-top .count{font-size:12px;color:var(--ink-mute);font-variant-numeric:tabular-nums;white-space:nowrap}
.quiz-steps{max-width:760px;margin:0 auto;padding:14px 24px 0}
.steps{display:flex;gap:6px}
.steps i{flex:1;height:4px;background:var(--bg-2);border-radius:999px}
.steps i.done{background:var(--accent)}
.steps i.current{background:linear-gradient(90deg,var(--accent) 50%,var(--bg-2) 50%)}
.quiz-main{max-width:760px;margin:0 auto;padding:28px 24px 140px}
.q-eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.q-text{font-size:23px;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin:0 0 6px}
.q-hint{font-size:13px;color:var(--ink-mute);margin:0 0 24px}
.answers{display:flex;flex-direction:column;gap:12px}
.q-nav{position:fixed;left:0;right:0;bottom:0;z-index:90;background:color-mix(in srgb,var(--bg-0) 90%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
.q-nav .inner{max-width:760px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.q-nav .saved{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-mute)}
.q-nav .saved svg{width:13px;height:13px;color:var(--ok)}
.q-nav .btns{display:flex;gap:10px}

/* ---------- RISULTATO ---------- */
.res-main{max-width:760px;margin:0 auto;padding:40px 24px 80px}
.res-hero{text-align:center;margin-bottom:36px}
.res-badge{margin-bottom:18px}
.res-ring{width:132px;height:132px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--bg-2) 0)}
.res-ring::after{content:"";position:absolute;inset:11px;border-radius:50%;background:var(--bg-0)}
.res-ring .v{position:relative;z-index:1;text-align:center}
.res-ring .v b{font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.res-ring .v small{display:block;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin-top:2px}
.res-hero h1{font-size:26px;font-weight:700;letter-spacing:-.01em;margin:0 0 8px}
.res-hero p{font-size:15px;color:var(--ink-soft);line-height:1.55;margin:0 auto;max-width:460px}
.res-stats{display:flex;justify-content:center;margin:28px 0 8px;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-1)}
.res-stats .s{flex:1;padding:16px 12px;text-align:center;border-right:1px solid var(--line-soft)}
.res-stats .s:last-child{border-right:none}
.res-stats .s b{display:block;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.res-stats .s span{font-size:11px;color:var(--ink-mute)}
.res-stats .s.ok b{color:var(--ok)} .res-stats .s.err b{color:var(--err)}
.review{margin-top:36px}
.review > h2{font-size:15px;font-weight:600;margin:0 0 14px;display:flex;align-items:center;gap:9px}
.review > h2 .n{font-size:11px;font-weight:700;background:color-mix(in srgb,var(--err) 16%,var(--bg-1));color:var(--err);border:1px solid var(--err);padding:2px 8px;border-radius:var(--radius-pill)}
.rev-item{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;margin-bottom:12px}
.rev-q{font-size:14px;font-weight:600;margin:0 0 14px;line-height:1.4}
.rev-a{display:flex;align-items:flex-start;gap:10px;font-size:13px;padding:10px 12px;border-radius:var(--radius);margin-bottom:8px;line-height:1.5}
.rev-a .ico{flex:0 0 18px;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;margin-top:1px}
.rev-a .lab{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.7;display:block;margin-bottom:2px}
.rev-a.yours{background:color-mix(in srgb,var(--err) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--err) 30%,var(--line))}
.rev-a.yours .ico{background:var(--err);color:var(--err-ink)}
.rev-a.correct{background:color-mix(in srgb,var(--ok) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok) 30%,var(--line))}
.rev-a.correct .ico{background:var(--ok);color:var(--ok-ink)}
.rev-why{margin-top:12px;font-size:13px;color:var(--ink-soft);line-height:1.6;border-left:3px solid var(--accent);padding:8px 14px;background:color-mix(in srgb,var(--accent) 5%,var(--bg-1));border-radius:0 var(--radius) var(--radius) 0}
.rev-why strong{color:var(--ink)}
.res-cta{display:flex;gap:12px;justify-content:center;margin-top:36px;flex-wrap:wrap}

/* ---------- ATTESTATO (stampa) ---------- */
.cert-actions{max-width:840px;margin:24px auto 0;padding:0 24px;display:flex;justify-content:space-between;gap:12px}
.cert-sheet{max-width:840px;margin:18px auto 60px;padding:0 24px}
.cert-doc{background:var(--bg-1);border:1px solid var(--accent-soft);border-radius:var(--radius-lg);padding:54px 56px;text-align:center;position:relative;overflow:hidden}
.cert-doc::before{content:"";position:absolute;right:-70px;top:-70px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,transparent 70%);opacity:.12;pointer-events:none}
.cert-top{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:26px}
.cert-org{font-weight:700;font-size:16px}
.cert-eyebrow2{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:24px}
.cert-intro{font-size:14px;color:var(--ink-mute);margin:0 0 6px}
.cert-name{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:0 0 14px}
.cert-body{font-size:14px;color:var(--ink-soft);margin:0 0 4px}
.cert-mod{font-size:22px;font-weight:600;margin:0 0 14px;color:var(--ink)}
.cert-score{font-size:14px;color:var(--ink-soft);margin:0 0 34px}
.cert-foot2{display:flex;justify-content:center;gap:40px;border-top:1px solid var(--line);padding-top:22px}
.cert-foot2 span{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:3px}
.cert-foot2 b{font-size:14px;font-variant-numeric:tabular-nums}
/* Stampa = copia esatta dello schermo: forza la resa di sfondi/colori, nasconde solo la toolbar */
/* Attestato in stampa: foglio ORIZZONTALE, card a tutta pagina e centrata, copia esatta dei colori */
@media print{
  /* SOLO il certificato/attestato: foglio orizzontale + grafica avorio mantenuta. */
  .no-print{display:none!important}
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  @page cert{size:A4 landscape;margin:0}
  html,body{height:100%}
  .cert-sheet{margin:0;padding:0;min-height:100vh;display:flex;align-items:center;justify-content:center;page:cert}
  .cert-doc{width:100%;max-width:none;min-height:92vh;margin:0;display:flex;flex-direction:column;justify-content:center;border-radius:0}
}

/* Meeting: creazione immediata di un appuntamento gia' concordato. */
.mt-direct-page{position:relative;max-width:none;min-height:calc(100dvh - 122px);padding:20px!important}
.mt-direct-dialog{--mtw-accent:#00e7d2;--mtw-accent-hover:#00cdbb;--mtw-ink:#06110f;--accent:var(--mtw-accent);--accent-ink:var(--mtw-ink);position:fixed;inset:0;z-index:1200;width:min(900px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 36px);margin:auto;padding:0;overflow:visible;border:0;background:transparent;color:var(--text)}
.mt-direct-dialog::backdrop{background:rgba(2,5,5,.76);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mt-direct-dialog[open]{display:block}
body.mt-direct-dialog-open{overflow:hidden}
.mt-direct-dialog .mt-direct-dialog-shell{width:100%;height:calc(100dvh - 36px);max-height:calc(100dvh - 36px);grid-template-rows:minmax(0,1fr);align-items:stretch}
.mt-direct-wizard-main{height:100%;max-height:100%;min-height:0;overflow:hidden}
.mt-direct-notice{margin:0 20px 10px;display:grid;gap:3px}.mt-direct-notice strong{font-size:14px}.mt-direct-notice span{line-height:1.45}.mt-direct-notice small{opacity:.78}.mt-direct-empty{margin:18px 20px}
.mt-direct-force-notice{background:color-mix(in srgb,var(--warn) 11%,var(--bg-1));border-color:color-mix(in srgb,var(--warn) 52%,var(--line));box-shadow:0 10px 28px color-mix(in srgb,var(--warn) 9%,transparent)}.mt-direct-force-notice strong{color:var(--warn)}.mt-direct-force-notice span b{color:var(--text)}
.mt-direct-card{display:flex;min-height:0;flex:1 1 auto;overflow:hidden;border:0;border-radius:0;background:var(--bg-1);box-shadow:none}
.mt-direct-main,.mt-direct-side{display:flex;width:100%;min-height:0;flex-direction:column;gap:13px;padding:16px 20px 20px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-bottom:20px}
.mt-direct-main[hidden],.mt-direct-side[hidden]{display:none}
.mt-direct-side{border:0;background:var(--bg-1)}
.mt-direct-section-head{display:flex;align-items:center;gap:12px}
.mt-direct-section-head>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--mtw-accent);color:var(--mtw-ink);font-size:12px;font-weight:900}
.mt-direct-section-head h2{margin:0;font-size:19px;line-height:1.1}
.mt-direct-section-head p{margin:3px 0 0;color:var(--muted);font-size:11px}
.mt-direct-card label,.mt-direct-card legend{color:var(--text);font-size:11px;font-weight:800}
.mt-direct-card label>small,.mt-direct-card legend small{color:var(--muted);font-weight:600}
.mt-direct-card .mt-in{width:100%;min-height:42px;margin-top:6px;border:1.5px solid color-mix(in srgb,var(--ink) 23%,var(--line));border-radius:11px;background:var(--bg-1)}
.mt-direct-card .mt-in:focus{outline:3px solid color-mix(in srgb,var(--mtw-accent) 20%,transparent);border-color:var(--mtw-accent)}
.mt-direct-title input{font-size:15px;font-weight:750}
.mt-direct-types,.mt-direct-internals{margin:0;padding:0;border:0}
.mt-direct-types>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:7px}
.mt-direct-types label,.mt-direct-internals label{position:relative;cursor:pointer}
.mt-direct-types input,.mt-direct-internals input{position:absolute;opacity:0;pointer-events:none}
.mt-direct-types label>span{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:9px;min-height:62px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.mt-direct-types label>span>i{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;align-self:center;border-radius:10px;background:color-mix(in srgb,var(--mt-type-color) 14%,transparent);color:var(--mt-type-color);font-style:normal}.mt-direct-types label>span>i svg{width:18px;height:18px}
.mt-direct-types label>span>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.mt-direct-types label>span>small{color:var(--muted);font-size:9px;font-weight:550}
.mt-direct-types label>span>em{display:none;grid-column:3;grid-row:1/3;align-self:center;font-style:normal}
.mt-direct-types input:checked+span,.mt-direct-internals input:checked+span{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--bg-2))}
.mt-direct-types input:checked+span>em,.mt-direct-internals input:checked+span>em{display:block;color:var(--primary)}
.mt-direct-when{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mt-direct-date-control{display:block;margin-top:6px}
.mt-direct-date-control button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:42px;padding:0 13px;border:1.5px solid color-mix(in srgb,var(--ink) 23%,var(--line));border-radius:11px;background:var(--bg-1);color:var(--muted);font:inherit;font-weight:800;text-align:left;cursor:pointer}
.mt-direct-date-control button:hover,.mt-direct-date-control button:focus-visible,.mt-direct-date-control button[aria-expanded="true"]{outline:0;border-color:var(--mtw-accent);color:var(--mtw-accent);background:color-mix(in srgb,var(--mtw-accent) 8%,var(--bg-1))}
.mt-direct-date-control button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mt-direct-date-control svg{width:18px;height:18px}
.mt-direct-busy-calendar{position:relative;display:grid;gap:7px;padding:10px;border:1px solid color-mix(in srgb,var(--mtw-accent) 30%,var(--line));border-radius:13px;background:var(--bg-1);box-shadow:0 14px 32px rgba(0,0,0,.18)}
.mt-direct-busy-calendar[hidden]{display:none!important}
.mt-direct-busy-calendar>header{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:7px}
.mt-direct-busy-calendar>header b{text-align:center;font-size:11px;text-transform:capitalize}
.mt-direct-busy-calendar>header button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);color:var(--text);font-size:20px;line-height:1;cursor:pointer}
.mt-direct-busy-calendar>header button:disabled{opacity:.28;cursor:default}
.mt-direct-calendar-weekdays,.mt-direct-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.mt-direct-calendar-weekdays span{color:var(--muted);font-size:8px;font-weight:850;text-align:center;text-transform:uppercase}
.mt-direct-calendar-grid>span{min-height:28px}
.mt-direct-calendar-grid>button{position:relative;display:grid;place-items:center;min-width:0;height:30px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:10px;font-weight:750;cursor:pointer}
.mt-direct-calendar-grid>button:hover,.mt-direct-calendar-grid>button:focus-visible{outline:0;border-color:var(--mtw-accent);background:color-mix(in srgb,var(--mtw-accent) 8%,var(--bg-2))}
.mt-direct-calendar-grid>button.has-free{color:var(--mtw-accent)}
.mt-direct-calendar-grid>button.has-busy:after{content:"";position:absolute;right:4px;bottom:3px;width:4px;height:4px;border-radius:50%;background:var(--warn)}
.mt-direct-calendar-grid>button.is-selected{border-color:var(--mtw-accent);background:var(--mtw-accent);color:var(--mtw-ink)}
.mt-direct-calendar-grid>button.is-selected:after{background:var(--mtw-ink)}
.mt-direct-calendar-grid>button:disabled{opacity:.24;cursor:default}
.mt-direct-calendar-grid>p{grid-column:1/-1;margin:8px 0;color:var(--muted);font-size:10px;text-align:center}
.mt-direct-slot-popover{position:absolute;z-index:5;right:10px;bottom:calc(100% - var(--mt-direct-slot-anchor-top,0px));left:10px;display:grid;max-height:calc(100% - 56px);gap:8px;overflow:auto;padding:11px;border:1.5px solid color-mix(in srgb,var(--mtw-accent) 58%,var(--line));border-radius:12px;background:var(--bg-2);box-shadow:0 18px 44px rgba(0,0,0,.58);color:var(--ink);isolation:isolate}
.mt-direct-slot-popover[hidden]{display:none!important}
.mt-direct-slot-popover>header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mt-direct-slot-popover>header>div{display:grid;min-width:0;gap:2px}.mt-direct-slot-popover>header span{color:var(--mtw-accent);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.mt-direct-slot-popover>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;text-transform:capitalize}
.mt-direct-slot-popover>header button{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--bg-1);color:var(--ink-soft);font-size:16px;line-height:1;cursor:pointer}
.mt-direct-slot-popover>header button:hover,.mt-direct-slot-popover>header button:focus-visible{outline:0;background:color-mix(in srgb,var(--mtw-accent) 12%,transparent);color:var(--mtw-accent)}
.mt-direct-slot-help{margin:0;color:var(--ink-soft);font-size:9px;line-height:1.35}
.mt-direct-slot-popover>[data-mt-direct-slot-list]{display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:6px;min-height:0}
.mt-direct-slot-popover>[data-mt-direct-slot-list]>button{min-width:0;height:31px;padding:0 7px;border:1px solid var(--line);border-radius:8px;background:var(--bg-1);color:var(--ink);font:inherit;font-size:10px;font-weight:850;cursor:pointer}
.mt-direct-slot-popover>[data-mt-direct-slot-list]>button:hover,.mt-direct-slot-popover>[data-mt-direct-slot-list]>button:focus-visible,.mt-direct-slot-popover>[data-mt-direct-slot-list]>button.is-selected{outline:0;border-color:var(--mtw-accent);background:color-mix(in srgb,var(--mtw-accent) 12%,var(--bg-2));color:var(--mtw-accent)}
.mt-direct-slot-popover>p[data-mt-direct-slot-empty]{margin:0;padding:8px;border-radius:8px;background:var(--bg-1);color:var(--ink-soft);font-size:10px;line-height:1.4}
.mt-direct-busy-calendar>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:7px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}
.mt-direct-busy-calendar>footer>span{display:flex;align-items:center;gap:5px;white-space:nowrap}.mt-direct-busy-calendar>footer i{width:5px;height:5px;border-radius:50%;background:var(--warn)}
.mt-direct-busy-calendar>footer b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:9px;text-align:right}
.mt-direct-time-status{margin:-2px 0 0;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);color:var(--muted);font-size:10px;font-weight:650}
.mt-direct-time-status.is-free{border-color:color-mix(in srgb,var(--ok) 42%,var(--line));background:color-mix(in srgb,var(--ok) 7%,var(--bg-2));color:var(--ok)}
.mt-direct-time-status.is-busy{border-color:color-mix(in srgb,var(--warn) 48%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--bg-2));color:var(--warn)}
.mt-direct-time-status.is-loading{color:var(--mtw-accent)}
.mt-direct-address[hidden]{display:none}
.mt-direct-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin-top:8px}
.mt-direct-add .mt-in{margin:0}
.mt-direct-email-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.mt-direct-email-list>span{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:7px 9px 7px 12px;border:1px solid color-mix(in srgb,var(--primary) 52%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--bg-2));color:var(--text)}
.mt-direct-email-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.mt-direct-email-list button{display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}
.mt-direct-external>p{margin:8px 0 0;color:var(--err);font-size:12px;font-weight:700}
.mt-direct-clients{position:relative;display:grid;gap:8px}
.mt-direct-clients>label{display:block}
.mt-direct-client-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.mt-direct-client-search .mt-in{margin:0}
.mt-direct-client-search button{height:38px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2);color:var(--text);font-size:11px;font-weight:800;cursor:pointer}
.mt-direct-client-search button:hover,.mt-direct-client-search button:focus-visible{border-color:var(--primary);color:var(--primary)}
.mt-direct-client-list{position:relative;z-index:1;display:grid;min-width:0;width:100%;max-height:238px;overflow:auto;padding:6px;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--line));border-radius:13px;background:var(--panel);box-shadow:0 12px 30px rgba(0,0,0,.2)}
.mt-direct-client-list[hidden],.mt-direct-client-selected[hidden],[data-mt-direct-new-client][hidden]{display:none!important}
.mt-direct-client-list>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:45px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.mt-direct-client-list>button:hover,.mt-direct-client-list>button:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--bg-2))}
.mt-direct-client-list>button span{display:grid;min-width:0;gap:1px}.mt-direct-client-list>button b,.mt-direct-client-list>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-direct-client-list>button small{color:var(--muted);font-size:10px}.mt-direct-client-list>button em{color:var(--primary);font-size:10px;font-style:normal;font-weight:800}
.mt-direct-client-list>p{margin:0;padding:10px;color:var(--muted);font-size:11px;text-align:center}
.mt-direct-client-selected{display:grid;gap:8px;padding:10px;border:1px solid color-mix(in srgb,var(--primary) 44%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--primary) 7%,var(--bg-2))}
.mt-direct-client-selected>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.mt-direct-client-selected>header span{display:grid;gap:1px}.mt-direct-client-selected>header small,.mt-direct-client-selected>header em{color:var(--muted);font-size:9px;font-style:normal}.mt-direct-client-selected>header b{font-size:13px}
.mt-direct-client-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.mt-direct-client-contacts>label{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);cursor:pointer}
.mt-direct-client-contacts>label span{display:grid;min-width:0}.mt-direct-client-contacts b,.mt-direct-client-contacts small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-direct-client-contacts b{font-size:10px}.mt-direct-client-contacts small{color:var(--muted);font-size:9px;font-weight:550}
.mt-direct-attach-client{display:flex;align-items:center;gap:9px;padding-top:8px;border-top:1px solid var(--line);cursor:pointer}.mt-direct-attach-client>span{display:grid;gap:1px}.mt-direct-attach-client b{font-size:10px}.mt-direct-attach-client small{color:var(--muted);font-size:9px;font-weight:550}
.mt-direct-save-client{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2);cursor:pointer}
.mt-direct-save-client>span{display:grid;gap:2px}.mt-direct-save-client small{color:var(--muted);font-size:10px;font-weight:550}
.mt-direct-client-name[hidden]{display:none}
.mt-wizard-client-picker{margin:0 0 18px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 82%,transparent);overflow:hidden}
.mt-wizard-client-picker>summary{cursor:pointer;list-style:none;padding:13px 16px;font-weight:800;color:var(--text)}
.mt-wizard-client-picker>summary::-webkit-details-marker{display:none}
.mt-wizard-client-picker>summary:after{content:'+';float:right;color:var(--primary);font-size:20px;line-height:1}
.mt-wizard-client-picker[open]>summary:after{content:'−'}
.mt-wizard-client-picker>div{max-height:190px;overflow:auto;padding:0 12px 12px;display:grid;gap:10px}
.mt-wizard-client-picker section{display:grid;grid-template-columns:minmax(110px,.38fr) 1fr;gap:12px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:14px}
.mt-wizard-client-picker section>b{padding:8px 5px;font-size:13px}
.mt-wizard-client-picker section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.mt-wizard-client-picker button{border:1px solid var(--line);border-radius:11px;background:var(--bg-2);color:var(--text);padding:8px 10px;text-align:left;display:grid;gap:2px;cursor:pointer}
.mt-wizard-client-picker button:hover,.mt-wizard-client-picker button:focus-visible,.mt-wizard-client-picker button.is-added{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--bg-2))}
.mt-wizard-client-picker button span{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-wizard-client-picker button small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-wizard-client-picker.is-group{margin-bottom:14px}
.mt-addressbook-picker{position:relative;display:grid;gap:8px;margin:0 0 16px;padding:10px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 82%,transparent)}
.mt-addressbook-picker>label,.mt-addressbook-picker>[data-mt-direct-addressbook-panel]{display:grid;gap:6px;margin:0}
.mt-addressbook-picker .mt-in{width:100%;min-height:40px}
.mt-addressbook-switch{display:inline-flex;justify-self:start;gap:3px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2)}
.mt-addressbook-switch button{min-height:30px;padding:5px 12px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:10px;font-weight:800;cursor:pointer}
.mt-addressbook-switch button:hover,.mt-addressbook-switch button:focus-visible{color:var(--text)}
.mt-addressbook-switch button.is-active{background:var(--primary);color:var(--primary-ink)}
.mt-addressbook-results{position:absolute;z-index:20;top:calc(100% - 3px);right:10px;left:10px;display:grid;gap:4px;max-height:230px;padding:6px;overflow:auto;border:1px solid color-mix(in srgb,var(--primary) 48%,var(--line));border-radius:13px;background:var(--panel);box-shadow:0 16px 38px rgba(0,0,0,.26)}
.mt-addressbook-results[hidden],.mt-addressbook-picker [data-mt-direct-addressbook-panel][hidden]{display:none!important}
.mt-addressbook-results>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:45px;padding:7px 10px;border:1px solid transparent;border-radius:10px;background:var(--bg-2);color:var(--text);text-align:left;cursor:pointer}
.mt-addressbook-results>button:hover,.mt-addressbook-results>button:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--bg-2))}
.mt-addressbook-results>button span{display:grid;min-width:0;gap:2px}.mt-addressbook-results>button b,.mt-addressbook-results>button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-addressbook-results>button b{font-size:11px}.mt-addressbook-results>button small{color:var(--muted);font-size:9px}.mt-addressbook-results>button em{flex:0 0 auto;color:var(--primary);font-size:9px;font-style:normal;font-weight:850}
.mt-addressbook-empty{margin:0;padding:11px;color:var(--muted);font-size:10px;text-align:center}
.mt-addressbook-picker.is-direct{margin:2px 0 10px}.mt-addressbook-picker.is-direct .mt-direct-clients{margin:0;padding:0;border:0;background:transparent}.mt-addressbook-picker.is-direct .mt-addressbook-results{top:auto;margin-top:5px}
.mt-direct-internals>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:7px}
.mt-direct-internals label>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 7px;min-height:52px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.mt-direct-internals b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.mt-direct-internals small{grid-column:1;color:var(--muted);font-size:9px;font-weight:550}
.mt-direct-internals em{display:none;grid-column:2;grid-row:1/3;align-self:center;font-style:normal}
.mt-direct-owner{display:flex;justify-content:space-between;gap:15px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.mt-direct-owner span{color:var(--muted);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.mt-direct-owner b{font-size:11px}
.mt-direct-step-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:auto;padding-top:2px}.mt-direct-step-actions .btn{min-width:116px}.mt-direct-step-actions .btn-primary{background:var(--mtw-accent);border-color:var(--mtw-accent);color:var(--mtw-ink)}.mt-direct-step-actions .btn-primary:hover{background:var(--mtw-accent-hover);border-color:var(--mtw-accent-hover);color:var(--mtw-ink)}
.mt-direct-submit{margin:0}
@media(max-width:700px){.mt-direct-page{padding:8px!important}.mt-direct-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.mt-direct-dialog .mt-direct-dialog-shell{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);grid-template-rows:auto minmax(0,1fr)}.mt-direct-main,.mt-direct-side{padding:12px 14px 14px}.mt-direct-types>div,.mt-direct-internals>div,.mt-direct-when,.mt-direct-client-contacts{grid-template-columns:1fr 1fr}.mt-direct-step-actions .btn{min-width:94px}.mt-wizard-client-picker section{grid-template-columns:1fr}.mt-wizard-client-picker section>div{grid-template-columns:1fr}.mt-addressbook-picker{padding:8px}.mt-addressbook-switch{width:100%}.mt-addressbook-switch button{flex:1}.mt-addressbook-results{right:8px;left:8px;max-height:190px}}
@media(max-width:430px){.mt-direct-types>div,.mt-direct-internals>div,.mt-direct-when,.mt-direct-client-contacts{grid-template-columns:1fr}.mt-direct-busy-calendar>footer{align-items:flex-start;flex-direction:column}.mt-direct-busy-calendar>footer b{width:100%;white-space:normal;text-align:left}.mt-direct-step-actions{align-items:stretch}.mt-direct-step-actions .btn{flex:1;min-width:0}}

/* ---------- ATTESTATI lista ---------- */
.att-head{margin-bottom:28px}
.att-head h1{font-size:28px;font-weight:700;letter-spacing:-.01em;margin:0 0 8px}
.att-head p{font-size:14px;color:var(--ink-soft);margin:0;max-width:560px;line-height:1.55}
.att-global{margin-bottom:36px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--bg-1)) 0%,var(--bg-1) 70%);border:1px solid var(--accent-soft);border-radius:var(--radius-lg);padding:26px;display:flex;align-items:center;gap:26px;position:relative;overflow:hidden;flex-wrap:wrap}
.att-global.ready{border-color:var(--ok)}
.att-global .seal{flex:0 0 88px;width:88px;height:88px;border-radius:50%;border:3px solid var(--accent);background:var(--bg-0);display:flex;align-items:center;justify-content:center;color:var(--accent)}
.att-global .seal svg{width:42px;height:42px}
.att-global .gtxt{flex:1;min-width:240px}
.att-global .geyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.att-global h2{font-size:21px;font-weight:700;letter-spacing:-.01em;margin:0 0 8px}
.att-global .gmeta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--ink-mute)}
.att-global .gmeta b{color:var(--ink-soft);font-weight:600}
.att-sec{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 16px}
.certs{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.cert-card{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 6%,var(--bg-1)) 0%,var(--bg-1) 80%);border:1px solid var(--accent-soft);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden}
.cert-card.locked{opacity:.6;background:var(--bg-1);border-color:var(--line)}
.cert-card .cert-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.cert-card .cert-eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700}
.cert-card.locked .cert-eyebrow{color:var(--ink-mute)}
.cert-card .cert-title{font-size:15px;font-weight:600;margin:4px 0 0}
.cert-card .cert-meta{font-size:11px;color:var(--ink-mute);margin-top:4px}
.cert-card .cert-seal{width:44px;height:44px;border-radius:50%;border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:16px;font-weight:700;background:var(--bg-0);flex:0 0 44px}
.cert-card.locked .cert-seal{border-color:var(--line);color:var(--ink-mute)}
.cert-card .cert-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}
.cert-card .code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;color:var(--ink-mute);background:var(--bg-2);padding:2px 7px;border-radius:5px;border:1px solid var(--line-soft)}

/* ---------- IMMAGINI nel testo (illustrazioni) ---------- */
.reading .lf-figure{margin:22px 0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);background:var(--bg-2)}
.reading .lf-figure img{display:block;width:100%;height:auto}
.reading .lf-figure figcaption{font-size:12px;color:var(--ink-mute);padding:8px 14px;text-align:center}
.reading .lf-inline-img{max-width:100%;height:auto;border-radius:var(--radius);vertical-align:middle}
/* rete di sicurezza: se WP rimette le emoji-immagine, restano grandi come il testo */
.reading img.emoji{display:inline-block;width:1em;height:1em;margin:0 .07em;vertical-align:-.12em;border:none;background:none;box-shadow:none}

/* ---------- INFOGRAFICHE in codice ---------- */
.reading .lf-info{margin:24px 0}
.reading .lf-info-cap{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;text-align:center}
.lf-info-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){.lf-info-cols{grid-template-columns:1fr}}
.lf-info-col{border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;background:var(--bg-1)}
.lf-info-col.good{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 6%,var(--bg-1))}
.lf-info-col.bad{border-color:color-mix(in srgb,var(--warn) 45%,var(--line));background:color-mix(in srgb,var(--warn) 6%,var(--bg-1))}
.lf-info-h{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:var(--ink);margin-bottom:12px}
.lf-info-h svg{width:20px;height:20px;flex:0 0 20px}
.lf-info-col.good .lf-info-h svg{color:var(--ok)}
.lf-info-col.bad .lf-info-h svg{color:var(--warn)}
.lf-info-col ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.lf-info-col li{position:relative;padding-left:20px;font-size:13px;line-height:1.5;color:var(--ink-soft)}
.lf-info-col li::before{content:"";position:absolute;left:2px;top:7px;width:7px;height:7px;border-radius:50%}
.lf-info-col.good li::before{background:var(--ok)}
.lf-info-col.bad li::before{background:var(--warn)}

/* infografica: 3 pilastri / passi */
.lf-info-prow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:640px){.lf-info-prow{grid-template-columns:1fr}}
.lf-info-pillar{border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;background:var(--bg-1);position:relative}
.lf-info-num{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:14px;margin-bottom:10px}
.lf-info-pillar b{display:block;font-size:14px;color:var(--ink);margin-bottom:6px}
.lf-info-pillar p{margin:0;font-size:12.5px;line-height:1.55;color:var(--ink-soft)}

/* infografica: timeline verticale */
.lf-tl{list-style:none;margin:0;padding:0 0 0 6px;position:relative}
.lf-tl::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:var(--line)}
.lf-tl-item{position:relative;padding:0 0 18px 34px;min-height:24px}
.lf-tl-item:last-child{padding-bottom:0}
.lf-tl-dot{position:absolute;left:4px;top:2px;width:16px;height:16px;border-radius:50%;background:var(--bg-1);border:2px solid var(--line)}
.lf-tl-item.on .lf-tl-dot{border-color:var(--accent);background:var(--accent)}
.lf-tl-date{display:block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.lf-tl-item:not(.on) .lf-tl-date{color:var(--ink-mute)}
.lf-tl-text{display:block;font-size:13.5px;line-height:1.5;color:var(--ink-soft);margin-top:2px}

/* ---------- LOCK: un solo modulo avviato per volta ---------- */
.player.pf-locked{filter:saturate(.55);opacity:.45;pointer-events:none;user-select:none}
.pf-modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,var(--bg-0) 55%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:pf-fade .18s ease}
@keyframes pf-fade{from{opacity:0}to{opacity:1}}
.pf-modal{width:100%;max-width:440px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:30px 28px;text-align:center;animation:pf-pop .2s cubic-bezier(.2,.8,.3,1)}
@keyframes pf-pop{from{transform:translateY(8px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.pf-modal-ico{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--warn) 14%,var(--bg-1));color:var(--warn)}
.pf-modal-ico svg{width:26px;height:26px}
.pf-modal h2{margin:0 0 10px;font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.pf-modal p{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--ink-soft)}
.pf-modal .pf-modal-q{margin-top:12px;color:var(--ink)}
.pf-modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:22px}
.pf-modal-actions form{margin:0}
.pf-modal-actions .btn{width:100%;justify-content:center}

/* infografica: griglia di carte con icona */
.lf-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.lf-card{border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;background:var(--bg-1)}
.lf-card-ico{display:inline-flex;width:34px;height:34px;border-radius:10px;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,var(--bg-1));color:var(--accent);margin-bottom:10px}
.lf-card-ico svg{width:18px;height:18px}
.lf-card b{display:block;font-size:13.5px;color:var(--ink);margin-bottom:5px}
.lf-card p{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-soft)}

/* infografica: flow a passi numerati */
.lf-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:14px}
.lf-step{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;background:var(--bg-1)}
.lf-step-n{display:inline-flex;width:26px;height:26px;border-radius:50%;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:13px;margin-bottom:10px}
.lf-step b{display:block;font-size:13.5px;color:var(--ink);margin-bottom:5px}
.lf-step p{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-soft)}
@media (min-width:641px){.lf-flow .lf-step:not(:last-child)::after{content:"›";position:absolute;right:-11px;top:50%;transform:translateY(-50%);color:var(--ink-mute);font-size:22px;line-height:1;z-index:1}}

/* infografica: checklist (spunta/crocetta) */
.lf-checklist{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lf-checklist li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;color:var(--ink-soft);border:1px solid var(--line-soft);border-radius:var(--radius);padding:10px 12px;background:var(--bg-1)}
.lf-ck-ico{flex:0 0 auto;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
.lf-ck-ico svg{width:13px;height:13px}
.lf-checklist li.is-ok .lf-ck-ico{background:color-mix(in srgb,var(--ok) 16%,var(--bg-1));color:var(--ok)}
.lf-checklist li.is-no .lf-ck-ico{background:color-mix(in srgb,var(--warn) 16%,var(--bg-1));color:var(--warn)}

/* ============================================================
   GESTIONE (admin) /formazione/gestione/
   ============================================================ */
.mg-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}
.mg-head h1{margin:0 0 4px;font-size:24px;font-weight:700;letter-spacing:-.01em}
.mg-sub{margin:0;font-size:13.5px;color:var(--ink-soft);max-width:560px;line-height:1.5}
.mg-tabs{display:flex;gap:4px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:4px}
.mg-tabs a{font-size:13px;font-weight:600;color:var(--ink-soft);padding:7px 14px;border-radius:var(--radius-pill);text-decoration:none;transition:background var(--t-fast),color var(--t-fast)}
.mg-tabs a:hover{color:var(--ink)}
.mg-tabs a.is-active{background:var(--bg-1);color:var(--accent);box-shadow:var(--shadow-1)}

.mg-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:30px}
.mg-stat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px}
.mg-stat .n{display:block;font-size:30px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.mg-stat .l{display:block;font-size:12px;color:var(--ink-mute);margin-top:2px}
.mg-stat.is-warn .n{color:var(--warn)}

.mg-tablewrap{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:auto}
.mg-table{width:100%;border-collapse:collapse;font-size:13.5px}
.mg-table th{text-align:left;padding:12px 16px;border-bottom:2px solid var(--line);color:var(--ink-mute);font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.mg-table td{padding:12px 16px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft);vertical-align:middle}
.mg-table tbody tr:last-child td{border-bottom:none}
.mg-table tbody tr:hover{background:var(--bg-2)}
/* Tabelle Utenti: larghezze colonne fisse e identiche fra tutte le categorie,
   così "Conformità" e azioni cadono sempre alla stessa x (anche la Dirigenza). */
.ut-table{table-layout:fixed}
.ut-table th:nth-child(2),.ut-table td:nth-child(2){width:340px}
.ut-table th:nth-child(3),.ut-table td:nth-child(3){width:130px}
.ut-table td:first-child .mg-person-tx{min-width:0}
.ut-table td:first-child b{overflow:hidden;text-overflow:ellipsis}
.mg-rowact{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}
.mg-rowact .btn{vertical-align:middle}
.mg-inlineform{display:inline-flex;margin:0}
/* Tabelle larghe: scroll orizzontale pulito invece di tagliare il contenuto */
.mg-tablewrap{-webkit-overflow-scrolling:touch}
.mg-table th,.mg-table td{vertical-align:middle}

.mg-person{display:flex;align-items:center;gap:10px}
.mg-ava{flex:0 0 auto;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,var(--bg-1));color:var(--accent);font-weight:700;font-size:13px}
.mg-person b{display:block;color:var(--ink);font-weight:600}
.mg-person small{display:block;color:var(--ink-mute);font-size:11.5px}

.mg-chip{display:inline-block;white-space:nowrap;font-size:11px;font-weight:600;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 9px;margin:2px 3px 2px 0}
.mg-chip.is-base{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--bg-1))}

.mg-prog{display:flex;align-items:center;gap:10px;min-width:120px}
.mg-prog .bar{flex:1;height:6px;border-radius:999px;background:var(--bg-2);overflow:hidden}
.mg-prog .bar i{display:block;height:100%;background:var(--accent);border-radius:999px}
.mg-prog .t{font-size:12px;color:var(--ink-mute);font-variant-numeric:tabular-nums;white-space:nowrap}
.mg-mute{color:var(--ink-mute)}
.mg-exp{color:var(--warn);font-weight:600}
.mg-code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;background:var(--bg-2);padding:2px 7px;border-radius:6px;border:1px solid var(--line-soft)}

.mg-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.mg-search{flex:1;min-width:220px;max-width:340px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:9px 14px;font:inherit;font-size:13.5px;color:var(--ink)}
.mg-search:focus{outline:none;border-color:var(--accent)}
.mg-notice{background:color-mix(in srgb,var(--ok) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok) 35%,var(--line));color:var(--ink);border-radius:var(--radius);padding:11px 16px;font-size:13.5px;margin-bottom:18px}
.mg-formfoot{margin-top:24px;padding-top:18px;display:flex;justify-content:flex-end;border-top:1px solid var(--line-soft)}

/* checkbox custom (no UI nativa) */
.mg-roles .mg-rolecol{text-align:center}
.mg-check{display:inline-flex;cursor:pointer}
.mg-check input{position:absolute;opacity:0;width:0;height:0}
.mg-check .box{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line);background:var(--bg-1);display:grid;place-items:center;transition:background var(--t-fast),border-color var(--t-fast)}
.mg-check .box svg{width:14px;height:14px;color:#fff;opacity:0;transform:scale(.6);transition:opacity var(--t-fast),transform var(--t-fast)}
.mg-check input:checked + .box{background:var(--accent);border-color:var(--accent)}
.mg-check input:checked + .box svg{opacity:1;transform:none;color:var(--accent-ink)}
.mg-check input:focus-visible + .box{outline:2px solid var(--accent);outline-offset:2px}

/* dossier stampabile */
.mg-doc-actions{display:flex;gap:10px;justify-content:center;padding:18px}
.mg-sheet{display:flex;justify-content:center;padding:0 16px 40px}
.mg-doc{width:100%;max-width:820px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:44px 48px;box-shadow:var(--shadow-2)}
.mg-doc-top{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px}
.mg-doc-brand{display:flex;align-items:center;gap:12px}
.mg-doc-brand .mark{width:34px;height:34px;border-radius:50%;background:var(--accent);position:relative}
.mg-doc-brand .mark::after{content:"";position:absolute;top:50%;right:15%;transform:translateY(-50%);width:28%;height:28%;border-radius:50%;background:#fff}
.mg-doc-brand b{display:block;font-size:14px;color:var(--ink)}
.mg-doc-brand small{display:block;font-size:11px;color:var(--ink-mute);letter-spacing:.04em;text-transform:uppercase}
.mg-doc-date{font-size:12px;color:var(--ink-mute)}
.mg-doc-h1{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0 0 18px}
.mg-doc-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px;margin-bottom:26px}
.mg-doc-meta>div span{display:block;font-size:11px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}
.mg-doc-meta>div b{font-size:14px;color:var(--ink);font-weight:600}
.mg-doc-h2{font-size:14px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}
.mg-doc-table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:24px}
.mg-doc-table th{text-align:left;padding:8px 10px;border-bottom:2px solid var(--line);color:var(--ink);font-weight:600}
.mg-doc-table td{padding:8px 10px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft)}
.mg-doc-table code{font-family:ui-monospace,Menlo,monospace;font-size:11.5px}
.mg-doc-note{font-size:12px;color:var(--ink-soft);line-height:1.6;border-top:1px solid var(--line);padding-top:16px}
.mg-doc-sign{margin-top:10px;color:var(--ink-mute)}

@media (max-width:560px){.mg-doc-meta{grid-template-columns:1fr}.mg-doc{padding:28px 22px}}

@media print{
  /* PDF di gestione (dossier ecc.): SFONDO BIANCO. Testo e accenti restano (sono
     scuri/teal, visibili su bianco). L'avorio è riservato al certificato. */
  html,body{background:#fff!important}
  .pf-topbar,.mg-doc-actions,.no-print{display:none!important}
  .mg-sheet{padding:0;background:#fff!important}
  .mg-doc{border:none;box-shadow:none;max-width:none;border-radius:0;padding:0;background:#fff!important}
  .mg-doc-brand b,.mg-doc-h1,.mg-doc-meta>div b,.mg-doc-table th{color:#1f1e1d}
  *{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  @page{size:A4 portrait;margin:16mm}
}

/* barra avvisi nel quadro gestione */
.mg-toolbar .mg-hint{flex:1;min-width:220px;font-size:12.5px;color:var(--ink-mute);line-height:1.5}
.mg-btns{display:flex;gap:10px;flex-wrap:wrap}

/* ---------- Regolamento · presa visione ---------- */
.pf-ack{display:flex;gap:14px;align-items:flex-start;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;margin-bottom:18px}
.pf-ack.is-done{border-color:color-mix(in srgb,var(--ok) 40%,var(--line));background:color-mix(in srgb,var(--ok) 6%,var(--bg-1))}
.pf-ack-ico{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--ok) 16%,var(--bg-1));color:var(--ok)}
.pf-ack-ico.is-warn{background:color-mix(in srgb,var(--warn) 16%,var(--bg-1));color:var(--warn)}
.pf-ack-ico svg{width:18px;height:18px}
.pf-ack-txt b{display:block;font-size:14px;color:var(--ink)}
.pf-ack-txt span{display:block;font-size:13px;color:var(--ink-soft);margin-top:2px}
.pf-ack-form{margin-top:18px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px;display:flex;flex-direction:column;gap:16px}
.pf-ack-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:14px;color:var(--ink-soft);line-height:1.5}
.pf-ack-check input{position:absolute;opacity:0;width:0;height:0}
.pf-ack-check .box{flex:0 0 auto;width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line);background:var(--bg-1);display:grid;place-items:center;margin-top:1px;transition:background var(--t-fast),border-color var(--t-fast)}
.pf-ack-check .box svg{width:14px;height:14px;color:var(--accent-ink);opacity:0;transform:scale(.6);transition:opacity var(--t-fast),transform var(--t-fast)}
.pf-ack-check input:checked + .box{background:var(--accent);border-color:var(--accent)}
.pf-ack-check input:checked + .box svg{opacity:1;transform:none}
.pf-ack-check input:focus-visible + .box{outline:2px solid var(--accent);outline-offset:2px}
.pf-ack-form .btn{align-self:flex-start}

/* banner presa visione in dashboard */
.pf-banner{display:flex;align-items:center;gap:14px;text-decoration:none;background:color-mix(in srgb,var(--warn) 8%,var(--bg-1));border:1px solid color-mix(in srgb,var(--warn) 35%,var(--line));border-radius:var(--radius-lg);padding:14px 18px;margin-bottom:24px;transition:background var(--t-fast)}
.pf-banner:hover{background:color-mix(in srgb,var(--warn) 13%,var(--bg-1))}
.pf-banner-ico{flex:0 0 auto;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--warn) 18%,var(--bg-1));color:var(--warn)}
.pf-banner-ico svg{width:19px;height:19px}
.pf-banner-txt{flex:1}
.pf-banner-txt b{display:block;font-size:14px;color:var(--ink)}
.pf-banner-txt span{display:block;font-size:12.5px;color:var(--ink-soft)}
.pf-banner-cta{font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap}

/* ---------- Inventario strumenti ---------- */
.mg-toolico{flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:var(--bg-2);border:1px solid var(--line);display:grid;place-items:center;overflow:hidden}
.mg-toolico img{width:20px;height:20px;object-fit:contain;display:block}
.btn-ghost{background:transparent;border:1px solid transparent;color:var(--ink-mute)}
.btn-ghost:hover{color:var(--ink);background:var(--bg-2)}
.btn-danger{background:var(--err);color:var(--err-ink);border:1px solid var(--err)}
.btn-danger:hover{background:color-mix(in srgb,var(--err) 86%,#000);border-color:color-mix(in srgb,var(--err) 86%,#000);color:var(--err-ink);filter:none}
:root[data-pim-theme="dark"] .btn-danger{background:var(--pim-accent);color:var(--pim-accent-ink);border-color:var(--pim-accent)}
:root[data-pim-theme="dark"] .btn-danger:hover{background:var(--pim-primary);color:var(--pim-accent-ink);border-color:var(--pim-primary);filter:none}
.pf-del-confirm{font-size:12.5px;color:var(--ink-soft);white-space:nowrap}

.pf-toolform{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 24px;display:flex;flex-direction:column;gap:16px}
.pf-fldgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.pf-fldgrid{grid-template-columns:1fr}}
/* Sezione "Email e password": due colonne (email | password), impilate su mobile. */
.pf-credgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
@media (max-width:640px){.pf-credgrid{grid-template-columns:1fr;gap:22px}}
.pf-credcol{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.pf-credcol .pf-fld{width:100%}
.pf-credcol button{margin-top:2px}
.pf-fld{display:flex;flex-direction:column;gap:6px}
.pf-fld-lab{font-size:12px;font-weight:600;color:var(--ink-mute);letter-spacing:.02em}
/* Tutti i campi testo del frontend Hub usano il design system (mai input nativi). */
.pim-formazione-screen input[type=text],
.pim-formazione-screen input[type=email],
.pim-formazione-screen input[type=password],
.pim-formazione-screen input[type=search],
.pim-formazione-screen input[type=url],
.pim-formazione-screen input[type=tel],
.pim-formazione-screen input[type=number],
.pim-formazione-screen textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:9px 12px;font:inherit;font-size:14px;color:var(--ink);transition:border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast)}
.pim-formazione-screen input[type=text],
.pim-formazione-screen input[type=email],
.pim-formazione-screen input[type=password],
.pim-formazione-screen input[type=search],
.pim-formazione-screen input[type=url],
.pim-formazione-screen input[type=tel],
.pim-formazione-screen input[type=number]{align-self:start}
.pim-formazione-screen input[type=text]:hover,
.pim-formazione-screen input[type=email]:hover,
.pim-formazione-screen input[type=password]:hover,
.pim-formazione-screen input[type=search]:hover,
.pim-formazione-screen input[type=url]:hover,
.pim-formazione-screen input[type=tel]:hover,
.pim-formazione-screen input[type=number]:hover,
.pim-formazione-screen textarea:hover{border-color:color-mix(in srgb,var(--ink) 28%,var(--line))}
.pim-formazione-screen input[type=text]:focus,
.pim-formazione-screen input[type=email]:focus,
.pim-formazione-screen input[type=password]:focus,
.pim-formazione-screen input[type=search]:focus,
.pim-formazione-screen input[type=url]:focus,
.pim-formazione-screen input[type=tel]:focus,
.pim-formazione-screen input[type=number]:focus,
.pim-formazione-screen textarea:focus{outline:none;border-color:var(--accent);background:var(--bg-1);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}
.pim-formazione-screen input::placeholder,.pim-formazione-screen textarea::placeholder{color:var(--ink-soft);opacity:.7}
.pim-formazione-screen input:disabled,.pim-formazione-screen textarea:disabled,.pim-formazione-screen select:disabled{cursor:not-allowed;opacity:.58}
.pf-domwrap{display:flex;align-items:center;gap:8px}
.pf-domwrap input{flex:1}
.pf-search-wrap{position:relative}
.pf-search-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);overflow:hidden;max-height:320px;overflow-y:auto}
.pf-search-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:none;border-bottom:1px solid var(--line-soft);padding:9px 12px;cursor:pointer;color:var(--ink)}
.pf-search-item:hover{background:var(--bg-2)}
.pf-search-item img{width:18px;height:18px;object-fit:contain}
.pf-search-item span{font-size:13.5px;font-weight:600}
.pf-search-item small{margin-left:auto;color:var(--ink-mute);font-size:12px}
.pf-search-empty{padding:10px 12px;font-size:13px;color:var(--ink-mute)}
.pf-seg{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg-2)}
.pf-seg label{position:relative;cursor:pointer;flex:1 1 0;min-width:0;display:flex}
.pf-seg input{position:absolute;opacity:0;width:0;height:0}
.pf-seg span{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px 10px;font-size:12.5px;line-height:1.25;color:var(--ink-soft);border-right:1px solid var(--line)}
.pf-seg label:last-child span{border-right:none}
.pf-seg input:checked + span{background:var(--accent);color:var(--accent-ink);font-weight:600}
.pf-toolform-foot{display:flex;gap:10px;align-items:center}

/* ---------- Clausole / disclosure ---------- */
.pf-clausole{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.pf-clause{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.pf-clause-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.pf-clause-cat{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}
.pf-clause-head h3{margin:0;font-size:15px;font-weight:600;color:var(--ink)}
.pf-clause-text{margin:0;font-size:13.5px;line-height:1.6;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius);padding:12px 14px}

/* ---------- PIM Hub · home aree ---------- */
.hub-hero{padding:14px 0 26px}
.hub-eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.hub-hero h1{margin:0 0 8px;font-size:30px;font-weight:700;letter-spacing:-.015em}
.hub-hero p{margin:0;font-size:15px;color:var(--ink-soft);line-height:1.6;max-width:620px}
.hub-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.hub-area{display:flex;align-items:flex-start;gap:16px;text-decoration:none;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 24px;box-shadow:var(--shadow-1);transition:transform var(--t-fast),box-shadow var(--t-fast),border-color var(--t-fast);position:relative}
a.hub-area:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.hub-area.is-soon{opacity:.6}
.hub-area-ico{flex:0 0 auto;width:46px;height:46px;border-radius:13px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-1));display:grid;place-items:center}
.hub-area-ico svg{width:25px;height:25px;color:var(--ink)}
.hub-area.is-soon .hub-area-ico svg{color:var(--ink-mute)}
.hub-area-body{flex:1;min-width:0}
.hub-area-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:5px}
.hub-area-body h3{margin:0 0 6px;font-size:18px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hub-area-body p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink-soft)}
.hub-soon{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,var(--bg-1));border-radius:var(--radius-pill);padding:2px 9px}
.hub-area-cta{align-self:center;font-size:14px;font-weight:600;color:var(--accent);white-space:nowrap}

/* pagine gestione: layout a colonna così la barra schede sta sempre in cima */
.mg-main{display:flex;flex-direction:column}
/* barra schede: sempre sotto la topbar (order:-1), sticky; sfondo = stesso gradiente
   FISSO della pagina → a riposo invisibile, sotto lo scroll copre il contenuto */
/* Sfondo TRASPARENTE: lascia passare il gradiente della pagina → nessuna banda
   (un colore solido non combacia mai col gradiente del body). Il blur sfuoca solo
   il contenuto che scorre sotto la barra sticky. */
.mg-tabbar{order:-1;position:sticky;top:60px;z-index:60;margin:0 -24px 22px;padding:12px 24px;border-bottom:1px solid var(--line-soft);background:transparent;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mg-tabbar .mg-tabs{margin:0;max-width:max-content}
@media (max-width:760px){.mg-tabbar{overflow-x:auto}.mg-tabbar .mg-tabs{max-width:none;width:max-content}}

/* dropdown custom riutilizzabile (no <select> nativo) */
.pf-dd{position:relative}
.pf-dd-btn{display:inline-flex;align-items:center;gap:8px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;min-width:230px}
.pf-dd-btn:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.pf-dd-ico{width:16px;height:16px;color:var(--ink-mute);flex:0 0 auto}
.pf-dd-lab{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-dd-caret{width:16px;height:16px;color:var(--ink-mute);flex:0 0 auto;transition:transform var(--t-fast)}
.pf-dd-btn[aria-expanded="true"] .pf-dd-caret{transform:rotate(180deg)}
.pf-dd-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;z-index:30;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);padding:5px;max-height:320px;overflow-y:auto;display:none}
.pf-dd-menu.open{display:block}
.pf-dd-item{display:block;width:100%;text-align:left;background:transparent;border:none;border-radius:8px;padding:8px 11px;font:inherit;font-size:13.5px;color:var(--ink-soft);cursor:pointer;white-space:nowrap}
.pf-dd-item:hover{background:var(--bg-2);color:var(--ink)}
.pf-dd-item.is-active{background:color-mix(in srgb,var(--accent) 12%,var(--bg-1));color:var(--accent);font-weight:600}

/* card dossier (indice) */
.mg-doss{display:flex;flex-direction:column;gap:14px}
.mg-doss-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.mg-doss-name{margin:0;font-size:17px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.mg-doss-roles{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.mg-roletag{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:11px;font-weight:600;color:var(--ink-soft);border:1px solid var(--line);background:color-mix(in srgb,var(--bg-2) 45%,transparent);border-radius:var(--radius-pill);padding:3px 11px}
.mg-roletag.is-done{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 12%,transparent)}
.mg-roletag svg{width:11px;height:11px}
.mg-doss-reg{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--warn)}
.mg-doss-reg .dot{width:8px;height:8px;border-radius:50%;background:var(--warn);flex:0 0 auto}
.mg-doss-reg.is-ok{color:var(--ok)}
.mg-doss-reg.is-ok .dot{background:var(--ok)}
.mg-doss-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:4px}
.mg-doss-count{font-size:13px;color:var(--ink-mute);font-variant-numeric:tabular-nums}

/* inventario: bottone + modale form */
.pf-hidden{display:none!important}
.mg-addbar{margin-top:24px}
.pf-modal-lg{max-width:640px;text-align:left;position:relative;max-height:88vh;overflow-y:auto}
.pf-modal-lg h2{margin:0 0 18px;font-size:19px;color:var(--ink)}
.pf-modal-x{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;background:var(--bg-2);border-radius:8px;color:var(--ink-soft);cursor:pointer;display:grid;place-items:center}
.pf-modal-x:hover{background:var(--line);color:var(--ink)}
.pf-modal-x svg{width:16px;height:16px}
.pf-modal-lg .pf-toolform{background:transparent;border:none;padding:0;box-shadow:none}

/* dashboard utente: checklist alfabetizzazione */
.pf-checklist{display:flex;flex-direction:column;gap:10px}
.pf-chk-item{display:flex;align-items:center;gap:14px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 18px}
.pf-chk-item.is-done{border-color:color-mix(in srgb,var(--ok) 35%,var(--line));background:color-mix(in srgb,var(--ok) 5%,var(--bg-1))}
.pf-chk-box{flex:0 0 auto;width:26px;height:26px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:var(--accent-ink)}
.pf-chk-item.is-done .pf-chk-box{background:var(--ok);border-color:var(--ok)}
.pf-chk-box svg{width:15px;height:15px}
.pf-chk-txt{flex:1;min-width:0}
.pf-chk-txt b{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:15px;color:var(--ink)}
.pf-chk-txt span{display:block;font-size:13px;color:var(--ink-soft)}
.pf-chk-area{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);padding:2px 8px;border-radius:999px;line-height:1.55;white-space:nowrap}
.pf-chk-cta{font-size:13.5px;font-weight:600;color:var(--accent);white-space:nowrap}
.pf-chk-ok{font-size:12.5px;font-weight:600;color:var(--ok);white-space:nowrap}
/* dashboard utente: in corso + ultimo attestato */
.pf-now{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}
@media (max-width:640px){.pf-now{grid-template-columns:1fr}}
.pf-now-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px;transition:border-color var(--t-fast),transform var(--t-fast)}
.pf-now-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));transform:translateY(-2px)}
.pf-now-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.pf-now-card b{font-size:15px;color:var(--ink)}
.pf-now-cta{font-size:13px;font-weight:600;color:var(--accent)}

/* ============================================================
   STAMPA generale (PDF) — vale per tutte le pagine elenco/gestione.
   Nasconde la chrome, sfondo bianco, tabelle pulite. (Cert e dossier
   hanno regole proprie più specifiche, che restano valide.)
   ============================================================ */
@media print{
  html,body{background:#fff!important}
  .pf-topbar,.mg-tabbar,.mg-toolbar,.mg-addbar,.mg-btns,.mg-hint,.pf-banner,.pf-now,.no-print,.pf-modal-backdrop,.pf-icon-btn{display:none!important}
  .pf-main{padding:0!important;max-width:none!important;display:block!important}
  *{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .mg-tablewrap{border:1px solid #ddd!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important;background:#fff!important}
  .mg-table th{border-bottom:2px solid #ccc!important;color:#1f1e1d!important}
  .mg-table td{border-bottom:1px solid #e6e6e6!important}
  .mg-table tbody tr{break-inside:avoid}
  .mg-head h1{font-size:20px}
  .reading{border:none!important;box-shadow:none!important;background:#fff!important;padding:0!important}
  @page{size:A4 portrait;margin:14mm}
}

/* gruppi pulsanti toolbar + addbar */
.mg-toolacts{display:flex;gap:10px;flex-wrap:wrap}
.mg-addbar{display:flex;gap:10px;flex-wrap:wrap}
@media print{ .mg-rowact{display:none!important} }

/* dossier: bottone "esporta tutto" + documento combinato */
.pf-export-all{display:flex;align-items:center;gap:14px;text-decoration:none;background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:var(--radius-lg);padding:16px 20px;margin-bottom:22px;transition:background var(--t-fast)}
.pf-export-all:hover{background:color-mix(in srgb,var(--accent) 12%,var(--bg-1))}
.pf-export-ico{flex:0 0 auto;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink)}
.pf-export-ico svg{width:20px;height:20px}
.pf-export-txt{flex:1}
.pf-export-txt b{display:block;font-size:15px;color:var(--ink)}
.pf-export-txt span{display:block;font-size:12.5px;color:var(--ink-soft)}
.pf-export-cta{font-weight:600;color:var(--accent);white-space:nowrap}
.mg-doc-reg h1{font-size:16px;margin:0 0 8px;color:#1f1e1d}
.mg-doc-reg h2{font-size:13px;margin:14px 0 4px;color:#1f1e1d}
.mg-doc-reg p,.mg-doc-reg li{font-size:12.5px;line-height:1.55;color:#4a4a46}
.mg-doc-reg .lf-callout{border-left:3px solid var(--accent);padding:8px 12px;margin:10px 0;background:#f7f4ec}
@media print{ .pf-break{break-before:page} .mg-doc-table tr{break-inside:avoid} }

/* ── Persone: invito ─────────────────────────────────────────── */
.mg-headact{display:flex;align-items:center;gap:10px}
.pf-modal-sub{margin:-4px 0 18px;font-size:13px;color:var(--ink-soft);line-height:1.5}
.pf-modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.pf-fld-hint{margin:8px 0 0;font-size:12px;color:var(--ink-soft)}
.pf-invroles{display:flex;flex-wrap:wrap;gap:8px 18px}
.mg-check-inline{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px}
.mg-check-inline .lab{user-select:none}

/* ── Toggle (switch) ─────────────────────────────────────────── */
.pf-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--ink-soft);user-select:none}
.pf-switch input{position:absolute;opacity:0;width:0;height:0}
.pf-switch-track{width:34px;height:20px;border-radius:999px;background:var(--line);position:relative;transition:background .15s;flex:0 0 auto}
.pf-switch-track::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.pf-switch input:checked + .pf-switch-track{background:var(--accent)}
.pf-switch input:checked + .pf-switch-track::after{transform:translateX(14px)}
.pf-switch input:checked ~ .pf-switch-lab{color:var(--ink);font-weight:600}
.pf-switch input:focus-visible + .pf-switch-track{outline:2px solid var(--accent);outline-offset:2px}

/* ── Permessi (per area) ─────────────────────────────────────── */
.pf-permarea{display:flex;align-items:center;gap:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:13px 16px;margin-bottom:18px}
.pf-permarea-ico{width:30px;height:30px;border-radius:50%;background:var(--accent);position:relative;flex:0 0 auto}
.pf-permarea-ico .mark{position:absolute;top:50%;right:15%;transform:translateY(-50%);width:28%;height:28%;border-radius:50%;background:#fff}
.pf-permarea b{display:block;font-size:14px;color:var(--ink)}
.pf-permarea span{font-size:12px;color:var(--ink-mute)}
.pf-permlist{display:flex;flex-direction:column;gap:10px;max-width:580px}
.pf-permrow{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;cursor:pointer}
.pf-permrow-txt b{display:block;font-size:14px;color:var(--ink)}
.pf-permrow-txt span{font-size:12.5px;color:var(--ink-soft)}

/* ── Form di login (gate) ────────────────────────────────────── */
.pf-login{text-align:left;margin:4px 0 2px}
.pf-login #loginform p{margin:0 0 13px}
.pf-login #loginform label{display:block;font-size:12px;font-weight:600;color:var(--ink-mute);margin-bottom:6px;letter-spacing:.02em}
.pf-login .login-remember label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--ink-soft);font-size:13px;margin:0}
.pf-login .login-remember input{width:auto;margin:0;flex:0 0 auto}
.pf-login .login-submit{margin-bottom:0!important}
.pf-login input[type=submit]{width:100%;cursor:pointer;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius);padding:12px 18px;font:inherit;font-weight:700;font-size:15px;transition:filter .15s}
.pf-login input[type=submit]:hover{filter:brightness(1.06)}
.pf-login-lost{display:inline-block;margin-top:14px;font-size:13px;color:var(--accent);text-decoration:none}
.pf-login-lost:hover{text-decoration:underline}

/* ── Scheda area (rail aree di conformità + contenuto) ───────── */
.pf-area{display:flex;align-items:flex-start;gap:0}
.pf-area-nav{flex:0 0 214px;align-self:flex-start;position:sticky;top:78px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:10px;display:flex;flex-direction:column;gap:4px}
.pf-area-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);padding:6px 10px 8px}
.pf-area-tab{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:var(--radius);color:var(--ink-soft);text-decoration:none}
.pf-area-tab .mk{width:10px;height:10px;border-radius:50%;background:var(--accent);opacity:.32;flex:0 0 auto}
.pf-area-tab .tx{min-width:0}
.pf-area-tab .tx b{display:block;font-size:13.5px;font-weight:600;color:inherit;line-height:1.3}
.pf-area-tab .tx small{display:block;font-size:11px;color:var(--ink-mute);line-height:1.35;margin-top:1px}
.pf-area-tab.is-active{background:color-mix(in srgb,var(--accent) 13%,var(--bg-1));color:var(--ink);box-shadow:inset 3px 0 0 var(--accent)}
.pf-area-tab.is-active .mk{opacity:1}
.pf-area-tab.is-soon{opacity:.5}
.pf-area-body{flex:1;min-width:0;padding-left:24px}
@media (max-width:820px){
  .pf-area{flex-direction:column}
  .pf-area-nav{position:static;flex:none;width:100%;flex-direction:row;align-items:stretch;overflow-x:auto}
  .pf-area-nav .pf-area-eyebrow{display:none}
  .pf-area-tab{flex:1 0 auto;white-space:nowrap}
  .pf-area-body{padding-left:0;padding-top:18px}
}

/* ── Profilo ─────────────────────────────────────────────────── */
.pf-user{text-decoration:none;color:inherit}
.pf-user .uava.uava-img{background-size:cover;background-position:center;background-repeat:no-repeat;color:transparent;font-size:0}
.pf-profile{max-width:560px}
.pf-prof-photo{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.pf-prof-ava{width:96px;height:96px;border-radius:50%;background:var(--bg-2);border:1px solid var(--line);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.pf-prof-ini{font-size:34px;font-weight:700;color:var(--accent)}
.pf-prof-photoacts{display:flex;flex-direction:column;gap:4px}
.pf-prof-photoacts .pf-fld-hint{margin:0}
.pf-prof-foot{display:flex;justify-content:flex-end;margin-top:20px}

/* ── Modale invito: impaginazione pulita (override del .pf-modal centrato) ── */
.pf-modal.pf-modal-form{max-width:520px;text-align:left}
.pf-modal-form h2{text-align:left}
.pf-modal-form .pf-modal-sub{text-align:left;margin:-2px 0 20px}
.pf-invroles{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin-top:4px}
@media (max-width:560px){.pf-invroles{grid-template-columns:1fr}}

/* ── Azione "rimuovi persona" ──────────────────────────────────────────── */
.mg-remove{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.mg-remove:hover{background:color-mix(in srgb,var(--danger,#c0392b) 12%,var(--bg-1));border-color:var(--danger,#c0392b);color:var(--danger,#c0392b)}
.mg-remove svg{width:16px;height:16px}
.mg-th-act{width:48px}

/* ── Transizione tema light↔dark (View Transitions API, come Blog PIM) ──── */
@keyframes pim-theme-diag-in{from{-webkit-mask-position:0% 100%;mask-position:0% 100%}to{-webkit-mask-position:100% 0%;mask-position:100% 0%}}
@keyframes pim-theme-hold{from{opacity:1}to{opacity:1}}
:root.pim-theme-switching::view-transition-old(root){animation:pim-theme-hold .95s linear both}
:root.pim-theme-switching::view-transition-new(root){
  animation:pim-theme-diag-in .95s ease-in-out both;
  -webkit-mask-image:linear-gradient(225deg,#000 0%,#000 22%,rgba(0,0,0,0) 62%);
  mask-image:linear-gradient(225deg,#000 0%,#000 22%,rgba(0,0,0,0) 62%);
  -webkit-mask-size:300% 300%;mask-size:300% 300%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
}
@media (prefers-reduced-motion:reduce){
  :root.pim-theme-switching::view-transition-new(root){animation:none;-webkit-mask-image:none;mask-image:none}
  :root.pim-theme-switching::view-transition-old(root){animation:none}
}

/* ── Attivazione accesso (magic link) ──────────────────────────────────── */
.pf-act-id{display:flex;align-items:center;gap:12px;text-align:left;background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius);padding:12px 14px;margin:18px 0}
.pf-act-ava{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-soft));color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-weight:700;flex:0 0 auto}
.pf-act-id b{display:block;font-size:14px;color:var(--ink)}
.pf-act-id span{font-size:12.5px;color:var(--ink-soft)}
.pf-act-err{text-align:left;background:color-mix(in srgb,var(--danger,#c0392b) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--danger,#c0392b) 35%,var(--bg-1));color:var(--danger,#c0392b);border-radius:var(--radius);padding:10px 12px;font-size:13px;margin:0 0 14px}
.pf-act-form{display:flex;flex-direction:column;gap:14px;text-align:left;margin-top:4px}
.pf-act-form .btn{width:100%;justify-content:center;margin-top:6px}
/* Notice positivo (es. "codice reinviato") — gemello di .pf-act-err in verde. */
.pf-act-ok{text-align:left;background:color-mix(in srgb,var(--ok,#1f9d55) 12%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok,#1f9d55) 38%,var(--bg-1));color:var(--ok,#1f9d55);border-radius:var(--radius);padding:10px 12px;font-size:13px;margin:0 0 14px}
/* "Resta connesso" */
.pf-login-remember{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);cursor:pointer;margin:-2px 0 2px}
.pf-login-remember input{width:16px;height:16px;accent-color:var(--accent,#00b3a4);cursor:pointer}
/* Campo codice 2FA: grande, centrato, spaziato come un codice OTP. */
.pf-2fa-input{text-align:center;font-size:24px;font-weight:650;letter-spacing:.32em;font-variant-numeric:tabular-nums;padding-left:.32em}
/* Form "invia di nuovo": il bottone riusa lo stile del link, senza chrome nativo. */
.pf-2fa-resend{margin-top:12px}
button.pf-login-lost{background:none;border:0;padding:0;cursor:pointer;font:inherit}

/* ════════════════ Sicurezza accesso (2FA) — pagina profilo ════════════════ */
.pf-sec{margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}
.pf-sec-h{font-size:21px;font-weight:680;color:var(--ink);margin:4px 0 6px}
.pf-sec-lead{font-size:14px;color:var(--ink-soft);margin:0 0 18px;max-width:60ch}
.pf-sec-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px}
.pf-sec-on,.pf-sec-off-state{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px;justify-content:space-between}
.pf-sec-status{display:flex;align-items:center;gap:13px;min-width:0}
.pf-sec-badge{flex:none;display:inline-flex;align-items:center;font-size:11.5px;font-weight:700;letter-spacing:.01em;border-radius:var(--radius-pill);padding:4px 12px;border:1px solid var(--line)}
.pf-sec-badge.is-on{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 42%,var(--line))}
.pf-sec-badge.is-off{color:var(--ink-mute);background:color-mix(in srgb,var(--bg-2) 55%,transparent)}
.pf-sec-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.pf-sec-meta b{font-size:14.5px;color:var(--ink);font-weight:640}
.pf-sec-meta span{font-size:12.5px;color:var(--ink-soft)}
.pf-sec-acts{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pf-sec-off{color:var(--err)}
.pf-sec-disable{position:relative}
.pf-sec-disable summary{display:inline-flex;list-style:none}
.pf-sec-disable summary::-webkit-details-marker{display:none}
.pf-sec-disable-c{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding:12px 14px;background:color-mix(in srgb,var(--err) 7%,var(--bg-1));border:1px solid color-mix(in srgb,var(--err) 30%,var(--line));border-radius:var(--radius)}
.pf-sec-disable-c span{font-size:12.5px;color:var(--ink-soft)}
/* Scelta metodo */
.pf-2fa-methods{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%;margin-top:6px}
.pf-2fa-method{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:16px 16px 18px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);text-align:left}
.pf-2fa-method-ico{width:34px;height:34px;color:var(--accent)}
.pf-2fa-method-ico svg{width:100%;height:100%}
.pf-2fa-method b{font-size:14.5px;color:var(--ink);font-weight:640}
.pf-2fa-method-sub{font-size:12.5px;color:var(--ink-soft);line-height:1.45;flex:1}
.pf-2fa-method .btn{margin-top:4px}
/* Iscrizione app */
.pf-2fa-steps{margin:0 0 16px;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px;font-size:13.5px;color:var(--ink-soft)}
.pf-2fa-steps b{color:var(--ink)}
.pf-2fa-enroll{display:flex;align-items:flex-start;gap:26px;flex-wrap:wrap;margin:0 0 4px}
.pf-2fa-qr{flex:none;display:inline-block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:11px;line-height:0}
.pf-2fa-qr img,.pf-2fa-qr canvas{display:block;width:168px;height:168px;border-radius:2px}
.pf-2fa-enroll-r{flex:1;min-width:230px;display:flex;flex-direction:column;gap:18px}
.pf-2fa-keybox{display:flex;flex-direction:column;gap:6px}
.pf-2fa-keylab,.pf-2fa-clab{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute)}
.pf-2fa-key{font-family:'Courier New',monospace;font-size:15px;font-weight:700;letter-spacing:.06em;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:9px 13px;user-select:all;word-break:break-all}
.pf-2fa-confirm{display:flex;flex-direction:column;gap:7px}
.pf-2fa-confirm-row{display:flex;gap:10px;align-items:center}
.pf-2fa-confirm-row .pf-2fa-input[type="text"]{width:170px;flex:0 0 auto}
.pf-2fa-cancel{margin-top:14px}
.pf-2fa-emailnote{font-size:14px;color:var(--ink-soft);margin:0 0 14px}
.pf-2fa-emailacts{display:flex;gap:18px;margin-top:14px}
/* Codici di recupero */
.pf-2fa-reclead{font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin:6px 0 14px}
.pf-2fa-recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:0 0 16px}
.pf-2fa-reccode{font-family:'Courier New',monospace;font-size:16px;font-weight:700;letter-spacing:.06em;color:var(--ink);background:var(--bg-2);border:1px dashed var(--line);border-radius:var(--radius);padding:8px 12px;text-align:center;user-select:all}
.pf-2fa-recacts{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:640px){.pf-2fa-methods{grid-template-columns:1fr}.pf-2fa-recovery{grid-template-columns:1fr}.pf-sec-on,.pf-sec-off-state{flex-direction:column;align-items:flex-start}}
/* Chip + reset 2FA nella tabella Persone (admin) */
.mg-2fa{display:inline-block}
.mg-2fa summary{list-style:none;cursor:pointer}
.mg-2fa summary::-webkit-details-marker{display:none}
.mg-2fa-chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 40%,var(--line));border-radius:var(--radius-pill);padding:4px 10px}
.mg-2fa-chip svg{width:13px;height:13px}
.mg-2fa-c{margin-top:8px;display:flex;flex-direction:column;gap:8px;padding:11px 12px;background:color-mix(in srgb,var(--err) 6%,var(--bg-1));border:1px solid color-mix(in srgb,var(--err) 28%,var(--line));border-radius:var(--radius);max-width:280px;text-align:left}
.mg-2fa-c span{font-size:12px;color:var(--ink-soft);line-height:1.45}
.mg-2fa-reset{color:var(--err);align-self:flex-start}
/* 2FA obbligatorio: hero bloccante sul profilo + card interruttore in Impostazioni */
.hub-hero.pf-2fa-forced{position:relative;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 7%,transparent);border-radius:var(--radius-lg);padding:22px 24px}
.hub-hero.pf-2fa-forced .hub-eyebrow{color:var(--accent)}
.pf-2fa-forced-exit{position:absolute;top:18px;right:20px}
@media(max-width:640px){.pf-2fa-forced-exit{position:static;margin-top:12px;display:inline-flex}}
.set-2fa .pf-switch{margin:2px 0 6px}

/* ════════════════ Area Salute e Sicurezza (registro adempimenti) ════════════════ */
.sic-st{display:inline-flex;align-items:center;white-space:nowrap;font-size:11.5px;font-weight:700;letter-spacing:.01em;border-radius:var(--radius-pill);padding:3px 11px;border:1px solid var(--line)}
.sic-st.is-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 42%,var(--line))}
.sic-st.is-corso{color:#2f6fed;background:color-mix(in srgb,#3b82f6 15%,transparent);border-color:color-mix(in srgb,#3b82f6 45%,var(--line))}
[data-pim-theme="dark"] .sic-st.is-corso{color:#7fb0ff}
.sic-st.is-arrivo{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent);border-color:color-mix(in srgb,var(--warn) 42%,var(--line))}
.sic-st.is-verifica{color:var(--ink-soft);background:color-mix(in srgb,var(--bg-2) 50%,transparent);border-color:var(--line)}
.sic-st.is-manca{color:var(--err);background:color-mix(in srgb,var(--err) 13%,transparent);border-color:color-mix(in srgb,var(--err) 42%,var(--line))}

/* "Cosa manca" */
.sic-todo{display:flex;flex-direction:column;gap:8px}
.sic-todo-row{display:flex;align-items:flex-start;gap:13px;padding:13px 16px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius)}
.sic-todo-row .sic-st{margin-top:1px;flex:none}
.sic-todo-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.sic-todo-tx b{font-size:14px;color:var(--ink);font-weight:650}
.sic-todo-tx span{font-size:12.5px;color:var(--ink-soft)}

/* Tabella registro */
.sic-table{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:visible;background:var(--bg-1)}
.sic-table>.sic-tr:first-child{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}
.sic-table>.sic-tr:last-child{border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}
.sic-tr{display:grid;grid-template-columns:minmax(0,2.4fr) .9fr 1fr .8fr .7fr;align-items:center;gap:14px;padding:13px 18px;border-top:1px solid var(--line-soft)}
.sic-tr:first-child{border-top:0}
.sic-tr-adm,.sic-th-adm{grid-template-columns:minmax(0,2.2fr) .9fr .9fr .8fr .5fr 172px}
.sic-th{background:color-mix(in srgb,var(--bg-2) 55%,transparent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute)}
.sic-name{display:flex;flex-direction:column;gap:3px;min-width:0}
.sic-name b{font-size:14px;color:var(--ink);font-weight:650;line-height:1.3}
.sic-name em{font-style:normal;font-size:12px;color:var(--ink-soft);line-height:1.35}
.sic-resp{font-size:13px;color:var(--ink);min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
.sic-resp i,.sic-scad i,.sic-nodoc{color:var(--ink-mute);font-style:normal}
.sic-scad{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}
.sic-scad.is-soon{color:var(--warn);font-weight:650}
.sic-scad.is-late{color:var(--err);font-weight:700}
.sic-doc{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:12px;font-weight:600;color:var(--ink);text-decoration:none;padding:5px 10px 5px 8px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));transition:background var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast)}
.sic-doc:hover{background:color-mix(in srgb,var(--accent) 20%,transparent);transform:translateY(-1px);box-shadow:0 4px 10px -7px rgba(31,30,29,.5)}
.sic-doc svg{width:14px;height:14px;flex:none;color:var(--accent)}
.sic-doc-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sic-doc.is-icon{padding:6px}
/* Più documenti: icona "a pila" + conteggio + popover al hover */
.sic-doc-stack{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));color:var(--accent);cursor:pointer;outline:none}
.sic-doc-stack:hover,.sic-doc-stack:focus-visible{background:color-mix(in srgb,var(--accent) 20%,transparent)}
.sic-doc-stack>svg{width:16px;height:16px}
.sic-doc-count{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
/* Popover a DESTRA dell'icona (sopra la colonna azioni): dà meno fastidio. */
.sic-doc-pop{position:absolute;z-index:60;left:calc(100% + 10px);top:0;right:auto;min-width:210px;max-width:280px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 12px 30px -12px rgba(31,30,29,.45);padding:8px;display:none;flex-direction:column;gap:2px;text-align:left}
/* Ponte invisibile sul lato sinistro: tiene vivo l'hover mentre il mouse
   attraversa lo spazio tra icona e popover, così non si chiude prima di arrivarci. */
.sic-doc-pop::before{content:"";position:absolute;top:0;bottom:0;left:-12px;width:12px}
/* A fine pagina: ancora il popover in basso così non esce sotto (classe .is-up via JS). */
.sic-doc-stack.is-up .sic-doc-pop{top:auto;bottom:0}
.sic-doc-stack:hover .sic-doc-pop,.sic-doc-stack:focus-within .sic-doc-pop{display:flex}
.sic-doc-pop-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);padding:4px 8px 6px}
.sic-doc-pop a{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--radius);font-size:12.5px;color:var(--ink);text-decoration:none}
.sic-doc-pop a:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.sic-doc-pop a svg{width:14px;height:14px;flex:none;color:var(--accent)}
.sic-doc-pop a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sic-actions{display:flex;align-items:center;gap:7px;justify-content:flex-end}
/* Riordino voci (admin) */
.sic-head-acts{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sic-reorder-msg{font-size:12.5px;font-weight:600;min-height:1em}
.sic-reorder-msg.is-ok{color:var(--ok)}
.sic-reorder-msg.is-err{color:var(--err)}
.sic-table.is-reorder .sic-tr-adm{cursor:grab;user-select:none}
.sic-table.is-reorder .sic-tr-adm:hover{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 3px 0 0 var(--accent)}
.sic-table.is-reorder .sic-tr-adm:active{cursor:grabbing}
.sic-tr-adm.sic-dragging{opacity:.5;background:color-mix(in srgb,var(--accent) 12%,transparent)}
/* In modalità riordino le azioni di riga (Modifica/Elimina/doc) non devono interferire col drag. */
.sic-table.is-reorder .sic-actions,.sic-table.is-reorder .sic-doccell{pointer-events:none;opacity:.45}
.sic-actions form{margin:0}
.sic-del-btn{color:var(--err)}
.sic-del-btn:hover{background:color-mix(in srgb,var(--err) 10%,transparent)}

/* Form gestione adempimento */
.sic-form{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px}
.sic-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sic-field{display:flex;flex-direction:column;gap:6px}
.sic-field>span{font-size:12.5px;font-weight:650;color:var(--ink-soft)}
.sic-field>span small{font-weight:500;color:var(--ink-mute)}
.sic-scadcalc-hint b{color:color-mix(in srgb,var(--accent) 55%,var(--ink));font-variant-numeric:tabular-nums}
.sic-scadcalc-note{color:var(--ink-mute)}
.sic-col-2{grid-column:1/-1}
/* checkbox "non ha scadenza" nel form adempimento */
.sic-noexp-field{flex-direction:row;align-items:center;gap:9px;cursor:pointer;font-size:13.5px;color:var(--ink)}
.sic-noexp-field input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;flex:0 0 auto}
.sic-noexp-field b{font-weight:700}
/* etichetta "Non scade" nella colonna scadenza del registro */
.sic-scad .sic-noexp{font-style:normal;font-weight:600;font-size:12px;color:var(--ink-soft);background:var(--bg-2);border-radius:var(--radius-pill);padding:2px 9px}
/* Scheda Riferimenti — uguale per ogni adempimento (chi contattare) */
.sic-rif{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;gap:12px}
.sic-rif-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute)}
.sic-rif-head svg{width:16px;height:16px;color:var(--accent);flex:none}
.sic-rif-head small{font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-mute)}
.sic-rif-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sic-rif-new{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:8px}
.sic-rif-new[hidden]{display:none}
.sic-rif-addbtn{align-self:flex-start;margin-top:10px}
.sic-rif .sic-select{margin-top:2px}
.sic-rif-preview{font-size:12.5px;color:var(--ink-soft);margin-top:2px}
@media(max-width:640px){.sic-rif-grid{grid-template-columns:1fr}}

/* AI (Impostazioni → AI): metriche utilizzo */
.ai-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:6px}
.ai-stat{display:flex;flex-direction:column;gap:3px;background:var(--bg-2);border-radius:var(--radius-md);padding:14px 16px}
.ai-stat-l{font-size:12.5px;color:var(--ink-soft)}
.ai-stat-v{font-size:24px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.1}
.ai-stat-s{font-size:11.5px;color:var(--ink-mute)}
.ai-stat.is-cost .ai-stat-v{color:var(--accent)}

/* Export (Impostazioni → Export) */
.exp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.exp-card{display:flex;flex-direction:column;gap:10px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 17px;box-shadow:var(--shadow-1)}
.exp-card-h{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--ink)}
.exp-card-h svg{width:20px;height:20px;color:var(--ink);flex:none}
.exp-card-sub{font-size:12.5px;color:var(--ink-soft);margin:0;line-height:1.5;flex:1}
.exp-card .btn{align-self:flex-start}
.exp-card.is-soon{opacity:.6}
.exp-card-wide{grid-column:1/-1}
.exp-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;font-weight:700;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);margin-left:2px}
.exp-form{display:flex;flex-direction:column;gap:12px}
.exp-form .btn{align-self:auto}
.exp-list{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-0);overflow:hidden}
.exp-all{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--bg-1);font-weight:600;font-size:13px;color:var(--ink);cursor:pointer}
.exp-all input{flex:none;width:17px;height:17px;accent-color:var(--accent)}
.exp-all>span:first-of-type{flex:1}
.exp-all-n{font-size:12px;font-weight:600;color:var(--ink-mute);font-variant-numeric:tabular-nums}
.exp-list-scroll{max-height:300px;overflow:auto;padding:6px}
.exp-group{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);padding:11px 10px 5px}
.exp-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);font-size:13px;color:var(--ink);cursor:pointer;min-width:0}
.exp-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}
.exp-row input{flex:none;width:16px;height:16px;accent-color:var(--accent)}
.exp-fico{flex:none;display:inline-flex;color:var(--accent)}
.exp-fico svg{width:16px;height:16px}
.exp-fname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.exp-ext{flex:none;font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:4px;padding:1px 6px}
.exp-form-foot{display:flex;flex-wrap:wrap;gap:8px}
.btn.is-disabled{pointer-events:none;opacity:.45}

/* Rubrica Riferimenti (Impostazioni → Riferimenti) */
.rif-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.rif-card{display:flex;flex-direction:column;gap:10px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:15px 16px;box-shadow:var(--shadow-1)}
.rif-card-main b{display:block;font-size:15px;color:var(--ink)}
.rif-card-main span{display:block;font-size:13px;color:var(--ink-soft);margin-top:2px}
.rif-card-contacts{display:flex;flex-direction:column;gap:5px;font-size:12.5px}
.rif-card-contacts a,.rif-card-contacts span{display:inline-flex;align-items:center;gap:7px;color:var(--ink-soft);text-decoration:none;min-width:0;word-break:break-word}
.rif-card-contacts a:hover{color:var(--accent)}
.rif-card-contacts svg{width:14px;height:14px;flex:none;color:var(--ink-mute)}
.rif-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--line-soft)}
.rif-uses{font-size:11.5px;font-weight:600;color:var(--ink-mute)}
.rif-actions{display:inline-flex;align-items:center;gap:7px}
.rif-actions form{margin:0}
/* Select e date: tema del design system, mai UI nativa del browser */
.pim-formazione-screen select,
.pim-formazione-screen input[type=date],
.pim-formazione-screen input[type=month],
.pim-formazione-screen input[type=time],
.pim-formazione-screen input[type=week],
.pim-formazione-screen input[type=datetime-local]{align-self:start;appearance:none;-webkit-appearance:none;width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:9px 12px;font:inherit;font-size:14px;color:var(--ink);cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast)}
.pim-formazione-screen select:hover,
.pim-formazione-screen input[type=date]:hover,
.pim-formazione-screen input[type=month]:hover,
.pim-formazione-screen input[type=time]:hover,
.pim-formazione-screen input[type=week]:hover,
.pim-formazione-screen input[type=datetime-local]:hover{border-color:color-mix(in srgb,var(--ink) 28%,var(--line))}
.pim-formazione-screen select:focus,
.pim-formazione-screen input[type=date]:focus,
.pim-formazione-screen input[type=month]:focus,
.pim-formazione-screen input[type=time]:focus,
.pim-formazione-screen input[type=week]:focus,
.pim-formazione-screen input[type=datetime-local]:focus{outline:none;border-color:var(--accent);background:var(--bg-1);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}
.pim-formazione-screen :is(input[type=date],input[type=month],input[type=time],input[type=week],input[type=datetime-local])::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;filter:var(--cal-filter,none)}
[data-pim-theme="dark"] .pim-formazione-screen :is(input[type=date],input[type=month],input[type=time],input[type=week],input[type=datetime-local])::-webkit-calendar-picker-indicator{--cal-filter:invert(1)}
.sic-select{position:relative}
.sic-select::after{content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;border-right:2px solid var(--ink-mute);border-bottom:2px solid var(--ink-mute);transform:translateY(-65%) rotate(45deg);pointer-events:none}
.sic-select select{padding-right:34px}

/* Dropdown custom (button + menu CSS, niente select nativo) */
.pf-dd{position:relative}
.pf-dd-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;font:inherit;font-size:14px;color:var(--ink);background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;cursor:pointer;text-align:left;transition:border-color .15s ease,box-shadow .15s ease}
.pf-dd-btn:hover{border-color:var(--ink-mute)}
.pf-dd.is-open .pf-dd-btn{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.pf-dd-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-dd-caret{width:18px;height:18px;color:var(--ink-mute);flex:none;transition:transform .18s ease}
.pf-dd.is-open .pf-dd-caret{transform:rotate(180deg)}
.pf-dd-menu{position:absolute;z-index:60;top:calc(100% + 6px);left:0;right:0;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 12px 30px -12px rgba(31,30,29,.45);padding:6px;display:none;flex-direction:column;gap:2px;max-height:280px;overflow:auto}
.pf-dd.is-open .pf-dd-menu{display:flex}
.pf-dd-opt{display:block;width:100%;text-align:left;font:inherit;font-size:13.5px;color:var(--ink);background:transparent;border:0;border-radius:var(--radius);padding:9px 12px;cursor:pointer}
.pf-dd-opt:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pf-dd-opt.is-sel{background:color-mix(in srgb,var(--accent) 16%,transparent);color:color-mix(in srgb,var(--accent) 55%,var(--ink));font-weight:600}

/* Upload documento: drag-zone CSS, input file nascosto */
.sic-upload{margin-top:2px}
.sic-drop{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px dashed color-mix(in srgb,var(--line) 80%,var(--ink-soft));border-radius:var(--radius);background:color-mix(in srgb,var(--bg-2) 50%,transparent);cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast)}
.sic-drop:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}
.sic-drop.is-drag{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.sic-drop.has-file{border-style:solid;border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 8%,transparent)}
.sic-drop svg{width:22px;height:22px;color:var(--ink-soft);flex:none}
.sic-drop b{font-size:13.5px;color:var(--ink);font-weight:650}
.sic-drop small{display:block;font-size:12px;color:var(--ink-soft);margin-top:1px;word-break:break-all}
.sic-hint{font-size:12px;color:var(--ink-soft);margin-top:6px;line-height:1.4}
.sic-doc-line{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:8px}
.sic-doc-cur{font-size:12.5px;font-weight:600;color:var(--ink-soft);text-decoration:none}
.sic-doc-cur:hover{text-decoration:underline}
.sic-doc-del{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-soft)}
.sic-doc-del input{width:auto}
.sic-extra{font-style:normal;font-size:11.5px;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.sic-doccell{display:flex;flex-direction:column;gap:5px;align-items:flex-start;min-width:0}
.sic-doccell .sic-doc{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sic-doclist{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}
.sic-docitem{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius)}
.sic-docitem .sic-doc-cur{display:inline-flex;align-items:center;gap:7px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sic-docitem .sic-doc-cur svg{width:15px;height:15px;flex:none}
.sic-docitem .sic-doc-del{flex:none}
.sic-form-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

@media(max-width:760px){
  .sic-tr,.sic-th{grid-template-columns:1fr auto;gap:8px 12px}
  .sic-th{display:none}
  .sic-tr-adm{grid-template-columns:1fr auto}
  .sic-name{grid-column:1/-1}
  .sic-actions{grid-column:1/-1;justify-content:flex-start}
  .sic-form-grid{grid-template-columns:1fr}
  .sic-col-2{grid-column:auto}
}

/* ════════════════ Header a due livelli (servizi + sottomenu) ════════════════ */
.pf-topbar{background:color-mix(in srgb,var(--bg-0) 84%,transparent);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid var(--line);box-shadow:0 10px 28px -22px rgba(31,30,29,.55)}
.pf-topbar-main .inner{align-items:center}
/* Menu aree SEMPRE al centro, identico su ogni pagina. Con flex+space-between il
   menu stava a metà tra logo e controlli, e siccome i controlli a destra cambiano
   da pagina a pagina (es. selettore anno solo su Presenze/Buste), il menu si
   spostava. Griglia 3 colonne coi lati di peso uguale (1fr | auto | 1fr) → la
   colonna centrale è sempre al centro del viewport, a prescindere dai lati. Solo
   da tablet in su; sotto i 761px resta lo scorrimento orizzontale della nav. */
@media(min-width:761px){
  .pf-topbar .pf-topbar-main .inner{display:grid;grid-template-columns:1fr auto 1fr;gap:16px}
  .pf-topbar-main .pf-brand{justify-self:start}
  .pf-topbar-main .pf-svcnav{justify-self:center}
  .pf-topbar-main .pf-topactions{justify-self:end}
}

/* Riga 1 — aree: SOLO ICONA + nome corto sotto (sempre visibile). Al passaggio
   del mouse si ingrandisce SOLO l'icona sotto il cursore, con zoom morbido; le
   vicine restano ferme. Nome/hover/attiva tinti col colore dell'area (--area,
   impostato inline per ogni voce). */
.pf-svcnav{display:flex;align-items:flex-end;gap:2px}
.pf-svc{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;width:64px;padding:10px 2px 6px;border-radius:12px;color:var(--ink-soft);text-decoration:none;flex:0 0 auto;transition:color .2s ease}
.pf-svc-ico{width:23px;height:23px;display:block;transform-origin:center bottom;transition:transform .34s cubic-bezier(.2,.9,.25,1),color .2s;will-change:transform}
.pf-svc-ico svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pf-svc-lbl{font-size:10px;font-weight:700;letter-spacing:.02em;line-height:1;white-space:nowrap;transition:color .2s}
.pf-svc:hover{color:var(--ink)}
.pf-svc:hover .pf-svc-ico{transform:scale(1.42)}
.pf-svc:hover .pf-svc-lbl{color:var(--area,var(--accent))}
.pf-svc:focus-visible{outline:2px solid var(--area,var(--accent));outline-offset:2px}
.pf-svc.is-active{color:var(--area,var(--accent))}
.pf-svc.is-active .pf-svc-lbl{color:var(--area,var(--accent))}
.pf-svc.is-active::after{content:"";position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:16px;height:2px;border-radius:2px;background:var(--area,var(--accent))}
@media(prefers-reduced-motion:reduce){.pf-svc-ico{transition:color .2s}.pf-svc:hover .pf-svc-ico{transform:none}}

/* Riga 2 — sottomenu dell'area */
.pf-subbar{background:var(--bg-1);border-bottom:1px solid var(--line);animation:pf-subin .28s ease both}
@keyframes pf-subin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.pf-subbar .inner{height:46px;align-items:center}
.pf-subnav{display:flex;align-items:center;gap:6px;width:100%}
.pf-subvoce{position:relative;display:inline-flex;align-items:center;padding:7px 13px;border-radius:var(--radius);font-size:12.5px;font-weight:500;color:var(--ink-soft);text-decoration:none;transition:color .18s ease,background .18s ease,transform .16s ease}
.pf-subvoce:hover{color:var(--ink);background:var(--bg-2);transform:translateY(-1px)}
.pf-subvoce.is-active{color:var(--ink);background:var(--bg-2);box-shadow:inset 0 0 0 1px var(--line)}
.pf-subvoce.is-right{margin-left:0}
/* Regola globale: il sotto-menu di sezione (2ª riga) è centrato come le aree
   principali, da tablet in su — così l'header è coerente su TUTTE le sezioni.
   Le eventuali voci "a destra" rientrano nel gruppo centrato. Sotto 761px resta
   allineato a sinistra con scroll (centrare in overflow taglierebbe le prime voci). */
@media(min-width:761px){ .pf-subnav{justify-content:center} }

@media(max-width:760px){
  .pf-svcnav,.pf-subnav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .pf-svcnav::-webkit-scrollbar,.pf-subnav::-webkit-scrollbar{display:none}
  .pf-svc,.pf-subvoce{white-space:nowrap;flex:0 0 auto}
}

/* ════════════════ Movimento & dinamicità (hover, ombre, transizioni) ════════════════ */
@keyframes pf-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* Solo opacità sul contenitore: 'pf-rise' lasciava un transform residuo (fill both) che
   crea un containing-block e intrappola i modali position:fixed, ritagliando l'overlay
   alla colonna centrale (bande chiare ai lati). Il contenitore non deve mai avere transform. */
@keyframes pf-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:no-preference){
  .pf-main{animation:pf-fade .4s ease both}
  .pf-main>.sec,.pf-main>.hero,.pf-main>.hub-hero,.pf-main>.hub-areas,.pf-main>.pf-checklist,.pf-main>.pf-now{animation:pf-rise .45s ease both}
  .pf-main>*:nth-child(2){animation-delay:.05s}
  .pf-main>*:nth-child(3){animation-delay:.1s}
  .pf-main>*:nth-child(4){animation-delay:.15s}
  .pf-main>*:nth-child(5){animation-delay:.2s}
}
/* Pulsanti: lieve sollevamento + ombra */
.btn{transition:background .18s ease,border-color .18s ease,color .18s ease,transform .14s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0) scale(.99)}
.btn-primary:hover{box-shadow:0 6px 16px -6px color-mix(in srgb,var(--accent) 60%,transparent)}
:root[data-pim-theme="dark"] .btn-primary:hover{box-shadow:0 6px 16px -6px color-mix(in srgb,var(--pim-accent) 60%,transparent)}
.btn-secondary:hover{box-shadow:0 4px 12px -8px rgba(31,30,29,.4)}
/* Chip utente e icon button */
.pf-user{transition:border-color .18s ease,transform .16s ease,box-shadow .18s ease}
.pf-user:hover{transform:translateY(-1px);box-shadow:0 4px 12px -7px rgba(31,30,29,.45)}
.pf-icon-btn{transition:background .18s ease,border-color .18s ease,transform .16s ease,color .18s ease}
.pf-icon-btn:hover{transform:translateY(-1px)}
.pf-icon-btn svg{transition:transform .25s ease}
.pf-icon-btn:hover svg{transform:rotate(18deg)}
/* Card: sollevamento + ombra all'hover */
.pf-card{transition:transform .2s ease,box-shadow .22s ease,border-color .2s ease}
.pf-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(31,30,29,.5);border-color:color-mix(in srgb,var(--accent) 32%,var(--line))}
.cert-card{transition:transform .2s ease,box-shadow .22s ease,border-color .2s ease}
.cert-card:not(.locked):hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(31,30,29,.5)}
.pf-now-card{transition:transform .2s ease,box-shadow .22s ease,border-color .2s ease}
.pf-now-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(31,30,29,.5);border-color:color-mix(in srgb,var(--accent) 32%,var(--line))}
/* Righe registro sicurezza + checklist: micro-feedback */
.sic-tr{transition:background .16s ease}
.sic-tr:not(.sic-th):hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}
.pf-chk-item{transition:transform .16s ease,box-shadow .2s ease}
.pf-chk-item:hover{transform:translateY(-1px);box-shadow:0 8px 20px -16px rgba(31,30,29,.5)}
.sic-doc,.pf-chk-cta,.hub-area-cta{transition:transform .16s ease,opacity .16s ease}
.sic-doc:hover{transform:translateX(1px)}
.pf-svc::after,.btn,.pf-card{will-change:transform}

/* Avvisi & scadenze (gestione Sicurezza) */
.sic-toggle{display:flex;align-items:flex-start;gap:12px;cursor:pointer}
.sic-toggle input{margin-top:3px;width:auto;flex:none}
.sic-toggle-tx b{display:block;font-size:14px;color:var(--ink)}
.sic-toggle-tx small{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:1px}
.sic-leads{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.sic-lead{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg-2);font-size:12.5px;color:var(--ink-soft);cursor:pointer;transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}
.sic-lead:hover{color:var(--ink)}
.sic-lead input{width:auto;flex:none;margin:0}
.sic-lead:has(input:checked){border-color:color-mix(in srgb,var(--accent) 50%,var(--line));background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--ink)}
.sic-actions-row{display:flex;flex-wrap:wrap;gap:10px}
.sic-actions-row form{margin:0}

/* Utenti (Impostazioni) — variante avatar foto + testo muto */
.mg-ava-img{background-size:cover;background-position:center;background-repeat:no-repeat;color:transparent;font-size:0}
.mg-muted{color:var(--ink-mute)}
.mg-person-tx{min-width:0}

/* Dipendenti per-persona (form adempimento) */
.sic-people{display:flex;flex-direction:column;gap:8px}
.sic-people-head,.sic-person{display:grid;grid-template-columns:minmax(0,1.5fr) 138px 138px minmax(0,1fr) 52px;gap:10px;align-items:center}
.sic-people-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);padding:2px 2px 2px}
.sic-person{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}
.sic-person input[type=text],.sic-person input[type=date]{width:100%}
.sic-person-scad{font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.sic-person-doc{display:flex;align-items:center;gap:8px;min-width:0;font-size:12px}
/* Pulsante "Carica attestato" custom (niente input file nativo) */
.sic-file-btn{display:inline-flex;align-items:center;gap:6px;min-width:0;cursor:pointer;font-size:12px;font-weight:600;color:var(--ink-soft);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-pill);padding:5px 11px;transition:color .15s ease,border-color .15s ease,background .15s ease}
.sic-file-btn:hover{color:var(--ink);border-color:var(--ink-mute)}
.sic-file-btn svg{width:14px;height:14px;flex:none}
.sic-file-btn .sic-file-tx{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sic-file-btn input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}
.sic-file-btn.has-file{color:var(--accent-strong,var(--accent));border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,transparent)}
.sic-person-rm{color:var(--err);padding:4px 8px}
@media(max-width:760px){
  .sic-people-head{display:none}
  .sic-person{grid-template-columns:1fr 1fr;gap:8px}
  .sic-person-doc,.sic-person-rm{grid-column:1/-1}
}

/* Dashboard — "Cosa manca" per area (visione a colpo d'occhio) */
.pf-areas-todo{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.pf-areatodo{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1)}
.pf-areatodo.is-ok{opacity:.92}
.pf-areatodo.is-ok .pf-areatodo-head{margin-bottom:0;padding-bottom:0;border-bottom:0}
.pf-areatodo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line-soft)}
.pf-areatodo-head a{font-size:14.5px;font-weight:650;color:var(--ink);text-decoration:none;transition:color var(--t-fast)}
.pf-areatodo-head a:hover{color:var(--accent)}
.pf-at-n{flex:none;min-width:22px;height:22px;padding:0 7px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn);font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.pf-at-ok{flex:none;font-size:12px;font-weight:650;color:var(--ok)}
.pf-at-empty{margin:0;font-size:13px;color:var(--ink-mute)}
.pf-at-row{display:flex;align-items:flex-start;gap:11px;padding:9px 10px;margin:0 -10px;border-top:1px solid var(--line-soft);border-radius:var(--radius);transition:background var(--t-fast),transform var(--t-fast)}
.pf-at-row + .pf-at-row{border-top:1px solid var(--line-soft)}
.pf-at-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);transform:translateX(2px)}
.pf-at-row:hover .pf-chk-cta{color:var(--accent)}
.pf-at-row:first-of-type{border-top:0}
.pf-at-ico{flex:none;display:grid;place-items:center;width:20px;height:20px;color:var(--ink-mute);margin-top:1px}
.pf-at-ico svg{width:16px;height:16px}
.pf-at-row.is-scad .pf-at-ico{color:var(--warn)}
.pf-at-dot{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--accent) 55%,var(--line));margin:7px 6px 0}
.pf-at-tx{flex:1;min-width:0}
.pf-at-tx b{display:block;font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.3}
.pf-at-tx span{display:block;font-size:12px;color:var(--ink-soft);margin-top:1px}
.pf-at-row.is-scad .pf-at-tx span{color:var(--warn);font-weight:600}
.pf-at-row .pf-chk-cta{flex:none;align-self:center}

/* Dashboard layout 2/3 + 1/3 */
.hub-sectitle{font-size:18px;font-weight:700;color:var(--ink);margin:8px 0 14px}
.hub-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}
.hub-gmain{min-width:0;display:flex;flex-direction:column;gap:26px}
.hub-gside{min-width:0}
/* Box completamento per area (uniformi) */
.hub-prog{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.hub-progbox{display:block;text-decoration:none;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1);transition:transform .18s ease,box-shadow .2s ease,border-color .18s ease}
.hub-progbox:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent) 32%,var(--line))}
.hub-progtop{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.hub-prog-name{font-size:14px;font-weight:650;color:var(--ink)}
.hub-prog-pct{font-size:20px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}
.hub-progbox.is-ok .hub-prog-pct{color:var(--ok)}
.hub-progbar{height:7px;border-radius:6px;background:var(--bg-2);overflow:hidden}
.hub-progbar i{display:block;height:100%;border-radius:6px;background:var(--accent);transition:width .5s ease}
.hub-progbox.is-ok .hub-progbar i{background:var(--ok)}
.hub-prog-sub{margin-top:8px;font-size:12px;color:var(--ink-soft)}
.hub-progbox.is-ok .hub-prog-sub{color:var(--ok);font-weight:600}
/* Pannello laterale "Da sistemare" */
.hub-side-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1);position:sticky;top:80px}
.hub-side-head{font-size:14px;font-weight:700;color:var(--ink);padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid var(--line-soft)}
.hub-side-area{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin:12px 0 2px}
.hub-side-card .pf-at-row{padding:8px 8px;margin:0 -8px}
.hub-side-more{display:inline-block;margin:6px 0 2px;font-size:12.5px;font-weight:600;color:var(--accent);text-decoration:none}
.hub-side-more:hover{color:var(--accent)}
@media(max-width:880px){
  .hub-grid{grid-template-columns:1fr}
  .hub-side-card{position:static}
}

.hub-subtitle{font-size:16px;font-weight:700;color:var(--ink);margin:0 0 4px}

/* Toggle interno/esterno (campo responsabile con scelta) */
.sic-respwrap{display:flex;flex-direction:column;gap:8px}
.sic-resp-label{font-size:12.5px;font-weight:650;color:var(--ink-soft)}
.sic-inout{display:inline-flex;gap:3px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:3px;width:max-content}
.sic-inout-opt{display:inline-flex;align-items:center;padding:5px 14px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}
.sic-inout-opt input{position:absolute;opacity:0;width:0;height:0}
.sic-inout-opt:has(input:checked){background:var(--accent);color:var(--accent-ink)}
.sic-resp-ext input{width:100%}
.sic-person .sic-select{min-width:0}

/* Pagina Utenti — matrice per area */
.ut-cell{vertical-align:top}
.ut-ok{color:var(--ok);font-weight:600;font-size:13px}
.ut-miss{display:block;font-size:12px;color:var(--warn);font-weight:600;line-height:1.5}
.ut-miss::before{content:"•";color:var(--warn);margin-right:6px}

/* Utenti — accordion dettaglio */
.ut-row{cursor:pointer}
.ut-row:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}
.ut-caret{display:inline-flex;color:var(--ink-mute);margin-right:2px;transition:transform .2s ease}
.ut-caret svg{width:15px;height:15px}
.ut-row.is-open .ut-caret{transform:rotate(90deg);color:var(--accent)}
.mg-person{gap:8px}
.ut-detrow > td{background:color-mix(in srgb,var(--bg-2) 55%,transparent);padding:0!important}
.ut-det{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;padding:18px;animation:pf-rise .25s ease both}
/* box di sezione */
.ut-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:15px 16px;box-shadow:var(--shadow-1)}
.ut-card-todo{grid-column:1/-1}.ut-card-todo.is-warn{border-color:color-mix(in srgb,var(--warn) 38%,var(--line));background:color-mix(in srgb,var(--warn) 4%,var(--bg-1))}.ut-card-todo.is-ok{border-color:color-mix(in srgb,var(--ok) 35%,var(--line))}
.ut-todo-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.ut-todo{padding:10px 11px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--warn) 30%,var(--line));background:color-mix(in srgb,var(--warn) 7%,transparent)}.ut-todo b,.ut-todo span{display:block}.ut-todo b{font-size:12px;color:var(--warn)}.ut-todo span{margin-top:3px;font-size:12.5px;color:var(--ink)}.ut-todo a,.ut-stat-tx a{display:inline-block;margin-top:7px;font-size:12px;font-weight:700;color:var(--accent)}.ut-todo em{display:block;margin-top:7px;font-size:12px;color:var(--ink-mute);font-style:normal}.ut-all-done{margin:0;color:var(--ok);font-size:13px}
.ut-todo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:10px}
.ut-todo-actions form{margin:0}
.ut-todo-actions .btn{margin:0;min-height:30px}
.ut-copy.is-copied{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 10%,var(--bg-1))}
.ut-send-all{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--warn) 24%,var(--line))}
.ut-send-all small{font-size:11.5px;color:var(--ink-mute);line-height:1.4;max-width:430px}
@media(max-width:560px){.ut-send-all{align-items:stretch}.ut-send-all .btn{width:100%}.ut-todo-actions .btn{flex:1}}
.ut-card-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);margin-bottom:12px}
.ut-card-head svg{width:17px;height:17px;color:var(--accent);flex:none}
.ut-badge{margin-left:auto;font-size:11.5px;font-weight:700;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 9px;text-transform:none;letter-spacing:0}
.ut-badge.is-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,var(--line));background:color-mix(in srgb,var(--ok) 10%,transparent)}
/* profilo */
.ut-prof{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.ut-prof-ava{width:44px;height:44px;border-radius:50%;flex:none;background-size:cover;background-position:center;display:grid;place-items:center;background-color:color-mix(in srgb,var(--accent) 16%,var(--bg-1));color:var(--accent);font-weight:700}
.ut-prof-main{min-width:0}
.ut-prof-main b{display:block;font-size:14.5px;color:var(--ink)}
.ut-prof-main span{display:block;font-size:12.5px;color:var(--ink-soft)}
.ut-dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:7px 12px;font-size:12.5px;border-top:1px solid var(--line-soft);padding-top:11px}
.ut-dl dt{color:var(--ink-mute)}
.ut-dl dd{margin:0;color:var(--ink);text-align:right;word-break:break-word}
/* barra completamento */
.ut-bar{height:7px;border-radius:6px;background:var(--bg-2);overflow:hidden;margin-bottom:13px}
.ut-bar i{display:block;height:100%;border-radius:6px;background:var(--accent);transition:width .5s ease}
.ut-bar.is-ok i{background:var(--ok)}
/* moduli */
.ut-mods{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.ut-mods li{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px;padding:6px 9px;border-radius:var(--radius);background:color-mix(in srgb,var(--bg-2) 45%,transparent)}
.ut-mods li.is-done{background:color-mix(in srgb,var(--ok) 8%,transparent)}
.ut-mod-t{color:var(--ink);min-width:0}
.ut-pill-row{display:flex;align-items:center;gap:8px;margin-top:11px;font-size:12.5px;color:var(--ink-soft);padding:8px 10px;border-radius:var(--radius);background:var(--bg-2)}
.ut-pill-row svg{width:16px;height:16px;flex:none}
.ut-pill-row b{color:var(--ink)}
.ut-pill-row.is-ok{color:var(--ok)}.ut-pill-row.is-ok svg,.ut-pill-row.is-ok b{color:var(--ok)}
.ut-pill-row.is-warn{color:var(--warn)}.ut-pill-row.is-warn svg,.ut-pill-row.is-warn b{color:var(--warn)}
/* salute e sicurezza */
.ut-stats{display:flex;flex-direction:column;gap:8px}
.ut-stat{display:flex;align-items:flex-start;gap:10px;padding:10px 11px;border-radius:var(--radius);border:1px solid var(--line)}
.ut-stat.is-ok{background:color-mix(in srgb,var(--ok) 7%,transparent);border-color:color-mix(in srgb,var(--ok) 30%,var(--line))}
.ut-stat.is-warn{background:color-mix(in srgb,var(--warn) 8%,transparent);border-color:color-mix(in srgb,var(--warn) 32%,var(--line))}
.ut-stat.is-idle{background:color-mix(in srgb,var(--ink-mute) 5%,transparent)}
.ut-stat-ico{flex:none;margin-top:1px}
.ut-stat-ico svg{width:17px;height:17px}
.ut-stat.is-ok .ut-stat-ico{color:var(--ok)}.ut-stat.is-warn .ut-stat-ico{color:var(--warn)}
.ut-stat-tx{min-width:0}
.ut-stat-tx b{display:block;font-size:13px;color:var(--ink)}
.ut-stat-tx span{display:block;font-size:12px;color:var(--ink-soft);margin-top:1px}
.ut-roles{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.ut-role{font-size:11.5px;font-weight:600;color:color-mix(in srgb,var(--accent) 55%,var(--ink));background:color-mix(in srgb,var(--accent) 13%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:var(--radius-pill);padding:3px 10px}

/* Tabelle Utenti: niente scroll-clip (3 colonne fisse), così i tooltip CSS escono */
.mg-tablewrap.ut-wrap{overflow:visible}

/* Colonna "Conformità": un pallino per area + conteggio (scala con le aree) */
.ut-conf{display:inline-flex;align-items:center;gap:14px}
.ut-conf-area{display:inline-flex;align-items:center;gap:5px;color:var(--ink-soft)}
.ut-conf-area svg{width:17px;height:17px;flex:none}
.ut-conf-dot{width:9px;height:9px;border-radius:50%;flex:none}
/* Icona stato 2FA nella lista utenti */
.ut-2fa{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:30px;height:30px;border-radius:50%;margin-right:6px}
.ut-2fa svg{width:17px;height:17px}
.ut-2fa.is-on{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent)}
.ut-2fa.is-off{color:var(--ink-mute);background:color-mix(in srgb,var(--bg-2) 55%,transparent)}
/* Pagina dedicata utente */
.ut-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-soft);text-decoration:none;margin-bottom:16px}
.ut-back:hover{color:var(--accent)}
.ut-back svg{width:16px;height:16px}
.ut-pg-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:0 0 24px}
.ut-pg-ava{width:64px;height:64px;border-radius:50%;background-size:cover;background-position:center;flex:none;display:inline-flex;align-items:center;justify-content:center;background-color:var(--bg-2)}
.ut-pg-ini{font-size:24px;font-weight:680;color:var(--ink-soft)}
.ut-pg-id{flex:1;min-width:0}
.ut-pg-id h1{margin:0 0 3px;font-size:24px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ut-pg-id p{margin:0;font-size:14px;color:var(--ink-soft)}
.ut-pg-2fa{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:650;padding:7px 13px;border-radius:var(--radius-pill);border:1px solid var(--line)}
.ut-pg-2fa svg{width:15px;height:15px}
.ut-pg-2fa.is-on{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:color-mix(in srgb,var(--ok) 40%,var(--line))}
.ut-pg-2fa.is-off{color:var(--ink-mute);background:color-mix(in srgb,var(--bg-2) 55%,transparent)}
/* Anagrafica estesa */
.ut-ana{margin-top:22px}
.ut-ana-cards{display:flex;flex-direction:column;gap:16px}
.ut-ana-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px}
.ut-ana-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px;margin-top:12px}
.ut-ana-grid .pf-fld{display:flex;flex-direction:column;gap:5px}
.ut-ana-grid .pf-fld-lab{font-size:12px;color:var(--ink-mute);font-weight:600}
.ut-radios{display:flex;gap:14px;align-items:center;padding-top:6px}
.ut-radio{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--ink);cursor:pointer}
.ut-radio input{width:16px;height:16px;accent-color:var(--accent)}
.ut-ana-foot{margin-top:18px;display:flex;gap:10px;justify-content:flex-end}
.ut-tipo-val{font-size:14px;color:var(--ink);font-weight:560}
.ut-pg-editbtn{flex:none}
.ut-pg-editbtn svg{width:15px;height:15px}
/* Vista lettura anagrafica (scheda, non form) */
.ut-readdl{margin:12px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 18px}
.ut-readrow{display:flex;flex-direction:column;gap:2px;min-width:0}
.ut-readrow dt{font-size:11.5px;color:var(--ink-mute);font-weight:600;margin:0}
.ut-readrow dd{margin:0;font-size:14.5px;color:var(--ink);word-break:break-word}
.ut-readrow dd.is-empty{color:var(--ink-mute)}
@media(max-width:760px){.ut-readdl{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ut-readdl{grid-template-columns:1fr}}
@media(max-width:760px){.ut-ana-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ut-ana-grid{grid-template-columns:1fr}}
.ut-conf-ok{background:var(--ok)}
.ut-conf-warn{background:var(--warn)}
.ut-conf-na{background:color-mix(in srgb,var(--ink-mute) 50%,transparent)}
.ut-conf-count{font-size:12px;font-weight:600;color:var(--ink-soft);margin-left:2px}
.ut-conf-count.is-ok{color:var(--ok)}

/* Legenda aree + stati (una volta sola, sopra le tabelle) */
.ut-legend{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;margin:0 0 16px;padding:10px 14px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg)}
.ut-legend-grp{display:inline-flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.ut-legend-area{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink-soft)}
.ut-legend-area svg{width:16px;height:16px;color:var(--ink-soft)}
.ut-legend-st{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-soft)}

/* Titoli delle tabelle per categoria (Dirigenza / Dipendenti / Autonomi) */
.ut-group{margin-top:24px}
.ut-group:first-of-type{margin-top:4px}
.ut-cat-title{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0 0 10px}
.ut-cat-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;font-weight:700;letter-spacing:0;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill)}

/* Badge tipo rapporto nella riga utenti */
.ut-tbadge{display:inline-block;vertical-align:middle;font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:var(--radius-pill);padding:2px 8px;margin-left:7px;line-height:1.5;border:1px solid var(--line)}
.ut-tbadge-amministratore{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}
.ut-tbadge-dipendente{color:color-mix(in srgb,var(--accent) 60%,var(--ink));background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}
.ut-tbadge-tirocinante,.ut-tbadge-stagista{color:color-mix(in srgb,var(--warn) 72%,var(--ink));background:color-mix(in srgb,var(--warn) 14%,transparent);border-color:color-mix(in srgb,var(--warn) 32%,var(--line))}
.ut-tbadge-autonomo{color:var(--ink-soft);background:var(--bg-2);border-color:var(--line)}

/* Radio tipo rapporto come pillole uniformi (modale invito) */
.sic-inout-wrap{display:flex;flex-wrap:wrap;width:auto;gap:7px;background:none;border:0;padding:0}
.sic-inout-wrap .sic-inout-opt{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg-1)}

/* Tipo rapporto nel dettaglio utente — set di pillole che vanno a capo ordinate */
.ut-tipo{display:flex;flex-direction:column;gap:9px;margin-top:13px;padding-top:13px;border-top:1px dashed var(--line)}
.ut-tipo-lab{font-size:12.5px;font-weight:600;color:var(--ink-soft)}
.ut-tipo-lab small{font-weight:400;color:var(--ink-mute)}
.ut-tipo form{display:flex;flex-wrap:wrap;gap:7px}
.ut-tipo .ut-clear{color:var(--ink-mute);padding:6px 11px}
.ut-tipo button{appearance:none;cursor:pointer;font:inherit;font-size:12.5px;font-weight:600;color:var(--ink-soft);background:var(--bg-1);border:1px solid var(--line);padding:6px 15px;border-radius:var(--radius-pill);transition:background .15s ease,color .15s ease,border-color .15s ease}
.ut-tipo button:hover{color:var(--ink);border-color:var(--ink-mute)}
.ut-tipo button.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:var(--shadow-1)}

/* Vista lavoratore — Salute e Sicurezza */
.sicm-refs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.sicm-ref{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:13px 15px;box-shadow:var(--shadow-1)}
.sicm-ref-t{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin-bottom:5px}
.sicm-ref b{font-size:14px;color:var(--ink)}
.sicm-ref-c{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:5px;line-height:1.45}
.sicm-note{font-size:13px;color:var(--ink-soft);margin:0 0 12px}
/* Barra "anteprima come dipendente" */
.pf-preview-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between;padding:12px 16px;margin-bottom:20px;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--bg-1))}
.pf-preview-tx{font-size:13px;color:var(--ink-soft);line-height:1.45}
/* Selettore anteprima dipendenti (Registro admin) */
.sic-preview-picker{display:flex;flex-wrap:wrap;gap:10px}
.sic-preview-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg-1);color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;transition:border-color .15s,transform .15s,box-shadow .15s}
.sic-preview-chip:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-1)}
.sic-preview-vis{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}
.sic-preview-vis.is-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}
.sic-preview-vis.is-warn{color:var(--warn);background:color-mix(in srgb,var(--warn) 16%,transparent)}
/* Lista dipendenti senza presa visione DVR (Avvisi) */
.sic-vis-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sic-vis-chip{font-size:12.5px;padding:4px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--warn) 30%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--bg-1));color:var(--ink)}
/* Etichetta "Ultima revisione" sopra la data (documenti a revisione, non scadenze) */
.sic-scad-lbl{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);margin-bottom:1px}
.sicm-note b{color:var(--ink)}
.sicm-dvr{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-2);height:520px}
.sicm-dvr object{width:100%;height:100%;border:0}

/* Switch "Vedi come Admin / Utente" + banner anteprima */
.pf-viewsw{display:inline-flex;gap:2px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:3px}
.pf-viewsw a{font-size:12px;font-weight:600;color:var(--ink-soft);text-decoration:none;padding:5px 11px;border-radius:var(--radius-pill);transition:background var(--t-fast),color var(--t-fast)}
.pf-viewsw a:hover{color:var(--ink)}
.pf-viewsw a.is-on{background:var(--accent);color:var(--accent-ink)}
/* Toggle vista a ICONE (admin / dipendente) */
.pf-viewsw-ico a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:30px;padding:0;color:var(--ink-mute)}
.pf-viewsw-ico a svg{width:17px;height:17px}
.pf-viewsw-ico a.is-on{color:var(--accent-ink)}
.pf-viewsw-ico a:not(.is-on):hover{color:var(--ink);background:var(--bg-1)}

/* Menu sulla foto profilo (hover/focus) */
.pf-usermenu{position:relative;display:inline-flex}
.pf-usermenu>.pf-user{cursor:pointer}
.pf-usermenu-pop{position:absolute;z-index:70;top:calc(100% + 8px);right:0;min-width:220px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 12px 30px -12px rgba(31,30,29,.45);padding:6px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s;pointer-events:none}
.pf-usermenu::after{content:"";position:absolute;top:100%;right:0;width:60px;height:10px}
.pf-usermenu:hover .pf-usermenu-pop,.pf-usermenu:focus-within .pf-usermenu-pop{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.pf-usermenu-head{padding:8px 10px 9px;border-bottom:1px solid var(--line-soft);margin-bottom:4px;display:flex;flex-direction:column;gap:1px;min-width:0}
.pf-usermenu-head b{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-usermenu-head span{font-size:11.5px;color:var(--ink-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-usermenu-pop a{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:var(--radius);font-size:13px;color:var(--ink);text-decoration:none}
.pf-usermenu-pop a:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pf-usermenu-pop a svg{width:16px;height:16px;flex:none;color:var(--ink-soft)}
.pf-usermenu-sep{height:1px;background:var(--line);margin:5px 4px}
.pf-usermenu-pop a.pf-usermenu-exit{color:var(--err)}
.pf-usermenu-pop a.pf-usermenu-exit svg{color:var(--err)}
.pf-usermenu-pop a.pf-usermenu-exit:hover{background:color-mix(in srgb,var(--err) 10%,transparent)}
/* Selettore ANNO globale (badge in topbar, allineato a destra) */
.pf-yearsw{position:relative;display:inline-flex;outline:none}
.pf-yearsw-btn{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:var(--bg-0);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;user-select:none;transition:border-color .15s ease,background .15s ease}
.pf-yearsw:hover .pf-yearsw-btn,.pf-yearsw:focus-within .pf-yearsw-btn{border-color:var(--accent);background:var(--bg-1)}
.pf-yearsw-btn>svg{width:15px;height:15px;flex:none;color:var(--ink-soft)}
.pf-yearsw-btn .pf-yearsw-chev{width:13px;height:13px;transition:transform .15s ease}
.pf-yearsw:hover .pf-yearsw-chev,.pf-yearsw:focus-within .pf-yearsw-chev{transform:rotate(180deg)}
.pf-yearsw::after{content:"";position:absolute;top:100%;right:0;width:100%;height:10px}
.pf-yearsw-pop{position:absolute;z-index:70;top:calc(100% + 8px);right:0;min-width:160px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 12px 30px -12px rgba(31,30,29,.45);padding:6px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s;pointer-events:none}
.pf-yearsw:hover .pf-yearsw-pop,.pf-yearsw:focus-within .pf-yearsw-pop{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.pf-yearsw-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-radius:var(--radius);font-size:13px;font-weight:600;color:var(--ink);text-decoration:none}
.pf-yearsw-item:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pf-yearsw-item.is-on{background:var(--accent);color:var(--accent-ink)}
.pf-yearsw-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 7px;border-radius:999px;background:var(--bg-2,var(--bg-1));color:var(--ink-mute)}
.pf-yearsw-item.is-on .pf-yearsw-tag{background:color-mix(in srgb,var(--accent-ink) 22%,transparent);color:var(--accent-ink)}
.pf-yearsw-tag-next{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}
.pf-viewbanner{display:flex;align-items:center;gap:9px;justify-content:center;font-size:13px;color:var(--accent-ink);background:var(--accent);padding:8px 16px}
.pf-viewbanner svg{width:16px;height:16px;flex:none}
.pf-viewbanner b{font-weight:700}
.pf-viewbanner a{color:var(--accent-ink);text-decoration:underline;font-weight:600;margin-left:4px}
@media(max-width:600px){.pf-viewsw a{padding:5px 9px}}

/* ════════════════ Area Privacy & GDPR ════════════════ */
/* Badge stato documento/punto */
.pgd-st{display:inline-flex;align-items:center;white-space:nowrap;font-size:11.5px;font-weight:700;letter-spacing:.01em;border-radius:var(--radius-pill);padding:3px 11px;border:1px solid var(--line)}
.pgd-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 42%,var(--line))}
.pgd-val{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}
.pgd-warn{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent);border-color:color-mix(in srgb,var(--warn) 42%,var(--line))}
.pgd-bozza{color:var(--ink-mute);background:color-mix(in srgb,var(--bg-2) 55%,transparent)}
.pgd-todo{color:var(--err);background:color-mix(in srgb,var(--err) 11%,transparent);border-color:color-mix(in srgb,var(--err) 38%,var(--line))}
/* Cruscotto: punti */
.pgd-points{display:flex;flex-direction:column;gap:10px}
.pgd-point{display:flex;gap:14px;align-items:flex-start;padding:15px 18px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg)}
.pgd-pn{flex:none;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pgd-pn-tv{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent)}
.pgd-pn-tv svg{width:16px;height:16px}
.pgd-pbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.pgd-prow{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}
.pgd-prow b{font-size:15px;color:var(--ink);font-weight:640}
.pgd-note{margin:0;font-size:12.5px;color:var(--ink-soft);line-height:1.45}
.pgd-chips{display:flex;flex-wrap:wrap;gap:7px}
.pgd-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:4px 11px;text-decoration:none}
.pgd-chip:hover{border-color:var(--accent);color:var(--accent)}
.pgd-chip-stub{opacity:.7;border-style:dashed}
.pgd-chip-yaml{font-weight:600}
.pgd-chip-na{opacity:.6;cursor:default}
.pgd-dot{width:8px;height:8px;border-radius:50%;flex:none;background:currentColor}
.pgd-dot.pgd-ok{color:var(--ok)}.pgd-dot.pgd-val{color:var(--accent)}.pgd-dot.pgd-warn{color:var(--warn)}.pgd-dot.pgd-bozza{color:var(--ink-mute)}.pgd-dot.pgd-todo{color:var(--err)}
/* Verifiche + fuori scope */
.pgd-twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pgd-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px}
.pgd-card-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin-bottom:12px}
.pgd-verifica{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-soft);padding:6px 0}
.pgd-fuori{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-soft)}
.pgd-fuori b{color:var(--ink)}
/* Elenco documenti */
.pgd-filtri{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.pgd-filtro{font-size:12.5px;color:var(--ink-soft);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-pill);padding:5px 13px;text-decoration:none}
.pgd-filtro.is-on,.pgd-filtro:hover{color:var(--accent);border-color:var(--accent)}
.pgd-th,.pgd-tr{grid-template-columns:minmax(0,2.6fr) 1fr .6fr 1.1fr .9fr}
.pgd-tr{text-decoration:none;color:inherit;cursor:pointer}
.pgd-tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.pgd-doc-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-doc-name b{font-size:14px;color:var(--ink);font-weight:600}
.pgd-stub-tag{font-size:11px;font-style:normal;color:var(--ink-mute);background:var(--bg-2);border-radius:var(--radius-pill);padding:1px 8px;align-self:flex-start}
.pgd-mod{font-size:12.5px;color:var(--ink-soft)}
.pgd-tv{font-style:normal;color:var(--ink-mute);font-size:12px}
/* Dettaglio documento */
.pgd-doc{max-width:920px}
.pgd-doc-head{margin:8px 0 18px}
.pgd-doc-eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:5px}
.pgd-doc-head h1{margin:0 0 12px}
.pgd-doc-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pgd-mtag{font-size:12.5px;color:var(--ink-soft)}
.pgd-mtag-prova{color:var(--warn);font-weight:600}
/* badge "firma digitale · Yousign" (documenti con firma esterna) */
.pgd-mtag-firma{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:var(--radius-pill);padding:3px 11px}
.pgd-mtag-firma svg{width:14px;height:14px}
.pgd-firma-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-style:normal;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:var(--radius-pill);padding:1px 8px;align-self:flex-start}
.pgd-firma-tag svg{width:12px;height:12px}
.pgd-doc-dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;margin:0 0 20px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px}
.pgd-doc-dl>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-doc-dl dt{font-size:11px;color:var(--ink-mute);font-weight:600;margin:0}
.pgd-doc-dl dd{margin:0;font-size:13.5px;color:var(--ink);word-break:break-word}
.pgd-stub-box{display:flex;align-items:center;gap:14px;padding:18px 20px;background:color-mix(in srgb,var(--warn) 8%,var(--bg-1));border:1px solid color-mix(in srgb,var(--warn) 30%,var(--line));border-radius:var(--radius-lg)}
.pgd-stub-box svg{width:24px;height:24px;color:var(--warn);flex:none}
.pgd-stub-box b{display:block;font-size:14.5px;color:var(--ink)}
.pgd-stub-box span{font-size:13px;color:var(--ink-soft)}
.pgd-doc-body{font-size:15px;line-height:1.65;color:var(--ink)}
.pgd-doc-body h2{font-size:19px;margin:24px 0 10px}.pgd-doc-body h3{font-size:16px;margin:18px 0 8px}
.pgd-doc-body p{margin:0 0 12px}.pgd-doc-body ul,.pgd-doc-body ol{margin:0 0 14px;padding-left:22px}.pgd-doc-body li{margin:3px 0}
.pgd-fonti{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
.pgd-fonti h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);margin:0 0 8px}
.pgd-fonti ul{margin:0;padding-left:20px;font-size:12.5px;color:var(--ink-soft);line-height:1.5;word-break:break-word}
/* Registro trattamenti */
.pgd-titolare{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;margin:0 0 22px}
.pgd-titolare .pgd-card-h{margin-bottom:10px}
.pgd-titolare .pgd-doc-dl{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border:0;padding:0;background:transparent}
.pgd-treg{display:flex;flex-direction:column;gap:12px}
.pgd-trat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:15px 18px}
.pgd-trat-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.pgd-trat-id{font-family:'Courier New',monospace;font-size:12px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent);border-radius:var(--radius);padding:2px 8px}
.pgd-trat-h b{font-size:15px;color:var(--ink)}
.pgd-trat-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0}
.pgd-trat-dl>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-trat-dl dt{font-size:11px;color:var(--ink-mute);font-weight:600;margin:0}
.pgd-trat-dl dd{margin:0;font-size:13px;color:var(--ink)}
/* Fornitori */
.pgd-th-forn,.pgd-tr-forn{grid-template-columns:minmax(170px,1.15fr) minmax(300px,2.15fr) minmax(260px,1.7fr) minmax(72px,.45fr) minmax(112px,.75fr)}
.pgd-tr-forn{align-items:start}.pgd-th-forn{align-items:center}
.pgd-th-forn>span,.pgd-tr-forn>span{min-width:0}
.pgd-forn-headacts{display:flex;align-items:center;gap:10px}.pgd-forn-headacts>span{font-size:12px;color:var(--ink-mute)}
.pgd-forn-editbar,.pgd-forn-savebar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));border-radius:var(--radius-lg);margin:0 0 12px}.pgd-forn-editbar div{display:flex;flex-direction:column;gap:2px}.pgd-forn-editbar b{font-size:13px}.pgd-forn-editbar span{font-size:12px;color:var(--ink-soft)}.pgd-forn-savebar{justify-content:flex-end;margin:12px 0 0}.pgd-forn-switch{margin-top:6px;width:max-content}.pgd-tr-forn.is-hidden-choice{opacity:.58;background:color-mix(in srgb,var(--ink-mute) 5%,transparent)}
@media(max-width:760px){.pgd-forn-headacts,.pgd-forn-editbar{align-items:stretch;flex-direction:column}.pgd-forn-headacts .btn,.pgd-forn-editbar .btn{width:100%;text-align:center}.pgd-forn-savebar{display:grid;grid-template-columns:1fr 1fr}.pgd-forn-savebar .btn{width:100%;text-align:center}}
.pgd-forn-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-forn-name b{font-size:14px;color:var(--ink);font-weight:600}
.pgd-forn-name em{font-size:12px;font-style:normal;color:var(--ink-soft)}
.pgd-na{font-style:normal;color:var(--ink-mute);font-size:12.5px}
/* DPA del fornitore: stato + carica/rimuovi/apri (i big vendor danno il LORO doc) */
.pgd-dpa-cell{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.pgd-dpa-form{display:inline}
.pgd-dpa-up{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:var(--radius-pill);padding:3px 10px}
.pgd-dpa-up:hover{background:color-mix(in srgb,var(--accent) 16%,var(--bg-1))}
.pgd-dpa-up svg{width:13px;height:13px}
.pgd-dpa-up input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.pgd-dpa-rm{cursor:pointer;font-size:11.5px;font-weight:600;color:var(--ink-mute);background:none;border:0;text-decoration:underline;padding:0}
.pgd-dpa-dl{font-size:11.5px;font-weight:700;color:var(--accent);text-decoration:none}
.pgd-dpa-dl:hover{text-decoration:underline}
/* DPA: scelta PDF oppure link (session Privacy) */
.pgd-dpa-kind{font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-mute);border:1px solid var(--line);border-radius:var(--radius-pill);padding:1px 7px}
.pgd-dpa-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-0)}
.pgd-dpa-uploadrow{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pgd-dpa-choice{display:flex;flex-direction:column;gap:2px;min-width:0}.pgd-dpa-choice b{font-size:12px;color:var(--ink)}.pgd-dpa-choice small{font-size:10.5px;line-height:1.35;color:var(--ink-mute)}
.pgd-dpa-or{display:flex;align-items:center;gap:8px;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.pgd-dpa-or::before,.pgd-dpa-or::after{content:"";height:1px;background:var(--line);flex:1}
.pgd-dpa-linkform{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%}
.pgd-dpa-linkform>label{font-size:11px;font-weight:700;color:var(--ink-soft)}
.pgd-dpa-linkrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;width:100%}
.pgd-dpa-linkin{font:inherit;font-size:12px;min-width:0;width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink)}
.pgd-dpa-linkin:focus{outline:2px solid color-mix(in srgb,var(--accent) 22%,transparent);outline-offset:1px;border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}
.pgd-dpa-linksave{cursor:pointer;white-space:nowrap;font-size:11.5px;font-weight:700;color:var(--accent-ink);background:var(--accent);border:1px solid var(--accent);border-radius:9px;padding:8px 11px}
.pgd-dpa-linksave:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--bg-1))}
/* Firma esterna gratuita (session Privacy): pannello admin + pagina pubblica */
.pgd-extf{margin-top:10px;display:flex;flex-direction:column;gap:12px}
.pgd-extf-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pgd-extf-in{flex:1 1 200px;min-width:0;font-size:14px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg-1);color:var(--ink)}
.pgd-extf-in:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}
.pgd-extf-btn{flex:0 0 auto}
.pgd-extf-list{display:flex;flex-direction:column;gap:8px}
.pgd-extf-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}
.pgd-extf-who{display:flex;flex-direction:column;gap:1px;min-width:140px}
.pgd-extf-who b{font-size:14px}
.pgd-extf-mail{font-size:12px;color:var(--ink-mute)}
.pgd-extf-link{display:flex;align-items:center;gap:6px;flex:1 1 260px;min-width:0}
.pgd-extf-link .pgd-linkrow-url{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;color:var(--ink-mute)}
.pgd-extf-rm-form{display:inline}
.pgd-extf-exp{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-mute)}
.pgd-extf-exp select{font:inherit;color:var(--ink);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-pill);padding:8px 26px 8px 10px}
.pgd-firma-form{max-width:760px;margin:22px auto 0;display:flex;flex-direction:column;gap:14px}
.pgd-firma-note{font-size:12.5px;color:var(--ink-mute);margin:0}
.pgd-firma-done{max-width:760px;margin:0 auto 18px}
.pgd-sign-flow{max-width:900px}
.pgd-sign-intro{margin:0 0 20px}.pgd-sign-intro>span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.pgd-sign-intro h1{font-size:28px;line-height:1.2;margin:5px 0 8px}.pgd-sign-intro p{margin:0;color:var(--ink-soft);line-height:1.55}
.pgd-sign-form{display:flex;flex-direction:column;gap:18px}.pgd-sign-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.pgd-sign-step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:20px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg)}
.pgd-sign-step.is-ready{background:color-mix(in srgb,var(--accent) 3%,var(--bg-1));border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}
.pgd-sign-stepno{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:800}
.pgd-sign-stepbody{min-width:0}.pgd-sign-stepbody>h2{font-size:18px;margin:4px 0 5px}.pgd-sign-stepbody>p{font-size:13.5px;color:var(--ink-soft);margin:0 0 16px;line-height:1.55}
.pgd-sign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:16px}
.pgd-sign-field{display:flex;flex-direction:column;gap:5px;min-width:0}.pgd-sign-field.is-wide{grid-column:1/-1}.pgd-sign-field>span{font-size:12px;font-weight:700;color:var(--ink-soft)}
.pgd-sign-field input,.pgd-sign-field textarea,.pgd-sign-field select{width:100%;box-sizing:border-box;font:inherit;font-size:14px;color:var(--ink);background:var(--bg-0);border:1px solid var(--line);border-radius:10px;padding:10px 12px;outline:none;transition:border-color .15s,box-shadow .15s}
.pgd-sign-field textarea{resize:vertical;line-height:1.45}.pgd-sign-field input:focus,.pgd-sign-field textarea:focus,.pgd-sign-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}
.pgd-sign-field.has-error input,.pgd-sign-field.has-error textarea,.pgd-sign-field.has-error select{border-color:var(--err)}.pgd-sign-field>em{font-size:11.5px;color:var(--err);font-style:normal}.pgd-sign-field>small{font-size:11.5px;color:var(--ink-mute)}
.pgd-sign-step .pgd-pub-doc{margin:16px 0 0;padding:24px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}
.pgd-sign-choices{border:0;padding:0;margin:0 0 18px}.pgd-sign-choices legend{font-size:14px;font-weight:750;color:var(--ink);margin-bottom:4px}.pgd-sign-choices>p{font-size:12.5px;color:var(--ink-mute);margin:0 0 10px}.pgd-sign-choice{margin:7px 0}.pgd-sign-choices>em{display:block;font-size:11.5px;color:var(--err);font-style:normal;margin-top:7px}.pgd-sign-choices.has-error{padding:10px 12px;border:1px solid var(--err);border-radius:10px}
.pgd-sign-ack{margin:2px 0 16px}.pgd-proof{max-width:980px}.pgd-proof-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;margin:0 0 22px}
.pgd-proof-meta>div{background:var(--bg-1);padding:12px 14px;min-width:0}.pgd-proof-meta dt{font-size:11px;font-weight:700;color:var(--ink-mute);margin:0 0 3px}.pgd-proof-meta dd{font-size:13px;color:var(--ink);margin:0;overflow-wrap:anywhere}.pgd-proof-meta code{font-size:11px}
.pgd-proof-data{margin:0 0 22px}.pgd-proof-data h2{font-size:17px;margin:0 0 10px}.pgd-proof-data dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.pgd-proof-data dl>div{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--bg-1)}.pgd-proof-data dt{font-size:11px;font-weight:700;color:var(--ink-mute);margin:0 0 3px}.pgd-proof-data dd{font-size:13px;margin:0;overflow-wrap:anywhere}
@media(max-width:820px){.pgd-twocol{grid-template-columns:1fr}.pgd-doc-dl{grid-template-columns:1fr 1fr}.pgd-titolare .pgd-doc-dl{grid-template-columns:1fr 1fr}.pgd-trat-dl{grid-template-columns:1fr}}
@media(max-width:640px){.pgd-sign-flow{padding-left:14px;padding-right:14px}.pgd-sign-step{grid-template-columns:1fr;padding:16px}.pgd-sign-stepno{width:30px;height:30px}.pgd-sign-grid,.pgd-proof-meta,.pgd-proof-data dl{grid-template-columns:1fr}.pgd-sign-step .pgd-pub-doc{padding:17px}.pgd-sign-intro h1{font-size:23px}.pgd-extf-exp{width:100%}}

/* ════════════════ Area Privacy & GDPR ════════════════ */
/* Badge di stato documento/punto */
.pgd-st{display:inline-flex;align-items:center;white-space:nowrap;font-size:11.5px;font-weight:700;letter-spacing:.01em;border-radius:var(--radius-pill);padding:3px 11px;border:1px solid var(--line)}
.pgd-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent);border-color:color-mix(in srgb,var(--ok) 42%,var(--line))}
.pgd-val{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}
.pgd-warn{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent);border-color:color-mix(in srgb,var(--warn) 42%,var(--line))}
.pgd-bozza{color:var(--ink-mute);background:color-mix(in srgb,var(--bg-2) 55%,transparent)}
.pgd-todo{color:var(--err);background:color-mix(in srgb,var(--err) 12%,transparent);border-color:color-mix(in srgb,var(--err) 38%,var(--line))}
/* Cruscotto: punti */
.pgd-points{display:flex;flex-direction:column;gap:10px}
.pgd-point{display:flex;gap:14px;align-items:flex-start;padding:14px 18px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg)}
.pgd-pn{flex:none;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pgd-pn-tv{color:var(--ink-soft);background:var(--bg-2)}.pgd-pn-tv svg{width:16px;height:16px}
.pgd-pbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
.pgd-prow{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}
.pgd-prow b{font-size:14.5px;color:var(--ink);font-weight:640}
.pgd-note{margin:0;font-size:12.5px;color:var(--ink-soft);line-height:1.45}
.pgd-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:2px}
.pgd-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink);text-decoration:none;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:4px 11px}
.pgd-chip:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.pgd-chip-stub{opacity:.72;font-style:italic}
.pgd-chip-yaml{font-weight:600}
.pgd-chip-na{color:var(--ink-mute);background:transparent}
.pgd-dot{width:8px;height:8px;border-radius:50%;flex:none;background:currentColor}
.pgd-dot.pgd-ok{color:var(--ok)}.pgd-dot.pgd-val{color:var(--accent)}.pgd-dot.pgd-warn{color:var(--warn)}.pgd-dot.pgd-bozza{color:var(--ink-mute)}.pgd-dot.pgd-todo{color:var(--err)}
/* Cruscotto: verifiche + fuori scope */
.pgd-twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pgd-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px}
.pgd-card-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin-bottom:12px}
.pgd-verifica{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-soft);padding:6px 0}
.pgd-fuori{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-soft)}
.pgd-fuori b{color:var(--ink);font-weight:650;font-size:11.5px}
/* Elenco documenti */
.pgd-filtri{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.pgd-filtro{font-size:13px;color:var(--ink-soft);text-decoration:none;padding:6px 13px;border:1px solid var(--line);border-radius:var(--radius-pill)}
.pgd-filtro.is-on{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}
.pgd-th,.pgd-tr{grid-template-columns:minmax(0,2.4fr) 1fr .6fr 1fr .9fr}
.pgd-tr{text-decoration:none;color:inherit;cursor:pointer}
.pgd-tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.pgd-doc-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-doc-name b{font-size:14px;color:var(--ink);font-weight:600}
.pgd-stub-tag{font-size:11px;color:var(--warn);font-style:italic}
.pgd-mod{font-size:12.5px;color:var(--ink-soft)}
.pgd-tv{font-size:11.5px;color:var(--ink-mute);font-style:normal}
/* Dettaglio documento */
.pgd-doc-head{margin:6px 0 18px}
.pgd-doc-eyebrow{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:5px}
.pgd-doc-head h1{margin:0 0 10px}
.pgd-doc-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pgd-mtag{font-size:12.5px;color:var(--ink-soft)}.pgd-mtag b{color:var(--ink)}
.pgd-mtag-prova{color:var(--warn);font-weight:600}
.pgd-doc-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:0 0 20px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 20px}
.pgd-doc-dl>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-doc-dl dt{font-size:11.5px;color:var(--ink-mute);font-weight:600;margin:0}
.pgd-doc-dl dd{margin:0;font-size:14px;color:var(--ink);word-break:break-word}
.pgd-stub-box{display:flex;align-items:center;gap:14px;padding:18px 20px;background:color-mix(in srgb,var(--warn) 8%,transparent);border:1px solid color-mix(in srgb,var(--warn) 32%,var(--line));border-radius:var(--radius-lg)}
.pgd-stub-box svg{width:22px;height:22px;color:var(--warn);flex:none}
.pgd-stub-box b{display:block;font-size:14.5px;color:var(--ink)}.pgd-stub-box span{font-size:13px;color:var(--ink-soft)}
.pgd-doc-body{font-size:14.5px;line-height:1.6;color:var(--ink)}
.pgd-doc-body h2{font-size:18px;margin:24px 0 10px}.pgd-doc-body h3{font-size:15.5px;margin:18px 0 8px}
.pgd-doc-body p{margin:0 0 12px}.pgd-doc-body ul,.pgd-doc-body ol{margin:0 0 12px;padding-left:22px}.pgd-doc-body li{margin:4px 0}
.pgd-doc-body table{border-collapse:collapse;width:100%;margin:0 0 14px;font-size:13.5px}
.pgd-doc-body th,.pgd-doc-body td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.pgd-fonti{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.pgd-fonti h3{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin:0 0 8px}
.pgd-fonti ul{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink-soft);word-break:break-word}
/* Registro trattamenti */
.pgd-titolare{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 20px;margin:0 0 8px}
.pgd-titolare .pgd-doc-dl{border:0;padding:0;background:transparent;margin:0}
.pgd-treg{display:flex;flex-direction:column;gap:12px}
.pgd-trat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 20px}
.pgd-trat-h{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.pgd-trat-id{font-family:'Courier New',monospace;font-weight:700;font-size:12px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:var(--radius);padding:2px 8px}
.pgd-trat-h b{font-size:15px;color:var(--ink)}
.pgd-trat-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px;margin:0}
.pgd-trat-dl>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.pgd-trat-dl dt{font-size:11px;color:var(--ink-mute);font-weight:600}
.pgd-trat-dl dd{margin:0;font-size:13.5px;color:var(--ink)}
/* Fornitori */
.pgd-th-forn,.pgd-tr-forn{grid-template-columns:minmax(170px,1.15fr) minmax(300px,2.15fr) minmax(260px,1.7fr) minmax(72px,.45fr) minmax(112px,.75fr)}
.pgd-forn-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.pgd-forn-name b{font-size:14px;color:var(--ink);font-weight:600}.pgd-forn-name em{font-size:12px;color:var(--ink-soft);font-style:normal}
.pgd-na{color:var(--ink-mute);font-style:normal;font-size:12.5px}
@media(max-width:760px){.pgd-twocol{grid-template-columns:1fr}.pgd-doc-dl,.pgd-trat-dl{grid-template-columns:1fr}.pgd-th,.pgd-th-forn{display:none}.pgd-tr,.pgd-tr-forn{grid-template-columns:1fr auto;gap:8px 12px}.pgd-tr-forn>.pgd-forn-name,.pgd-tr-forn>.pgd-forn-service,.pgd-tr-forn>.pgd-dpa-cell{grid-column:1/-1}.pgd-dpa-uploadrow{align-items:flex-start;flex-direction:column}.pgd-dpa-linkrow{grid-template-columns:1fr}.pgd-dpa-linksave{width:100%}}
/* Dossier GDPR (fascicolo stampabile) */
.pgd-doss{max-width:900px;margin:0 auto;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:34px 40px}
.pgd-doss-cover{text-align:center;padding:14px 0 26px;border-bottom:2px solid var(--ink);margin-bottom:26px}
.pgd-doss-eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:8px}
.pgd-doss-cover h1{margin:0 0 10px;font-size:27px}
.pgd-doss-sub{margin:0 0 4px;font-size:14.5px;color:var(--ink)}
.pgd-doss-meta{margin:0;font-size:12.5px;color:var(--ink-soft)}
.pgd-doss-sec{margin:0 0 26px}
.pgd-doss-sec>h2{font-size:17px;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line);color:var(--ink)}
/* copertina: "per il revisore legale" — spiega che è digitale */
.pgd-doss-intro p{font-size:13.5px;line-height:1.6;color:var(--ink);margin:0 0 10px}
.pgd-doss-how{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.pgd-doss-howitem{border:1px solid var(--line);border-radius:var(--radius);padding:10px 13px;break-inside:avoid}
.pgd-doss-howitem b{display:block;font-size:13px;color:var(--ink);margin-bottom:3px}
.pgd-doss-howitem span{font-size:12px;color:var(--ink-soft);line-height:1.5}
.pgd-doss-ask{background:var(--bg-2);border-left:3px solid var(--accent);padding:11px 14px;border-radius:0 var(--radius) var(--radius) 0}
@media print{.pgd-doss-howitem{border:1px solid #ddd}.pgd-doss-ask{background:#f5f5f0}}
/* link di revisione per il consulente esterno */
.pgd-rev-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;background:var(--bg-1);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.pgd-rev-brand{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:var(--ink)}
.pgd-rev-dot{width:18px;height:18px;border-radius:50%;background:var(--accent);flex:0 0 auto}
.pgd-rev-tag{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:var(--radius-pill);padding:3px 11px;white-space:nowrap}
.pgd-revbox{margin:0 0 22px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--bg-1));border-radius:var(--radius-lg);padding:14px 16px}
.pgd-revbox-h b{display:block;font-size:14px;color:var(--ink)}
.pgd-revbox-h span{display:block;font-size:12.5px;color:var(--ink-soft);line-height:1.5;margin:2px 0 0}
.pgd-revbox form{margin-top:10px}
@media print{.pgd-rev-top{position:static}}
.pgd-doss-tbl{width:100%;border-collapse:collapse;font-size:12.5px}
.pgd-doss-tbl th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);border-bottom:1px solid var(--line);padding:6px 8px}
.pgd-doss-tbl td{padding:6px 8px;border-bottom:1px solid var(--line-soft,var(--line));color:var(--ink);vertical-align:top}
.pgd-doss-doc{margin:0 0 18px;padding:14px 16px;background:var(--bg-2);border-radius:var(--radius);break-inside:avoid}
.pgd-doss-doc h3{margin:0 0 4px;font-size:15px}
.pgd-doss-docmeta{margin:0 0 8px;font-size:11.5px;color:var(--ink-soft)}
.pgd-doss-stub{margin:0;font-size:13px;font-style:italic;color:var(--ink-mute)}
.pgd-doss-body{font-size:13px;line-height:1.55;color:var(--ink)}
.pgd-doss-body h1,.pgd-doss-body h2,.pgd-doss-body h3{font-size:14px;margin:12px 0 6px}
.pgd-doss-body p{margin:0 0 8px}.pgd-doss-body ul,.pgd-doss-body ol{margin:0 0 8px;padding-left:20px}
.pgd-doss-prova{margin:8px 0 0;font-size:12px;color:var(--warn);font-weight:600}
@media print{
  .pf-topbar,.pf-subbar,.mg-head.no-print,.no-print{display:none!important}
  .pf-main{padding:0!important;margin:0!important}
  .pgd-doss{border:0;padding:0;max-width:none}
  .pgd-doss-doc{background:transparent;border:1px solid #ddd}
}

/* ===== Dossier di revisione: blocchi + menu sticky + fogli + note ===== */
.pgd-rev-actions{display:flex;align-items:center;gap:10px}
.pgd-rev-pdf{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:13px;font-weight:700;color:#fff;background:var(--accent);border:0;border-radius:var(--radius-pill);padding:8px 15px}
.pgd-rev-pdf:hover{filter:brightness(1.07)}
.pgd-rev-pdf svg{width:15px;height:15px}
.pgd-rev-burger{display:none;cursor:pointer;background:none;border:0;color:var(--ink);padding:4px;margin-right:2px}
.pgd-rev-burger svg{width:24px;height:24px;display:block}
.pgd-rev-shell{display:grid;grid-template-columns:262px minmax(0,1fr);align-items:start;max-width:1280px;margin:0 auto}
.pgd-rev-toc{position:sticky;top:61px;align-self:start;max-height:calc(100vh - 61px);overflow:auto;padding:22px 16px 22px 24px;border-right:1px solid var(--line)}
.pgd-rev-toc-h{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 10px}
.pgd-rev-toc-list,.pgd-rev-toc-sub{list-style:none;margin:0;padding:0}
.pgd-rev-toc-list>li{margin:0 0 2px}
.pgd-rev-toc a{display:block;font-size:13.5px;color:var(--ink-soft);text-decoration:none;padding:6px 10px;border-radius:8px;line-height:1.35;border-left:2px solid transparent}
.pgd-rev-toc a:hover{background:var(--bg-2);color:var(--ink)}
.pgd-rev-toc a.is-cur{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border-left-color:var(--accent);font-weight:700}
.pgd-rev-toc-sub{margin:1px 0 6px;padding-left:8px}
.pgd-rev-toc-sub a{font-size:12px;color:var(--ink-mute);padding:4px 10px}
.pgd-rev-content{min-width:0;padding:26px 24px 60px}
.pgd-rev-pfmain{padding:0}
.pgd-rev-content .pgd-doss{max-width:860px;border:0;background:transparent;padding:0;margin:0 auto}
.pgd-rev-scrim{display:none}
/* scroll fluido + atterraggio sotto l'header sticky quando si clicca il menu */
.pgd-doss-sec,.pgd-doc-sheet{scroll-margin-top:74px}
/* documenti come "fogli" (fac-simile, chiaramente un documento) */
.pgd-doc-sheet{position:relative;margin:24px 0 22px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 6px 24px -18px rgba(0,0,0,.4);padding:30px 32px 22px;break-inside:avoid}
.pgd-doc-sheet-tab{position:absolute;top:0;left:24px;transform:translateY(-50%);display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--ink);border-radius:var(--radius-pill);padding:4px 11px}
.pgd-doc-sheet-tab svg{width:12px;height:12px}
.pgd-doc-sheet-head{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}
.pgd-doc-sheet-eyebrow{font-size:11px;color:var(--ink-soft);margin-bottom:5px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.pgd-doc-sheet-head h3{margin:0;font-size:18px;line-height:1.25}
.pgd-doc-sheet-meta{margin:5px 0 0;font-size:12px;color:var(--ink-soft)}
.pgd-doc-sheet-body{font-size:13.5px;line-height:1.6}
/* note del revisore (commenti per blocco), a destra */
.pgd-rev-note{margin:14px 0 0 auto;max-width:480px;background:color-mix(in srgb,#f4b400 9%,var(--bg-1));border:1px solid color-mix(in srgb,#f4b400 34%,var(--line));border-radius:var(--radius);padding:12px 14px}
.pgd-rev-note-h{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb,#9a6f00 65%,var(--ink));margin-bottom:9px}
.pgd-rev-note-h svg{width:15px;height:15px;flex:0 0 auto}
.pgd-rev-note-h em{font-style:normal;font-weight:600;text-transform:none;letter-spacing:0;color:var(--ink-soft)}
.pgd-rev-note-n{background:#e0a800;color:#fff;border-radius:var(--radius-pill);font-size:11px;padding:1px 7px}
.pgd-rev-note-item{background:var(--bg-1);border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-bottom:7px}
.pgd-rev-note-item.is-admin{background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));border-color:color-mix(in srgb,var(--accent) 26%,var(--line))}
.pgd-rev-note-item p{margin:0 0 4px;font-size:13px;line-height:1.5;color:var(--ink)}
.pgd-rev-note-meta{font-size:11px;color:var(--ink-mute)}
.pgd-rev-note-form{display:flex;flex-direction:column;gap:7px}
.pgd-rev-note-form textarea{width:100%;font:inherit;font-size:13px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;resize:vertical;background:var(--bg-1);color:var(--ink)}
.pgd-rev-note-btn{align-self:flex-start;cursor:pointer;font-size:12.5px;font-weight:700;color:#fff;background:#caa000;border:0;border-radius:var(--radius-pill);padding:7px 14px}
.pgd-rev-note-btn:hover{filter:brightness(1.06)}
/* tabelle dossier: scroll su mobile + zebra + lead + tag articolo */
.pgd-doss-lead{font-size:13px;color:var(--ink-soft);line-height:1.55;margin:0 0 12px}
.pgd-doss-art{font-size:11px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:var(--radius-pill);padding:2px 9px;vertical-align:middle;margin-left:6px}
.pgd-doss-tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 4px}
.pgd-doss-tbl tbody tr:nth-child(even){background:color-mix(in srgb,var(--ink) 3%,transparent)}
.pgd-doss-cellsub{display:block;font-size:11.5px;color:var(--ink-soft);margin-top:2px;line-height:1.4}
.pgd-doss-tbl-reg{min-width:760px}
.pgd-doss-tbl-reg td{padding:9px 10px}
/* mobile: menu off-canvas + hamburger */
@media(max-width:860px){
  .pgd-rev-shell{display:block;max-width:none}
  .pgd-rev-burger{display:inline-flex}
  .pgd-rev-toc{position:fixed;top:0;left:0;bottom:0;width:280px;max-height:none;background:var(--bg-1);z-index:60;transform:translateX(-100%);transition:transform .22s ease;padding-top:18px}
  body.pgd-rev-open .pgd-rev-toc{transform:none}
  .pgd-rev-scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:opacity .22s;z-index:55}
  body.pgd-rev-open .pgd-rev-scrim{opacity:1;pointer-events:auto}
  .pgd-rev-content{padding:18px 14px 50px}
  .pgd-rev-note{max-width:none}
  .pgd-doc-sheet{padding:26px 18px 18px}
}
/* PRINT/PDF: solo il documento, niente menu/note/azioni */
@media print{
  .pgd-rev-top,.pgd-rev-toc,.pgd-rev-scrim,.pgd-rev-note,.pgd-rev-burger,.pgd-rev-pdf{display:none!important}
  .pgd-rev-shell{display:block}
  .pgd-rev-content{padding:0}
  .pgd-rev-content .pgd-doss{max-width:none}
  .pgd-doc-sheet{box-shadow:none;border:1px solid #ddd}
  .pgd-doc-sheet-tab{background:#444}
}

/* ───────── Privacy · comportamento per modalità ───────── */
.pgd-behavior{margin:22px 0 6px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-1);padding:16px 18px}
.pgd-bh-head{display:flex;gap:13px;align-items:flex-start}
.pgd-bh-ico{flex:0 0 auto;width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,var(--bg-1));color:var(--accent)}
.pgd-bh-ico svg{width:18px;height:18px;display:block}
.pgd-bh-head>div{min-width:0}
.pgd-bh-head b{display:block;font-size:14px;color:var(--ink)}
.pgd-bh-state{margin:14px 0 0;font-size:12.5px;font-weight:600;border-radius:var(--radius);padding:9px 13px;line-height:1.5}
.pgd-bh-state b{font-weight:700}
.pgd-bh-state.is-on{color:var(--ok);background:color-mix(in srgb,var(--ok) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok) 32%,var(--line))}
.pgd-bh-state.is-wait{color:var(--warn);background:color-mix(in srgb,var(--warn) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--warn) 32%,var(--line))}
.pgd-bh-state.is-soon{color:var(--ink-soft);background:var(--bg-2);border:1px dashed var(--line)}
/* segnaposto {{...}}: campo "da compilare", stile modulo */
.pgd-ph{display:inline-block;padding:1px 9px;border-radius:6px;background:var(--bg-2);color:var(--ink-mute);font-size:.9em;font-weight:500;font-style:normal;border:1px dashed var(--ink-mute);white-space:nowrap;vertical-align:baseline}
/* caselle da spuntare nei moduli (markdown "[ ]") */
.pgd-doc-body ul:has(.pgd-task),.pgd-pub-body ul:has(.pgd-task),.pgd-doss-body ul:has(.pgd-task){list-style:none;padding-left:2px}
li.pgd-task{list-style:none;display:flex;align-items:flex-start;gap:9px;margin:6px 0}
li.pgd-task .pgd-chk{flex:0 0 auto;width:17px;height:17px;margin-top:2px;border:1.6px solid var(--ink-mute);border-radius:5px;background:var(--bg-1);position:relative}
li.pgd-task-on .pgd-chk{background:var(--accent);border-color:var(--accent)}
li.pgd-task-on .pgd-chk::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid var(--accent-ink);border-width:0 2px 2px 0;transform:rotate(45deg)}
/* link dentro il corpo (es. verso registro/fornitori al posto del nome file) */
.pgd-bodylink{color:var(--accent);font-weight:600;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}
.pgd-bodylink:hover{border-bottom-color:var(--accent)}
.pgd-doc-body del,.pgd-doss-body del,.pgd-pub-body del{color:var(--ink-mute)}
/* azioni aperte: elenco azionabile con link "Vai →" */
.pgd-azioni{margin:22px 0 0;border:1px solid color-mix(in srgb,var(--warn) 30%,var(--line));background:color-mix(in srgb,var(--warn) 5%,var(--bg-1));border-radius:var(--radius-lg);padding:13px 16px}
.pgd-azioni-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.pgd-azioni-h b{font-size:14px;color:var(--ink)}
.pgd-azioni-cnt{font-size:11.5px;font-weight:700;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border:1px solid color-mix(in srgb,var(--warn) 35%,var(--line));border-radius:var(--radius-pill);padding:2px 10px}
.pgd-azioni-list{list-style:none;margin:0;padding:0}
.pgd-azione{display:flex;align-items:center;gap:11px;padding:9px 2px;border-top:1px solid var(--line-soft,var(--line))}
.pgd-azione:first-child{border-top:0}
.pgd-azione-chk{flex:0 0 auto;width:17px;height:17px;border:1.6px solid var(--ink-mute);border-radius:5px;background:var(--bg-1);position:relative}
.pgd-azione.is-fatto .pgd-azione-chk{background:var(--ok);border-color:var(--ok)}
.pgd-azione.is-fatto .pgd-azione-chk::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.pgd-azione-tx{flex:1;min-width:0;font-size:13.5px;color:var(--ink);line-height:1.45}
.pgd-azione.is-fatto .pgd-azione-tx{color:var(--ink-mute);text-decoration:line-through}
.pgd-azione-go{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:700;color:var(--accent);text-decoration:none;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:var(--radius-pill);padding:3px 11px;white-space:nowrap;transition:background var(--t-fast)}
.pgd-azione-go:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}
.pgd-azione-go svg{width:14px;height:14px}
/* spunta "fatto" cliccabile (admin): la checkbox quadrata diventa un bottone */
.pgd-azione-form{display:contents}
button.pgd-azione-chk{cursor:pointer;padding:0;appearance:none;-webkit-appearance:none;transition:background var(--t-fast),border-color var(--t-fast)}
button.pgd-azione-chk:hover{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 16%,var(--bg-1))}
.pgd-azione-chk.is-on{background:var(--ok);border-color:var(--ok)}
.pgd-azione-chk.is-on::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
/* verifica tecnica: layout riga + stato "fatto" barrato */
.pgd-verifica{display:flex;align-items:center;gap:10px}
.pgd-verifica.is-fatto>span:last-child{color:var(--ink-mute);text-decoration:line-through}
.pgd-azione-src{display:inline-block;font-style:normal;font-size:11px;font-weight:600;color:var(--ink-mute);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:1px 8px;margin-left:8px;white-space:nowrap;vertical-align:middle}
/* alert "mancano informazioni" + decisioni da rispondere */
.pgd-alert{display:flex;align-items:center;gap:13px;margin:0 0 22px;padding:13px 16px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--warn) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--warn) 34%,var(--line));text-decoration:none;transition:background var(--t-fast)}
.pgd-alert:hover{background:color-mix(in srgb,var(--warn) 14%,var(--bg-1))}
.pgd-alert-ico{flex:0 0 auto;width:28px;height:28px;color:var(--warn)}.pgd-alert-ico svg{width:28px;height:28px;display:block}
.pgd-alert-tx{flex:1;font-size:14px;color:var(--ink);line-height:1.45}.pgd-alert-tx b{color:var(--warn)}
.pgd-alert-go{flex:0 0 auto;font-size:12.5px;font-weight:700;color:var(--warn);white-space:nowrap}
.pgd-dec-list{display:flex;flex-direction:column;gap:10px}
.pgd-dec{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-1);padding:14px 16px}
.pgd-dec.is-done{border-color:color-mix(in srgb,var(--ok) 34%,var(--line));background:color-mix(in srgb,var(--ok) 4%,var(--bg-1))}
.pgd-dec-main{flex:1 1 320px;min-width:0}
.pgd-dec-q b{display:block;font-size:14px;color:var(--ink);line-height:1.4}
.pgd-dec-help{display:block;font-size:12.5px;color:var(--ink-soft);line-height:1.5;margin-top:4px}
.pgd-dec-ans{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:13.5px;color:var(--ink)}
.pgd-dec-chk{flex:0 0 auto;width:16px;height:16px;border-radius:5px;background:var(--ok);position:relative}
.pgd-dec-chk::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.pgd-dec-act{flex:0 0 auto;display:flex;align-items:center}
.pgd-dec-yn{display:flex;gap:8px}
.pgd-dec-btn{cursor:pointer;font-size:13.5px;font-weight:700;color:var(--ink-soft);background:var(--bg-1);border:1.5px solid var(--line);border-radius:var(--radius-pill);padding:7px 22px;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}
.pgd-dec-btn:hover{border-color:var(--accent);color:var(--accent)}
.pgd-dec-text{display:flex;gap:8px;align-items:center}
.pgd-dec-text input{font:inherit;font-size:13.5px;padding:7px 11px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);color:var(--ink);min-width:190px}
.pgd-dec-edit{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-soft);background:none;border:0;text-decoration:underline;padding:0}
/* azioni su una decisione risposta: "Fatto, è risolta" (chiude il giro) + Modifica */
.pgd-dec-doneacts{display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.pgd-dec-resolve{cursor:pointer;font-size:13px;font-weight:700;color:#fff;background:var(--accent);border:0;border-radius:var(--radius-pill);padding:7px 16px;white-space:nowrap;transition:filter var(--t-fast)}
.pgd-dec-resolve:hover{filter:brightness(1.08)}
/* etichetta di stato accanto alla risposta */
.pgd-dec-state{display:inline-block;margin-left:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border-radius:var(--radius-pill);padding:2px 9px;vertical-align:middle}
.pgd-dec-state.is-ok{color:var(--ok,#1a8a4a);background:color-mix(in srgb,var(--ok,#1a8a4a) 12%,transparent)}
/* "nessuna decisione aperta" */
.pgd-dec-allclear{font-size:14px;font-weight:600;color:var(--ink-soft);background:color-mix(in srgb,var(--ok,#1a8a4a) 8%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok,#1a8a4a) 26%,var(--line));border-radius:var(--radius);padding:14px 16px;margin:0}
/* archivio richiudibile delle decisioni risolte */
.pgd-dec-archive{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.pgd-dec-archive>summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--ink-soft);list-style:none;padding:4px 0}
.pgd-dec-archive>summary::-webkit-details-marker{display:none}
.pgd-dec-archive>summary::before{content:"▸ ";color:var(--ink-soft)}
.pgd-dec-archive[open]>summary::before{content:"▾ "}
.pgd-dec-archive .pgd-dec.is-resolved{opacity:.72}
/* validazione documento: admin conferma dopo l'ok del legale */
.pgd-valida{margin:0 0 18px}
.pgd-valida-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13.5px;font-weight:700;color:var(--ok,#1a8a4a);background:color-mix(in srgb,var(--ok,#1a8a4a) 9%,var(--bg-1));border:1.5px solid color-mix(in srgb,var(--ok,#1a8a4a) 34%,var(--line));border-radius:var(--radius-pill);padding:8px 16px;list-style:none;width:max-content}
.pgd-valida-btn::-webkit-details-marker{display:none}
.pgd-valida-btn svg{width:17px;height:17px}
.pgd-valida-btn:hover{background:color-mix(in srgb,var(--ok,#1a8a4a) 16%,var(--bg-1))}
.pgd-valida-box{margin-top:10px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:13px 15px;max-width:560px}
.pgd-valida-box p{margin:0 0 11px;font-size:13.5px;line-height:1.5;color:var(--ink)}
.pgd-valida-yes{cursor:pointer;font-size:13.5px;font-weight:700;color:#fff;background:var(--ok,#1a8a4a);border:0;border-radius:var(--radius-pill);padding:9px 18px;transition:filter var(--t-fast)}
.pgd-valida-yes:hover{filter:brightness(1.08)}
.pgd-valida-hint{display:block;margin-top:8px;font-size:12px;color:var(--ink-soft)}
.pgd-valida.is-on{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.pgd-valida-ok{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--ok,#1a8a4a)}
.pgd-valida-ok svg{width:18px;height:18px}
.pgd-valida-undo{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-soft);background:none;border:0;text-decoration:underline;padding:0}
.pgd-dec-export{margin-top:14px;border:1px dashed var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--bg-2)}
.pgd-dec-export-h b{display:block;font-size:13px;color:var(--ink)}
.pgd-dec-export-h span{display:block;font-size:12px;color:var(--ink-soft);margin:2px 0 8px}
.pgd-dec-pre{font-size:12.5px;color:var(--ink);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;white-space:pre-wrap;margin:0 0 9px;line-height:1.5}
/* comando-per-Cowork sotto una decisione risposta */
.pgd-dec-cmd{margin-top:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:var(--radius);padding:11px 12px}
.pgd-dec-cmd-h b{display:block;font-size:13px;color:var(--accent)}
.pgd-dec-cmd-h span{display:block;font-size:12px;color:var(--ink-soft);margin:2px 0 9px}
.pgd-dec-cmd .pgd-dec-pre{background:var(--bg-1)}
/* banner sul documento: "da aggiornare in base a una risposta" */
.pgd-doc-flag{display:flex;align-items:flex-start;gap:11px;margin:0 0 18px;padding:12px 15px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--warn) 8%,var(--bg-1));border:1px solid color-mix(in srgb,var(--warn) 32%,var(--line))}
.pgd-doc-flag svg{flex:0 0 auto;width:22px;height:22px;color:var(--warn);margin-top:1px}
.pgd-doc-flag b{color:var(--warn)}
.pgd-doc-flag span{font-size:13.5px;color:var(--ink);line-height:1.5}
/* riga link pubblico + copia */
.pgd-linkrow{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:12px;padding:10px 12px;background:var(--bg-2);border:1px solid var(--line-soft,var(--line));border-radius:var(--radius)}
.pgd-linkrow-lab{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute)}
.pgd-linkrow-url{flex:1 1 220px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--ink-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.pgd-copy,.pgd-open{flex:0 0 auto;cursor:pointer;font-size:12px;font-weight:700;border-radius:var(--radius-pill);padding:5px 13px;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);text-decoration:none;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}
.pgd-copy:hover,.pgd-open:hover{border-color:var(--accent);color:var(--accent)}
.pgd-copy.is-copied{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,var(--line))}
/* roster presa visione (admin) */
.pgd-roster{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.pgd-roster-h{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--bg-2);border-bottom:1px solid var(--line)}
.pgd-roster-h b{font-size:13px;color:var(--ink)}
.pgd-roster-cnt{font-size:12px;font-weight:700;color:var(--ink-soft);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 10px}
.pgd-roster-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-bottom:1px solid var(--line-soft,var(--line))}
.pgd-roster-row:last-child{border-bottom:0}
.pgd-roster-name{font-size:13px;color:var(--ink)}
.pgd-rs{font-size:11.5px;font-weight:700;border-radius:var(--radius-pill);padding:3px 11px;border:1px solid var(--line);white-space:nowrap}
.pgd-rs-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:color-mix(in srgb,var(--ok) 40%,var(--line))}
.pgd-rs-old{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}
.pgd-rs-no{color:var(--ink-mute);background:var(--bg-2)}

/* ───────── Privacy · pagina pubblica (modalità pubblicazione) ───────── */
.pgd-pub-top{max-width:760px;margin:0 auto;padding:30px 24px 0;display:flex;flex-direction:column;gap:3px}
.pgd-pub-brand{font-size:15px;font-weight:800;color:var(--ink)}
.pgd-pub-kicker{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.pgd-pub{max-width:760px;margin:0 auto;padding:22px 24px 70px}
.pgd-pub-empty{text-align:center;padding:60px 24px;color:var(--ink-soft)}
.pgd-pub-empty svg{width:46px;height:46px;color:var(--ink-mute);margin-bottom:14px}
.pgd-pub-empty h1{font-size:21px;margin:0 0 8px;color:var(--ink)}
.pgd-pub-empty p{font-size:14px;line-height:1.6;max-width:440px;margin:0 auto}
.pgd-pub-doc h1{font-size:26px;line-height:1.2;margin:0 0 8px;color:var(--ink)}
.pgd-pub-meta{font-size:12.5px;color:var(--ink-mute);margin:0 0 24px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.pgd-pub-body{font-size:15px;line-height:1.7;color:var(--ink)}
.pgd-pub-body h1,.pgd-pub-body h2,.pgd-pub-body h3{margin:26px 0 10px;line-height:1.3}
.pgd-pub-body h2{font-size:19px}.pgd-pub-body h3{font-size:16px}
.pgd-pub-body p{margin:0 0 13px}.pgd-pub-body ul,.pgd-pub-body ol{margin:0 0 13px;padding-left:22px}
.pgd-pub-body li{margin:0 0 5px}
.pgd-pub-foot{margin-top:32px;padding-top:18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-soft)}
.pgd-pub-foot p{margin:0 0 5px}
.pgd-pub-ref{color:var(--ink-mute);font-size:11.5px}

/* ───────── Privacy · leggibilità (guida pagina + glosse + tooltip) ───────── */
.pgd-guide{margin:0 0 22px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--bg-1));border-radius:var(--radius-lg);overflow:hidden}
.pgd-guide>summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:13px 16px;font-size:14px;color:var(--ink);list-style:none;user-select:none}
.pgd-guide>summary::-webkit-details-marker{display:none}
.pgd-guide>summary b{font-weight:700}
.pgd-guide-q{flex:0 0 auto;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:13px;font-weight:800;font-style:normal}
.pgd-guide-chev{margin-left:auto;color:var(--ink-mute);transition:transform .2s ease}
.pgd-guide-chev svg{width:18px;height:18px;display:block}
.pgd-guide[open] .pgd-guide-chev{transform:rotate(180deg)}
.pgd-guide-in{padding:0 16px 16px;border-top:1px solid color-mix(in srgb,var(--accent) 15%,var(--line))}
.pgd-guide-lead{margin:14px 0 0;font-size:14.5px;line-height:1.6;color:var(--ink)}
.pgd-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:12px;margin-top:14px}
.pgd-guide-cell{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:11px 13px}
.pgd-guide-k{display:block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}
.pgd-guide-cell p{margin:0;font-size:13px;line-height:1.5;color:var(--ink-soft)}
/* glossa: traduzione "umana" del termine tecnico, sotto l'etichetta */
.pgd-gloss{display:block;font-style:normal;font-weight:400;font-size:11px;line-height:1.35;margin-top:1px;text-transform:none;letter-spacing:0}
.pgd-doc-dl dt,.pgd-trat-dl dt{color:var(--ink-soft)}
.pgd-doc-dl dt .pgd-gloss,.pgd-trat-dl dt .pgd-gloss{color:var(--ink-mute)}
.pgd-card-hint{display:block;font-size:12px;font-weight:400;color:var(--ink-mute);margin-top:2px;text-transform:none;letter-spacing:0}
/* dettagli tecnici (collassati, in fondo al documento) */
.pgd-tech{margin:22px 0 0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-1)}
.pgd-tech>summary{cursor:pointer;padding:13px 16px;font-size:13.5px;font-weight:600;color:var(--ink-soft);list-style:none;user-select:none}
.pgd-tech>summary::-webkit-details-marker{display:none}
.pgd-tech>summary::before{content:"▸";color:var(--ink-mute);margin-right:7px;font-size:11px}
.pgd-tech[open]>summary::before{content:"▾"}
.pgd-tech-hint{font-weight:400;color:var(--ink-mute);font-size:12px}
.pgd-tech .pgd-doc-dl{border:0;background:transparent;margin:0;padding:0 16px 14px}
/* I tooltip sono gestiti dal portal globale definito nel design system. */
/* valori-lista come targhette (registro): ogni voce staccata e leggibile */
.pgd-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:1px}
.pgd-tag{display:inline-block;font-size:12.5px;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 11px;line-height:1.55}
/* il titolo del corpo non deve competere col titolo della pagina */
.pgd-doc-body h1{font-size:20px;line-height:1.3;margin:2px 0 14px;color:var(--ink)}
.pgd-doc-body>h1:first-child{margin-top:0}
/* eyebrow del pannello "azione" */
.pgd-bh-kicker{display:block;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:2px}
/* nota fornitore: max 2 righe, così le righe della tabella restano uniformi */
.pgd-forn-name em{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* etichetta destinatario (al posto del trattino nel titolo) */
.pgd-aud{display:inline-block;vertical-align:middle;font-size:11px;font-weight:700;letter-spacing:.01em;color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:var(--radius-pill);padding:2px 9px;line-height:1.45;white-space:nowrap}
.pgd-doc-head h1 .pgd-aud{font-size:13px;padding:3px 12px;margin-left:6px}
.pgd-doc-name{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px}
.pgd-doss-doc h3 .pgd-aud{font-size:11px}

/* ═══════════════════ AREA PRESENZE (modulo HR) ═══════════════════ */
.pres-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.pres-head h1{margin:0 0 6px;font-size:26px;font-weight:900;letter-spacing:-.015em;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pres-head p{margin:0;font-size:13.5px;color:var(--ink-soft)}
.pres-head-cta{display:flex;gap:10px;flex-wrap:wrap}
.pres-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:32px}
.pres-stat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1)}
.pres-stat-click{cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t-fast),border-color var(--t-fast)}
.pres-stat-click:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.pres-stat-click:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}
.pres-stat .lab{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:8px;display:flex;align-items:center;gap:7px}
.pres-stat .lab svg{width:14px;height:14px;color:var(--accent);flex:0 0 auto}
.pres-stat .val{font-size:24px;font-weight:900;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.pres-stat .val small{font-size:12px;font-weight:500;color:var(--ink-mute);letter-spacing:0}
.pres-stat .foot{margin-top:6px;font-size:11.5px;color:var(--ink-mute)}
.pres-cols{display:grid;grid-template-columns:1.6fr 1fr;column-gap:20px;row-gap:36px;align-items:stretch}
/* Le due colonne condividono le stesse righe: i riquadri superiori hanno la
   medesima altezza e i due blocchi successivi partono sempre allineati. */
.pres-cols>div{display:grid;grid-row:span 2;grid-template-rows:subgrid}
.pres-cols>div>.sec{min-width:0;margin:0;display:flex;flex-direction:column}
.pres-cols>div>.sec>.pres-card{flex:1}
@media(max-width:880px){
  .pres-cols{grid-template-columns:1fr;row-gap:0}
  .pres-cols>div{display:block;grid-row:auto}
  .pres-cols>div>.sec{margin-bottom:36px}
}
.pres-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:8px 20px}
/* riga richiesta con azioni rapide */
.pres-req{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.pres-req:last-child{border-bottom:none}
.pres-req .rtxt{flex:1;min-width:0}
.pres-req .rtxt b{display:block;font-size:13.5px;color:var(--ink);font-weight:600}
.pres-req .rtxt span{font-size:12px;color:var(--ink-mute)}
.rdot{flex:0 0 10px;width:10px;height:10px;border-radius:50%}
.rdot.ferie{background:#e2a03f}.rdot.permesso{background:#40bfb3}.rdot.malattia{background:#8a7ee6}.rdot.infortunio{background:#df6b57}.rdot.extra{background:var(--info)}.rdot.cambio_orario{background:#5f72e6}
.racts{display:flex;gap:6px}
.racts form{margin:0}
.rbtn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);cursor:pointer;transition:all var(--t-fast)}
.rbtn svg{width:15px;height:15px}
.rbtn.ok:hover{background:var(--ok);border-color:var(--ok);color:var(--ok-ink)}
.rbtn.no:hover{background:var(--err);border-color:var(--err);color:var(--err-ink)}
.rbtn.edit:hover{background:var(--info);border-color:var(--info);color:var(--info-ink)}
.pres-own-actions{display:inline-flex;align-items:center;gap:6px;flex:none}
/* chi c'è oggi */
.pres-who{display:flex;flex-direction:column;gap:2px}
.pres-who .wrow{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius);transition:background var(--t-fast)}
.pres-who .wrow:hover{background:var(--bg-2)}
.pres-who .wname{flex:1;font-size:13px;font-weight:600;color:var(--ink)}
.pres-who .wsub{font-size:11px;color:var(--ink-mute);font-weight:400}
.wstato{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-pill);white-space:nowrap}
.wstato.presente{background:color-mix(in srgb,var(--ok) 14%,var(--bg-1));color:var(--ok)}
.wstato.remoto{background:color-mix(in srgb,var(--info) 12%,var(--bg-1));color:var(--info)}
.wstato.assente{background:color-mix(in srgb,#e2a03f 16%,var(--bg-1));color:#a06a14}
:root[data-pim-theme="dark"] .wstato.assente{color:#e2a03f}
/* prossime assenze */
.pres-next{display:flex;flex-direction:column}
.pres-next .nrow{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft);align-items:center}
.pres-next .nrow:last-child{border-bottom:none}
.ndate{flex:0 0 52px;text-align:center;background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius);padding:6px 4px}
.ndate b{display:block;font-size:16px;font-weight:900;line-height:1.1}
.ndate span{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.pres-next .ntxt b{display:block;font-size:13px;font-weight:600;color:var(--ink)}
.pres-next .ntxt span{font-size:11.5px;color:var(--ink-mute)}
/* contatori in sintesi */
.pres-mini-cnt{width:100%;border-collapse:collapse;font-size:12.5px}
.pres-mini-cnt td{padding:8px 4px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft)}
.pres-mini-cnt tr:last-child td{border-bottom:none}
.pres-mini-cnt .num{text-align:right;font-variant-numeric:tabular-nums}
.pres-cnt-note{margin-top:12px;font-size:11.5px;color:var(--ink-mute)}
.pres-cnt-note b{color:var(--ink-soft)}
/* persona: avatar iniziali + cella */
.pcell{display:flex;align-items:center;gap:10px}
.pcell b{color:var(--ink);font-weight:600;display:block;line-height:1.2}
.pava{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:var(--bg-2);border:1px solid var(--line-soft);color:var(--ink)}
/* ufficiale vs stima (regola UI decisioni.md) */
.v-off{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.v-est{color:var(--warn);font-weight:700;font-variant-numeric:tabular-nums;border-bottom:1.5px dotted var(--warn);cursor:help;position:relative}
.v-est::before{content:"≈ "}
.est-chip{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--bg-1));border:1px dashed color-mix(in srgb,var(--warn) 45%,transparent);padding:1px 7px;border-radius:var(--radius-pill);vertical-align:middle}
/* segnaposto sezioni in costruzione */
.pres-wip{text-align:center;padding:60px 24px;border:1.5px dashed var(--line);border-radius:var(--radius-lg);background:var(--bg-1)}
.pres-wip-badge{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));padding:4px 12px;border-radius:var(--radius-pill);margin-bottom:14px}
.pres-wip h1{margin:0 0 8px;font-size:24px;font-weight:900}
.pres-wip p{margin:0 auto 20px;font-size:13.5px;color:var(--ink-soft);max-width:440px;line-height:1.6}
/* — Presenze · Richieste (filtri, tabella, modale) — */
.pres-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;align-items:center}
.pres-payroll-filterbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.pres-payroll-filterbar .pres-filters{min-width:0;margin-bottom:0}
.pres-payroll-month{display:flex;flex:0 0 auto;align-items:center;gap:9px;margin-left:auto}
.pres-payroll-month label{color:var(--ink-mute);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.pres-payroll-month select{min-width:178px;height:38px;padding:0 34px 0 14px;border:1px solid var(--line);border-radius:var(--radius-pill);background-color:var(--bg-1);color:var(--ink);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.pres-payroll-month select:hover{border-color:var(--ink-mute)}
.pres-payroll-month select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}
.fchip{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--bg-1);font-size:12px;font-weight:600;color:var(--ink-soft);text-decoration:none;cursor:pointer;transition:all var(--t-fast)}
.fchip:hover{color:var(--ink);border-color:var(--ink-mute)}
.fchip.is-on{background:var(--ink);color:var(--bg-0);border-color:var(--ink)}
.fchip .n{font-size:10px;font-weight:700;background:var(--bg-2);color:var(--ink-mute);padding:1px 6px;border-radius:999px}
.fchip.is-on .n{background:rgba(255,255,255,.18);color:var(--bg-0)}
.fsep{width:1px;height:22px;background:var(--line);align-self:center;margin:0 4px}
.pres-fdd{position:relative;display:inline-block}
.pres-fdd-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:170px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2);padding:6px;flex-direction:column}
.pres-fdd.is-open .pres-fdd-menu{display:flex}
.pres-fdd-menu a{display:block;padding:8px 12px;border-radius:calc(var(--radius) - 4px);font-size:12.5px;font-weight:600;color:var(--ink-soft);text-decoration:none}
.pres-fdd-menu a:hover{background:var(--bg-2);color:var(--ink)}
@media(max-width:780px){.pres-payroll-filterbar{align-items:stretch;flex-direction:column;gap:10px}.pres-payroll-month{justify-content:space-between;width:100%;margin-left:0}.pres-payroll-month select{flex:1;min-width:0}}
.rdot.ritardo{background:#c0392b}.rdot.remoto{background:#5a8fd6}.rdot.altra{background:#d8c33e}
.tipo-cell{display:flex;align-items:center;gap:9px;font-weight:600;color:var(--ink);white-space:nowrap}
.pres-tblwrap{overflow-x:auto}
.pres-tbl{width:100%;border-collapse:collapse;font-size:13px}
.pres-tbl th{text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);padding:10px;border-bottom:1px solid var(--line)}
.pres-tbl td{padding:11px 10px;border-bottom:1px solid var(--line-soft);color:var(--ink-soft);white-space:nowrap;vertical-align:middle}
.pres-tbl tr:last-child td{border-bottom:none}
.pres-tbl th:first-child,.pres-tbl td:first-child{padding-left:2px}
.pres-tbl th:last-child,.pres-tbl td:last-child{padding-right:2px}
.pres-tbl .note-td{white-space:normal;max-width:260px;color:var(--ink-mute);font-size:12px}
/* Richieste Presenze: sul desktop la tabella usa sempre lo spazio disponibile,
   senza creare uno scorrimento orizzontale. Le altre tabelle restano invariate. */
.pf-main.pres-requests-page{max-width:min(1680px,96vw)}
@media(min-width:881px){
  .pres-requests-table-wrap{overflow-x:visible}
  .pres-requests-table{table-layout:fixed}
  .pres-requests-table .pres-requests-col-type{width:180px}
  .pres-requests-table .pres-requests-col-person{width:230px}
  .pres-requests-table .pres-requests-col-note{width:140px}
  .pres-requests-table .pres-requests-col-attachment{width:90px}
  .pres-requests-table .pres-requests-col-status{width:110px}
  .pres-requests-table .pres-requests-col-actions{width:154px}
  .pres-requests-table th,.pres-requests-table td{min-width:0;padding-left:8px;padding-right:8px}
  .pres-requests-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pres-requests-table .tipo-cell{white-space:nowrap}
  .pres-requests-table .pcell{min-width:0;white-space:nowrap}
  .pres-requests-table .pcell b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .pres-requests-table .note-td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pres-requests-table th:last-child,.pres-requests-table td:last-child{text-align:right;overflow:visible}
  .pres-requests-table .racts{justify-content:flex-end;flex-wrap:nowrap;white-space:nowrap}
}
/* Mobile: font ≥16px sui campi di testo → iOS NON zooma al tap (solo tastiera).
   Vale per tutta l'area hub (pagina a tutto schermo). Radio/checkbox esclusi. */
@media(max-width:640px){
  input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=file]),
  textarea,select{font-size:16px!important}
}
/* Utility: nascondi su schermo piccolo (es. occhiello "Presenze · La mia pagina"). */
@media(max-width:640px){.pf-hide-sm{display:none!important}}

/* ── COLORE PER AREA ────────────────────────────────────────────────────
   Ogni area dell'Hub ha il suo accent (ricolora logo + pagine). I token sono
   generati dinamicamente in Router::head() da pim_hub_area_accent_css()
   (default + override admin dal pannello Impostazioni → Colori), NON qui.
   Vedi pim_hub_area_color_defaults() in functions.php per i default. */
/* Pannello Impostazioni → Colori: selettore a tema (niente input color nativo). */
.pf-colorlist{display:flex;flex-direction:column;gap:6px;max-width:760px}
.pf-colorrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 0;border-bottom:1px solid var(--line-soft)}
.pf-colorrow:last-child{border-bottom:none}
.pf-color-name{flex:0 0 140px;font-size:13.5px;font-weight:600;color:var(--ink)}
.pf-color-preview{flex:none;width:26px;height:26px;border-radius:8px;border:1px solid var(--line)}
.pim-formazione-screen input.pf-color-hex{flex:0 0 112px;width:112px;text-transform:lowercase}
.pf-color-swatches{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.pf-color-sw{width:22px;height:22px;border-radius:6px;border:2px solid transparent;cursor:pointer;padding:0;transition:transform var(--t-fast),border-color var(--t-fast)}
.pf-color-sw:hover{transform:scale(1.12)}
.pf-color-sw.is-on{border-color:var(--ink);box-shadow:0 0 0 2px var(--bg-1)}
@media(max-width:640px){.pf-color-name{flex-basis:100%}.pf-color-swatches{margin-left:0;width:100%}}
/* modale nuova richiesta */
.pres-modal-bk{position:fixed;inset:0;background:color-mix(in srgb,var(--ink) 42%,transparent);z-index:500;display:none;align-items:flex-start;justify-content:center;padding:20px;overflow:auto}
.pres-modal-bk.is-open{display:flex}
/* margin:auto → il modale è centrato nel viewport; se è più alto dello schermo
   le margini si annullano e scrolla dall'alto, senza mai tagliarsi in cima. */
.pres-modal{width:100%;max-width:560px;margin:auto;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 50px -20px rgba(0,0,0,.35)}
.pres-modal .modal-hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line-soft)}
.pres-modal .modal-hd h3{margin:0;font-size:16px;font-weight:700}
.pres-modal .modal-hd .x{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);display:grid;place-items:center;cursor:pointer}
.pres-modal .modal-hd .x svg{width:14px;height:14px}
.pres-modal .modal-bd{padding:20px 22px}
.msteps{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:16px}
.msteps b{color:var(--accent)}
.msteps .bar{flex:1;height:2px;background:var(--bg-2);border-radius:1px;overflow:hidden}
.msteps .bar i{display:block;height:100%;background:var(--accent);transition:width var(--t-med)}
.tgrid-sec{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin:14px 0 8px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.topt{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;text-decoration:none;transition:all var(--t-fast)}
.topt:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-1)}
/* Primo passo: riquadri sempre uguali, anche quando l'ultima riga non e completa. */
#pfPresStep1 .tgrid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:54px}
#pfPresStep1 .topt{width:100%;height:100%;min-width:0;justify-content:flex-start;line-height:1.15;text-align:left}
@media(max-width:640px){
  #pfPresStep1 .tgrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:56px}
  #pfPresStep1 .topt{padding:10px 11px}
}
.pres-modal .fld{margin-bottom:14px}
.pres-modal .fld label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px}
.pres-modal .frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-pill);overflow:hidden}
.seg button{border:none;background:var(--bg-0);padding:7px 14px;font-size:12px;font-weight:600;color:var(--ink-soft);cursor:pointer}
.seg button.is-on{background:var(--ink);color:var(--bg-0)}
.pres-modal .modal-ft{display:flex;align-items:center;gap:12px;padding:16px 22px;border-top:1px solid var(--line-soft)}
.mlink{font-size:12.5px;font-weight:600;color:var(--ink-mute);background:none;border:none;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.mlink:hover{color:var(--ink)}
.appr-note{display:flex;align-items:center;gap:9px;background:color-mix(in srgb,var(--info) 8%,var(--bg-0));border:1px solid color-mix(in srgb,var(--info) 25%,var(--line));border-radius:var(--radius);padding:10px 13px;font-size:12px;color:var(--ink-soft)}
.appr-note svg{width:14px;height:14px;color:var(--info);flex:0 0 14px}
.pres-pick{display:flex;gap:8px;flex-wrap:wrap}
.pres-pick-opt{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg-0);font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:all var(--t-fast)}
/* Pillole con avatar (es. scelta persona in Presenze): l'avatar si incolla a
   sinistra come prima → padding sinistro ridotto solo in questo caso. */
.pres-pick-opt:has(.pava){padding-left:7px}
.pres-pick-opt input{position:absolute;opacity:0;pointer-events:none}
.pres-pick-opt:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-0))}
/* Fix GLOBALE: le stringhe lunghe senza spazi (email, URL) non devono mai sforare
   o tagliarsi nelle card. 'overflow-wrap' è EREDITATO → impostarlo sui contenitori
   radice dell'hub (contenuto + tutti i modali, anche quelli portati a <body>) copre
   ogni discendente, presente e futuro. Errore ricorrente risolto in un colpo solo. */
.pf-main,.pres-modal,.pf-modal-backdrop,.pgd-rev-scrim{overflow-wrap:break-word}

/* Guard anti-scroll-orizzontale a livello VIEWPORT (non su .pf-main!).
   Nota (verificato da sessione B): `overflow-x:clip` su .pf-main con overflow-y
   visibile ritaglia le OMBRE (per spec un asse a clip forza clip anche sull'altro).
   Spostandolo sul body si evita lo scroll fantasma su mobile senza tagliare ombre;
   `clip` (non `hidden`) non crea scroll container → sticky ok, scroll pagina ok. */
.pf-main{overflow-x:visible}
body{overflow-x:clip}

/* — Presenze · Calendario — */
.pf-main-wide{max-width:min(1360px,96vw)}
.cal-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.mnav{display:inline-flex;align-items:center;gap:6px}
.mnav .arr{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);display:grid;place-items:center;text-decoration:none}
.mnav .arr:hover{color:var(--ink);border-color:var(--ink-mute)}
.mnav .arr svg{width:15px;height:15px}
.mnav .mlab{font-size:15px;font-weight:700;min-width:130px;text-align:center}
.seg a{display:inline-block;background:var(--bg-1);padding:7px 16px;font-size:12px;font-weight:600;color:var(--ink-soft);text-decoration:none}
.seg a.is-on{background:var(--ink);color:var(--bg-0)}
.legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-left:auto;font-size:11.5px;color:var(--ink-soft)}
.lg{display:inline-flex;align-items:center;gap:6px}
.lg i{width:14px;height:10px;border-radius:3px;display:inline-block}
.lg .ferie{background:#e2a03f}.lg .permesso{background:#40bfb3}.lg .malattia{background:#8a7ee6}.lg .infortunio{background:#df6b57}.lg .remoto{background:#5a8fd6}.lg .extra{background:var(--info)}.lg .cambio-orario{background:#5f72e6}
.lg .attesa{background:color-mix(in srgb,#e2a03f 22%,var(--bg-1));border:1.5px dashed #e2a03f}
.cal{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1);overflow-x:auto}
.cal-grid{display:grid;grid-template-columns:150px repeat(var(--cols,31),minmax(24px,1fr));gap:2px;min-width:980px}
.ch{font-size:9.5px;font-weight:700;color:var(--ink-mute);text-align:center;padding:4px 0 6px;line-height:1.25}
.ch b{display:block;font-size:11px;color:var(--ink-soft)}
.ch.we{color:color-mix(in srgb,var(--warn) 55%,var(--ink-mute))}
.ch.today,.ch.today b{color:var(--accent)}
.cp{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink);padding:6px 6px 6px 2px;white-space:nowrap}
.cp .pava{flex:0 0 26px;width:26px;height:26px;font-size:10px}
.cd{height:34px;border-radius:6px;background:var(--bg-0);border:1px solid var(--line-soft);position:relative;display:block}
.cd.we{background:var(--bg-2);border-color:transparent}
.cd.today{box-shadow:inset 0 0 0 1.5px var(--accent)}
.cd .ev{position:absolute;inset:3px;border-radius:4px;display:block}
.cd .ev.ferie{background:#e2a03f}.cd .ev.permesso{background:#40bfb3}.cd .ev.malattia{background:#8a7ee6}.cd .ev.infortunio{background:#df6b57}.cd .ev.remoto{background:#5a8fd6}.cd .ev.extra{background:var(--info)}.cd .ev.ritardo{background:#c0392b}.cd .ev.altra{background:#d8c33e}
.cd .ev.half{top:50%}
.cd .ev.attesa{background:color-mix(in srgb,#e2a03f 20%,var(--bg-0));border:1.5px dashed #e2a03f}
.cd .ev.top{inset:3px 3px 50% 3px;border-radius:4px 4px 0 0}
.cd .ev.bot{inset:52% 3px 3px 3px;border-radius:0 0 4px 4px}
.cd[data-tip]:hover{z-index:50}
.cd-click,.wd-click{cursor:pointer}
.cd-click:hover{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:1px}
.wd-click:hover{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:1px}
/* modale dettaglio-giorno */
.pfday-list{display:flex;flex-direction:column;gap:10px}
.pfday-row{display:flex;align-items:center;gap:10px}
.pfday-dot{flex:none;width:12px;height:12px;border-radius:4px;background:var(--ink-mute)}
.pfday-dot.ferie{background:#e2a03f}.pfday-dot.permesso{background:#40bfb3}.pfday-dot.malattia{background:#8a7ee6}.pfday-dot.infortunio{background:#df6b57}.pfday-dot.remoto{background:#5a8fd6}.pfday-dot.extra{background:var(--info)}.pfday-dot.ritardo{background:#c0392b}.pfday-dot.altra{background:#d8c33e}.pfday-dot.cambio_orario{background:#5f72e6}
.pfday-txt{flex:1;min-width:0}
.pfday-txt b{display:block;font-size:13px;color:var(--ink)}
.pfday-txt span{font-size:11.5px;color:var(--ink-mute)}
.pfday-empty{font-size:13px;color:var(--ink-soft);line-height:1.5}
.pres-shift-marker{position:absolute;z-index:4;top:7px;right:7px;width:24px;height:17px;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);border-radius:6px;display:grid;place-items:center;color:color-mix(in srgb,var(--ink) 78%,transparent);background:color-mix(in srgb,var(--bg-0) 84%,transparent);box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 11%,transparent);pointer-events:none}
.pres-shift-marker svg{width:14px;height:14px}
.cd .pres-shift-marker{top:50%;left:50%;right:auto;width:18px;height:14px;transform:translate(-50%,-50%);border-radius:5px}
.cd .pres-shift-marker svg{width:10px;height:10px}
.pres-shift-marker.is-waiting{color:var(--warn);background:color-mix(in srgb,var(--bg-0) 90%,transparent);border-style:dashed;box-shadow:none}
.cal-foot{margin-top:12px;font-size:11.5px;color:var(--ink-mute)}
.wk-grid{display:grid;grid-template-columns:150px repeat(7,1fr);gap:6px;min-width:900px}
.wh{text-align:center;padding:4px 0 8px;font-size:11px;font-weight:700;color:var(--ink-soft)}
.wh small{display:block;font-size:10px;font-weight:600;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.08em}
.wh.we{color:color-mix(in srgb,var(--warn) 55%,var(--ink-mute))}
.wh.today,.wh.today small{color:var(--accent)}
.wd{min-height:86px;border-radius:8px;background:var(--bg-0);border:1px solid var(--line-soft);padding:4px;display:flex;flex-direction:column;gap:4px}
.wd.we{background:var(--bg-2);border-color:transparent}
.wd.today{box-shadow:inset 0 0 0 1.5px var(--accent)}
.wev{border-radius:6px;padding:5px 8px;font-size:10.5px;font-weight:700;line-height:1.25;color:#fff;display:block}
.wev small{display:block;font-weight:600;opacity:.85;font-size:9.5px}
.wev.ferie{background:#e2a03f}.wev.permesso{background:#40bfb3}.wev.remoto{background:#5a8fd6}.wev.malattia{background:#8a7ee6}.wev.infortunio{background:#df6b57}.wev.extra{background:var(--info)}.wev.ritardo{background:#c0392b}.wev.altra{background:#d8c33e;color:#4a4008}
.wev.attesa{background:color-mix(in srgb,#e2a03f 18%,var(--bg-0));border:1.5px dashed #e2a03f;color:#a06a14}
:root[data-pim-theme="dark"] .wev.attesa{color:#e2a03f}
/* — Presenze · Impostazioni — */
.pres-setgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:18px;align-items:start}
.pres-setcard{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow-1)}
.pres-setcard h2{margin:0 0 4px;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px}
.pres-setcard .sub{font-size:12px;color:var(--ink-mute);margin-bottom:12px}
.pres-security-card{grid-column:1/-1}
.pres-sec-status{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 15px}
.pres-sec-note{margin-top:14px;padding:12px 14px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--bg-0));font-size:11.5px;line-height:1.55;color:var(--ink-soft)}
.orow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
.orow:last-of-type{border-bottom:none}
.otxt b{display:block;font-size:13px;font-weight:600;color:var(--ink)}
.otxt span{font-size:11.5px;color:var(--ink-mute)}
.olink{font-size:12px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;white-space:nowrap}
.num-pill{display:inline-flex;align-items:center;gap:5px;background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius-pill);padding:4px 10px;font-weight:700;font-variant-numeric:tabular-nums}
.num-pill input{width:64px;border:none;background:transparent;font:inherit;color:inherit;text-align:right;outline:none}
.num-pill small{font-size:10px;font-weight:600;color:var(--ink-mute)}
.pres-tgl{position:relative;display:inline-block;width:40px;height:22px;flex:0 0 40px;cursor:pointer}
.pres-tgl input{position:absolute;opacity:0;pointer-events:none}
.pres-tgl i{position:absolute;inset:0;border-radius:999px;background:var(--bg-3);border:1px solid var(--line);transition:background var(--t-fast)}
.pres-tgl i::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--bg-0);box-shadow:var(--shadow-1);transition:transform var(--t-fast)}
.pres-tgl input:checked + i{background:var(--accent);border-color:var(--accent)}
.pres-tgl input:checked + i::after{transform:translateX(18px)}
.pres-addorario{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pres-addorario input{flex:1;min-width:120px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);padding:8px 11px;font:inherit;color:var(--ink)}
.pres-oselect{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.orow-acts{display:flex;align-items:center;gap:12px;flex:none}
.pres-orario-edit{margin:4px 0 14px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-0);display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.pres-orario-edit[hidden]{display:none}
.pres-orario-new{margin-top:12px;border-style:dashed}
.pres-orario-edit>input[type=text]{flex:1;min-width:140px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);padding:8px 11px;font:inherit;color:var(--ink)}
.pres-orario-edit>div:last-child{width:100%}
.pres-work-slots{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}
.pres-work-slots>b{display:block;font-size:11px;color:var(--ink)}
.pres-work-slots>span{display:block;margin-top:2px;font-size:10px;color:var(--ink-mute)}
.pres-work-slots-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}
.pres-work-slots-grid>label>small{display:block;margin-bottom:4px;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute)}
.pres-work-slots-grid>label>span{display:flex;align-items:center;gap:6px}
.pres-work-slots-grid input{width:72px;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--bg-2);padding:7px 8px;font:inherit;font-size:12px;font-weight:750;color:var(--ink);text-align:center}
.pres-work-slots-grid i{font-style:normal;color:var(--ink-mute)}
.pres-days{display:flex;gap:6px;flex-wrap:wrap;width:100%}
.pres-day{flex:1;min-width:52px;display:flex;flex-direction:column;align-items:center;gap:3px}
.pres-day span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute)}
.pres-day input{width:100%;text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);padding:7px 4px;font:inherit;font-weight:700;color:var(--ink)}
.pres-day input[value="0"],.pres-day input:placeholder-shown{color:var(--ink-mute)}
@media(max-width:600px){
  .pres-setgrid{grid-template-columns:minmax(0,1fr)}
  .pres-setcard{padding:17px 15px}
  .pres-work-slots-grid,.pres-shift-slots{grid-template-columns:1fr}
  .pres-security-card .orow{align-items:flex-start}
  .pres-security-card .otxt span{display:block;overflow-wrap:anywhere}
  .pres-sec-status{gap:5px}
}
/* — Presenze · Contatori / Buste / Persone — */
.pres-legend-cnt{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:14px;font-size:12px;color:var(--ink-soft)}
.pres-legend-cnt span{display:inline-flex;align-items:center;gap:8px}
.sw-off{width:14px;height:10px;border-radius:3px;background:var(--ink);display:inline-block}
.sw-est{width:14px;height:10px;border-radius:3px;background:color-mix(in srgb,var(--warn) 20%,var(--bg-1));border:1.5px dashed var(--warn);display:inline-block}
.cnt-pair{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.est-line{display:inline-flex;align-items:center;gap:6px}
.busta-cell b{display:block;font-size:12.5px;color:var(--ink)}
.busta-cell span{font-size:11px;color:var(--ink-mute)}
.row-warn td{background:color-mix(in srgb,var(--warn) 5%,transparent)}
.pres-dis{color:var(--ink-mute);opacity:.5}
.pres-tbl .comporto-cell{width:92px}
.comporto{display:inline-flex;align-items:baseline;gap:5px;min-width:0}
.comporto-used{display:inline-flex;align-items:baseline;gap:2px;color:var(--ink);font-weight:800;font-variant-numeric:tabular-nums}
.comporto-used::before{content:"";width:7px;height:7px;margin-right:3px;border-radius:50%;background:#8a7ee6;box-shadow:0 0 0 3px color-mix(in srgb,#8a7ee6 13%,transparent)}
.comporto-used small{font-size:10px;font-weight:700;color:var(--ink-mute)}
.comporto-limit{font-size:10.5px;color:var(--ink-mute)}
.health-counts{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.health-counts .comporto-used::before{display:none}
.health-tag{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;font-size:9px;font-weight:900;color:#fff;align-self:center}
.health-tag.malattia{background:#8a7ee6}.health-tag.infortunio{background:#df6b57}
.health-counts .comporto.infortunio{padding-top:4px;border-top:1px solid var(--line-soft)}
.pres-health-stat .health-stat-row{display:flex;align-items:center;gap:7px}
.pres-health-stat .health-stat-row.infortunio{margin-top:9px;padding-top:8px;border-top:1px solid var(--line-soft)}
.pres-health-stat .health-stat-row .val{font-size:20px}
.pres-health-stat .health-stat-note{margin-left:auto;font-size:10px;color:var(--ink-mute)}
.bar-mini{display:inline-block;width:70px;height:5px;border-radius:3px;background:var(--bg-2);overflow:hidden;vertical-align:middle;margin-right:6px}
.bar-mini i{display:block;height:100%;background:#8a7ee6}
.pres-drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:34px 20px;border:2px dashed var(--line);border-radius:var(--radius-lg);background:var(--bg-0);cursor:pointer;text-align:center;transition:border-color var(--t-fast)}
.pres-drop:hover{border-color:var(--accent)}
.pres-drop input{position:absolute;opacity:0;pointer-events:none}
.pres-drop-ico{font-size:30px}
.pres-drop b{font-size:14px}
.pres-drop span{font-size:12px;color:var(--ink-mute)}
.pres-busta-file{font-weight:700;font-size:13.5px;margin-bottom:12px}
.pres-busta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.pres-busta-row{transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.pres-busta-row.is-blocked{border-color:color-mix(in srgb,var(--err) 55%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--err) 16%,transparent)}
.pres-busta-checks{display:flex;flex-wrap:wrap;gap:7px;margin:-2px 0 14px}
.pres-busta-checks>span{padding:7px 10px;border:1px solid color-mix(in srgb,var(--ok) 34%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--ok) 8%,var(--bg-1));color:var(--ok);font-size:10.5px;font-weight:700}
.pres-busta-checks small{margin-left:4px;color:var(--ink-mute);font-weight:600}
.pres-busta-block{margin:-2px 0 14px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--err) 9%,var(--bg-1));color:var(--ink-soft);font-size:11.5px;line-height:1.45}.pres-busta-block b{color:var(--err)}
.pres-busta-grid>div{display:grid;align-content:start;gap:5px;min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:var(--bg-0)}
.pres-busta-grid>div>span{color:var(--ink-mute);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pres-busta-grid>div>b{font-size:16px}.pres-busta-grid>div>small{color:var(--ink-soft);font-size:10.5px;line-height:1.35}
.fld-block{margin-bottom:14px}
.fld-lab{display:block;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px}
.fld-lab small{color:var(--ink-mute)}
.pres-busta-grid > label > span{display:block;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:5px}
.pres-busta-grid input[type=month],.pres-busta-grid input[type=number]{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);padding:8px 10px;font:inherit;color:var(--ink)}
.pres-busta-hint{margin-top:10px;font-size:11.5px;color:var(--ink-mute)}
@media(max-width:640px){.pres-busta-checks{display:grid;grid-template-columns:1fr}.pres-busta-grid{grid-template-columns:1fr 1fr}.pres-busta-grid>div{padding:11px}.pres-busta-grid>div>b{font-size:14px}}
@media(max-width:430px){.pres-busta-grid{grid-template-columns:1fr}}
.pres-persone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.pres-pcard{display:flex;align-items:center;gap:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1);text-decoration:none;color:var(--ink);transition:transform var(--t-fast),box-shadow var(--t-fast),border-color var(--t-fast)}
.pres-pcard:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.pres-pcard-tx{flex:1;min-width:0}
.pres-pcard-tx b{display:block;font-size:14px}
.pres-pcard-tx small{font-size:11.5px;color:var(--ink-mute)}
.pres-pcard-cta{font-size:12px;font-weight:700;color:var(--accent);white-space:nowrap}
/* — Presenze · Spese / Documenti — */
.pres-spesa-form{padding:18px 20px;margin-bottom:18px;display:none}
.pres-spesa-form.is-open{display:block}
.pres-spesa-form input[type=date],.pres-spesa-form input[type=text],.pres-spesa-form input[type=number],.pres-spesa-form input[type=file]{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);padding:8px 10px;font:inherit;color:var(--ink)}
.cat{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:3px 10px;border-radius:var(--radius-pill);background:var(--bg-2);color:var(--ink-soft);white-space:nowrap}
.cat i{width:8px;height:8px;border-radius:50%;display:inline-block}
.cat.vitto i{background:#e2a03f}.cat.viaggio i{background:#5a8fd6}.cat.km i{background:#7f8c5a}.cat.materiali i{background:#b06fc0}
.imp{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
/* Sfoca importi/conteggi sensibili quando l'admin attiva "Sfoca" nel topbar (per
   mostrare lo schermo ai dipendenti senza rivelare i saldi altrui). */
.pf-blur-off{display:none}
:root[data-pf-blur] [data-pf-blur-toggle] .pf-blur-on{display:none}
:root[data-pf-blur] [data-pf-blur-toggle] .pf-blur-off{display:inline-flex}
:root[data-pf-blur] [data-pf-blur-toggle]{color:var(--accent);background:var(--bg-2);border-color:var(--line)}
:root[data-pf-blur] .v-off,
:root[data-pf-blur] .v-est,
:root[data-pf-blur] .comporto,
:root[data-pf-blur] .imp,
:root[data-pf-blur] .pres-saldi .sval{filter:blur(6px);-webkit-filter:blur(6px);user-select:none;pointer-events:none;transition:filter .18s ease}
.rbtn.pay:hover{background:var(--info);border-color:var(--info);color:var(--info-ink)}
a.rbtn{text-decoration:none}
/* — Presenze · Export / Import — */
.pres-export-form{display:inline-flex;gap:8px;align-items:center}
.pres-month-picker{position:relative;min-width:194px}
.pres-month-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:42px;padding:8px 12px 8px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast)}
.pres-month-trigger:hover{border-color:color-mix(in srgb,var(--ink) 34%,var(--line));background:var(--bg-1)}
.pres-month-trigger:focus-visible,.pres-month-picker.is-open .pres-month-trigger{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 17%,transparent)}
.pres-month-trigger svg{width:20px;height:20px;flex:0 0 auto;color:var(--ink-soft)}
.pres-month-popover[hidden]{display:none}
.pres-month-popover{position:absolute;z-index:10031;top:calc(100% + 9px);right:0;width:316px;padding:14px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:18px;background:var(--bg-0);box-shadow:0 24px 70px -24px rgba(0,0,0,.6);opacity:0;pointer-events:none;transform:translateY(-7px) scale(.985);transform-origin:top right;transition:opacity .17s ease,transform .17s cubic-bezier(.22,.8,.36,1)}
.pres-month-picker.is-open .pres-month-popover{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.pres-month-head{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:12px}
.pres-month-head strong{text-align:center;font-size:15px;font-weight:850;letter-spacing:.03em}
.pres-month-nav{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--bg-2);color:var(--ink-soft);cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),color var(--t-fast)}
.pres-month-nav:hover,.pres-month-nav:focus-visible{outline:0;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-1));color:var(--accent)}
.pres-month-nav svg{width:17px;height:17px}.pres-month-nav.is-prev svg{transform:rotate(180deg)}
.pres-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.pres-month-grid button{position:relative;min-height:42px;padding:8px;border:1px solid var(--line-soft);border-radius:11px;background:var(--bg-1);color:var(--ink-soft);font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),color var(--t-fast),transform var(--t-fast)}
.pres-month-grid button:hover,.pres-month-grid button:focus-visible{outline:0;transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 52%,var(--line));color:var(--ink)}
.pres-month-grid button.is-current::after{content:"";position:absolute;left:50%;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--accent);transform:translateX(-50%)}
.pres-month-grid button.is-selected{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 20px -12px color-mix(in srgb,var(--accent) 85%,transparent)}
.pres-month-grid button.is-selected::after{background:currentColor}
.pres-month-popover>p{margin:12px 2px 0;padding-top:11px;border-top:1px solid var(--line-soft);color:var(--ink-mute);font-size:10.5px;line-height:1.45;text-align:center}
.pres-export-form>.btn{min-height:42px}.pres-export-form>.btn svg{width:17px;height:17px;flex:0 0 auto}
@media(max-width:720px){
  .pres-head-cta,.pres-export-form{width:100%}
  .pres-export-form{display:grid;grid-template-columns:minmax(0,1fr)}
  .pres-month-picker,.pres-month-trigger,.pres-export-form>.btn{width:100%}
  .pres-month-picker.is-open::before{content:"";position:fixed;z-index:10030;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
  .pres-month-popover{position:fixed;top:50%;left:50%;right:auto;width:min(340px,calc(100vw - 32px));transform:translate(-50%,-46%) scale(.985);transform-origin:center}
  .pres-month-picker.is-open .pres-month-popover{transform:translate(-50%,-50%) scale(1)}
}
.pres-map-sel{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);padding:6px 8px;font:inherit;font-size:12px;color:var(--ink);-webkit-appearance:none;appearance:none}
/* — Presenze · Migrazione Fluida — */
.pres-fluida-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pres-fluida-steps form{margin:0}
.pres-fluida-an{margin-bottom:6px}
.pres-valori-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.pres-valori-form label{display:flex;flex-direction:column;gap:3px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute)}
.pres-valori-form input{width:110px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-0);padding:7px 9px;font:inherit;color:var(--ink)}
/* — Presenze · correzioni Niccolò 16/07 — */
/* avatar sempre tondo (mai ovale) */
.uava,.pava{flex-shrink:0;aspect-ratio:1/1}
.pf-user .uava{flex:0 0 auto}
/* calendario: lavoro standard colore leggero */
.cd.lav{background:color-mix(in srgb,var(--ok) 7%,var(--bg-0));border-color:color-mix(in srgb,var(--ok) 16%,var(--line-soft))}
.lg .lavoro{background:color-mix(in srgb,var(--ok) 18%,var(--bg-1));border:1px solid color-mix(in srgb,var(--ok) 30%,var(--line))}
.lg .ritardo{background:#c0392b}.lg .altra{background:#d8c33e}
/* oggi: cerchio pieno sul numero in header, niente bordi cella */
.ch.today b{display:block;width:19px;height:19px;line-height:19px;margin:1px auto 0;border-radius:50%;text-align:center;background:var(--accent);color:var(--accent-ink,#fff)}
.cd.today{box-shadow:none}
.wd.today{box-shadow:none;border-color:color-mix(in srgb,var(--accent) 40%,var(--line-soft))}
/* fascia proporzionale (permessi orari): ancorata in basso */
.cd .ev.part{inset:auto 3px 3px 3px;border-radius:4px}
/* switcher persona */
.pres-switch-btn{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:var(--bg-1);color:var(--ink-soft);display:inline-grid;place-items:center;cursor:pointer;vertical-align:middle}
.pres-switch-btn svg{width:15px;height:15px}
.pres-switch-btn:hover{color:var(--ink);border-color:var(--ink-mute)}
/* settimana (scheda persona + mia pagina) */
.pres-week .wrow2{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:13px}
.pres-week .wrow2:last-child{border-bottom:none}
.wd2{flex:0 0 70px;font-weight:700;font-size:12px;color:var(--ink-soft)}
.wd2.today{color:var(--accent)}
.wtxt2{flex:1;color:var(--ink-soft)}
.wtxt2 b{color:var(--ink)}
/* la mia pagina */
.pres-today-pill{display:inline-flex;align-items:center;gap:8px;margin-top:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-pill);padding:7px 15px;font-size:12.5px;font-weight:600;color:var(--ink-soft)}
.pres-today-pill i{width:8px;height:8px;border-radius:50%;background:var(--ok)}
.pres-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:30px}
.pres-acts .act{display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;cursor:pointer;transition:all var(--t-fast);box-shadow:var(--shadow-1);font:inherit;text-align:left}
.pres-acts .act:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.pres-acts .aico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:17px;color:#fff}
.pres-acts .act b{font-size:13.5px;font-weight:700;color:var(--ink)}
.pres-acts .act span{font-size:11px;color:var(--ink-mute);margin-top:-6px}
.pres-acts .act.ferie .aico{background:#e2a03f}
.pres-acts .act.permesso .aico{background:#40bfb3}
.pres-acts .act.malattia .aico{background:#8a7ee6}
.pres-acts .act.cambio-orario .aico{background:#5f72e6}
.pres-health-modal-choices .topt{min-height:72px;text-align:left}
.pres-health-modal-choices .topt>span:last-child{display:flex;flex-direction:column;gap:3px}
.pres-health-modal-choices .topt b{font-size:13px;color:var(--ink)}
.pres-health-modal-choices .topt small{font-size:11px;font-weight:500;color:var(--ink-mute)}
.pres-health-modal-note{margin:12px 0 0;font-size:11.5px;line-height:1.5;color:var(--ink-mute)}
.pres-health-alert{margin:3px 0 14px;padding:11px 12px;border-radius:10px;background:color-mix(in srgb,#df6b57 12%,var(--bg-1));border:1px solid color-mix(in srgb,#df6b57 35%,var(--line));color:var(--ink-soft);font-size:12px;line-height:1.45}
.pres-health-alert b{color:#b74e3e}
.pres-acts .act.altro .aico{background:var(--ink);color:var(--bg-0)}
.pres-saldi{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:8px}
@media(max-width:600px){.pres-saldi{grid-template-columns:1fr}}
.pres-saldi .saldo{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-1)}
.pres-saldi .slab{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:8px}
.pres-saldi .sval{font-size:30px;font-weight:900;letter-spacing:-.01em;line-height:1;font-variant-numeric:tabular-nums}
.pres-saldi .sval small{font-size:14px;font-weight:500;color:var(--ink-mute)}
.pres-saldi .sfoot{margin-top:9px;font-size:11.5px;color:var(--ink-mute);line-height:1.5}
.pres-saldi-note{font-size:11.5px;color:var(--ink-mute);margin-bottom:30px}
.pres-pay-toggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg-1);color:var(--ink-soft);font:inherit;font-size:11.5px;font-weight:750;cursor:pointer;white-space:nowrap;transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}
.pres-pay-toggle svg{width:17px;height:17px;flex:0 0 auto}
.pres-pay-toggle small{font-size:9.5px;font-weight:600;color:var(--ink-mute)}
.pres-pay-toggle:hover,.pres-pay-toggle:focus-visible{border-color:var(--accent);color:var(--accent);outline:none}
.pres-pay-toggle.is-paid{border-color:var(--accent);background:var(--bg-2);color:var(--accent)}
.pres-rlist{display:flex;flex-direction:column;gap:8px}
.rrow2{display:flex;align-items:center;gap:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);padding:12px 15px}
.rrow2 .rtxt{flex:1;min-width:0}
.rrow2 .rtxt b{display:block;font-size:13.5px;color:var(--ink);font-weight:600}
.rrow2 .rtxt span{font-size:11.5px;color:var(--ink-mute)}
.rrow2 .bico{flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--err) 9%,var(--bg-1));display:grid;place-items:center;font-size:14px}
.pres-footnote{display:flex;gap:9px;align-items:center;background:var(--bg-1);border:1px solid var(--line-soft);border-radius:var(--radius);padding:11px 14px;font-size:12px;color:var(--ink-mute);margin-bottom:20px}
.pres-demo-bar{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;text-align:center;gap:6px;background:var(--ink);color:var(--bg-0);padding:9px 16px;border-radius:18px;font-size:12px;box-shadow:var(--shadow-2);max-width:min(92vw,560px);line-height:1.5}
/* — Presenze · box competenza/provenienza (scheda persona, admin-only) — */
.pres-prov{padding:18px 20px}
.pres-prov-intro{font-size:12.5px;color:var(--ink-soft);line-height:1.55;margin-bottom:14px}
.pres-prov-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.pres-prov-grid{grid-template-columns:1fr}}
.pres-prov-col{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:var(--bg-0)}
.pres-prov-pi{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--bg-0))}
.pres-prov-prec{border-color:color-mix(in srgb,var(--warn) 30%,var(--line));background:color-mix(in srgb,var(--warn) 5%,var(--bg-0))}
.pres-prov-h{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:10px}
.pres-prov-pi .pres-prov-h{color:var(--accent)}
.pres-prov-prec .pres-prov-h{color:var(--warn)}
.pres-prov-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--line-soft);font-size:13px;color:var(--ink-soft)}
.pres-prov-row:last-child{border-bottom:none}
.pres-prov-row b{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.pres-prov-row b.neg{color:var(--err)}
.pres-prov-foot{margin-top:12px;font-size:11px;color:var(--ink-mute);line-height:1.5}
/* — Presenze · calendario a BARRE DI RIEMPIMENTO (v2) — */
/* la cella bianca è la base; le fasce salgono dal basso, proporzionali alle ore */
.cd{position:relative;overflow:hidden;background:var(--bg-0)}
.cfw{position:absolute;inset:2px}
.cd .cf{position:absolute;left:0;right:0;border-radius:2px;display:block}
.cd .cf.lavoro{background:color-mix(in srgb,var(--ok) 26%,var(--bg-0))}
.cd .cf.remoto{background:#5a8fd6}
.cd .cf.extra{background:var(--info)}
.cd .cf.ferie{background:#e2a03f}
.cd .cf.permesso{background:#40bfb3}
.cd .cf.malattia{background:#8a7ee6}
.cd .cf.infortunio{background:#df6b57}
.cd .cf.ritardo{background:#c0392b}
.cd .cf.altra{background:#d8c33e}
.cd .cf.attesa{background:transparent;border:1.5px dashed currentColor}
.cd .cf.ferie.attesa{color:#e2a03f}.cd .cf.permesso.attesa{color:#40bfb3}.cd .cf.malattia.attesa{color:#8a7ee6}.cd .cf.infortunio.attesa{color:#df6b57}.cd .cf.remoto.attesa{color:#5a8fd6}.cd .cf.extra.attesa{color:var(--info)}.cd .cf.altra.attesa{color:#c9a800}.cd .cf.ritardo.attesa{color:#c0392b}
.cd.we{background:var(--bg-2)}
/* settimana: barre più grandi CON testo dentro */
.wd{position:relative;overflow:hidden;background:var(--bg-0);min-height:86px}
.wd .cfw{inset:4px}
.wd .cf{position:absolute;left:0;right:0;border-radius:5px;display:flex;align-items:flex-start;padding:4px 7px;overflow:hidden}
.wd .cf span{font-size:10px;font-weight:700;color:#fff;line-height:1.15;text-shadow:0 1px 1px rgba(0,0,0,.12);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Barra troppo sottile per una riga di testo → solo colore (il dettaglio è al click). */
.wd .cf.no-lbl span{display:none}
.wd .cf.lavoro{background:color-mix(in srgb,var(--ok) 30%,var(--bg-0))}
.wd .cf.lavoro span{color:var(--ink);text-shadow:none}
.wd .cf.remoto{background:#5a8fd6}.wd .cf.extra{background:var(--info)}.wd .cf.ferie{background:#e2a03f}.wd .cf.permesso{background:#40bfb3}.wd .cf.malattia{background:#8a7ee6}.wd .cf.infortunio{background:#df6b57}.wd .cf.ritardo{background:#c0392b}.wd .cf.altra{background:#d8c33e}
.wd .cf.altra span{color:#4a4008;text-shadow:none}
.wd .cf.attesa{background:transparent;border:1.5px dashed currentColor}
.wd .cf.permesso.attesa span,.wd .cf.ferie.attesa span,.wd .cf.malattia.attesa span,.wd .cf.infortunio.attesa span,.wd .cf.remoto.attesa span,.wd .cf.extra.attesa span{color:currentColor;text-shadow:none}
.wd .cf.ferie.attesa{color:#a06a14}.wd .cf.permesso.attesa{color:#2c7d74}.wd .cf.malattia.attesa{color:#6a5cc0}.wd .cf.infortunio.attesa{color:#b74e3e}.wd .cf.remoto.attesa{color:#3a6db5}.wd .cf.extra.attesa{color:var(--info)}
.wd.we{background:var(--bg-2)}
/* — La mia pagina · icone SVG nelle action card — */
.pres-acts .aico svg{width:21px;height:21px}
/* — La mia pagina · settimana oraria (una riga, 5 giorni) — */
.pres-myweek{display:grid;grid-template-columns:32px repeat(5,1fr);gap:8px}
.pres-myweek .mwaxis .mwh-ghost{visibility:hidden;border-color:transparent;background:none}
.mwax{position:relative;flex:1;margin:7px 0}
.mwax i{position:absolute;right:3px;transform:translateY(50%);font-style:normal;font-size:9.5px;font-weight:700;line-height:1;color:var(--ink-mute)}
.pres-myweek .wd .mwgrid{position:absolute;inset:6px;pointer-events:none}
.mwgrid i{position:absolute;left:0;right:0;height:1px;background:color-mix(in srgb,var(--ink) 12%,transparent)}
.pres-myweek .mwcol{display:flex;flex-direction:column;gap:6px}
.pres-myweek .mwh{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:14px;font-weight:800;color:var(--ink);padding:6px 0;border-radius:8px;background:var(--bg-1);border:1px solid var(--line)}
.pres-myweek .mwh small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute)}
.pres-myweek .mwh.today{background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));border-color:color-mix(in srgb,var(--accent) 62%,var(--line));color:var(--ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.pres-myweek .mwh.today small{color:var(--accent)}
.pres-myweek .wd{min-height:158px;border:1px solid var(--line);border-radius:10px}
.pres-myweek .wd .cfw{inset:6px}
.pres-myweek .wd .cf{border-radius:7px}
.pres-myweek .wd:not(.today) .cf.lavoro{background:var(--accent)}
.pres-myweek .wd:not(.today) .cf.lavoro span{color:var(--accent-ink);text-shadow:none}
.pres-myweek .wd.today{background:color-mix(in srgb,var(--accent) 5%,var(--bg-1));border-color:color-mix(in srgb,var(--accent) 62%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.pres-myweek .wd.today .cf.lavoro{background:color-mix(in srgb,var(--accent) 11%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line))}
.pres-myweek .wd.today .cf.lavoro span{color:var(--accent);text-shadow:none}
.pres-mwleg{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;font-size:11px;color:var(--ink-mute)}
.pres-mwleg span{display:inline-flex;align-items:center;gap:6px}
.pres-mwleg i{width:14px;height:10px;border-radius:3px;display:inline-block}
.pres-mwleg .lg-lavoro{background:var(--accent)}
.pres-mwleg .lg-remoto{background:#5a8fd6}.pres-mwleg .lg-extra{background:var(--info)}
.pres-mwleg .lg-ferie{background:#e2a03f}.pres-mwleg .lg-permesso{background:#40bfb3}.pres-mwleg .lg-malattia{background:#8a7ee6}.pres-mwleg .lg-infortunio{background:#df6b57}
.pres-mwleg .lg-cambio-orario{background:#5f72e6}
.pres-mwleg .lg-att{background:transparent;border:1.5px dashed var(--ink-mute)}
/* — La mia pagina · due colonne richieste + buste — */
.pres-2col{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.pres-2col .sec{margin:0}
.sec-head .sec-sub{font-size:12px;font-weight:600;color:var(--ink-mute)}
.sec-head .sec-link{font:inherit;font-size:12px;font-weight:700;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}
.sec-head .sec-link:hover{text-decoration:underline}
@media(max-width:860px){.pres-2col{grid-template-columns:1fr}.pres-myweek{grid-template-columns:24px repeat(5,1fr);gap:4px}.pres-myweek .wd{min-height:120px}}
/* — Scheda utente admin · caricamento foto profilo — */
.ut-ana-foto .ut-foto-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ut-foto-prev{width:72px;height:72px;border-radius:50%;background-size:cover;background-position:center;background-color:var(--bg-2);border:1px solid var(--line);flex:0 0 auto;display:grid;place-items:center;font-weight:800;color:var(--ink-soft);font-size:26px}
.ut-foto-in{flex:1 1 220px;margin:0}
.ut-foto-in input[type=file]{font:inherit;font-size:13px}
.ut-foto-hint{display:block;margin-top:4px;font-size:11px;color:var(--ink-mute)}
/* — Presenze · blocco "Sincronizza con Fluida" — */
.pres-fluida-sync{display:flex;flex-direction:column;gap:8px;padding:16px;margin:0 0 16px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:var(--radius-lg)}
.pres-fluida-sync form{margin:0}
.pres-fluida-sync-note{font-size:12px;color:var(--ink-soft);line-height:1.5}
/* — Modale richieste · controlli del tema (zero UI nativa) — */
.pres-modal [hidden]{display:none!important}
.pfld{display:flex;align-items:center;gap:9px;width:100%;padding:11px 12px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;font:inherit;font-size:14px;color:var(--ink);cursor:pointer;text-align:left;transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.pfld svg{width:16px;height:16px;color:var(--ink-mute);flex:0 0 auto}
.pfld .ph{color:var(--ink-mute)}
.pfld:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.pfld.is-open{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}
.pfpanel{margin:10px 0 4px;padding:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-1)}
.pfcal-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.pfcal-hd b{font-size:13.5px;font-weight:700}
.pfcal-nav{width:30px;height:30px;border:1px solid var(--line);background:var(--bg-1);border-radius:8px;cursor:pointer;display:grid;place-items:center;color:var(--ink-soft);font:inherit;font-size:16px;line-height:1}
.pfcal-nav:hover{background:var(--bg-2);color:var(--ink)}
.pfcal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.pfcal-grid .wl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);text-align:center;padding:4px 0}
.pfcal-d{border:none;background:none;font:inherit;font-size:12.5px;padding:8px 0;border-radius:8px;cursor:pointer;color:var(--ink)}
.pfcal-d:hover{background:var(--bg-2)}
.pfcal-d.is-today{box-shadow:inset 0 0 0 1.5px var(--accent)}
.pfcal-d.is-sel{background:var(--accent);color:#fff;font-weight:700}
.pfcal-d.is-range{background:color-mix(in srgb,var(--accent) 14%,var(--bg-1))}
.pftime-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;max-height:200px;overflow-y:auto}
.pftime-t{border:1px solid var(--line);background:var(--bg-1);border-radius:8px;padding:8px 0;font:inherit;font-size:12.5px;cursor:pointer;color:var(--ink)}
.pftime-t:hover{border-color:var(--accent)}
.pftime-t.is-sel{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.pffile{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pffile-name{font-size:12.5px;color:var(--ink-mute)}
.pffile-name.has{color:var(--ink);font-weight:600}
.pffile-x{width:22px;height:22px;border:none;background:var(--bg-2);border-radius:50%;color:var(--ink-soft);cursor:pointer;font:inherit;font-size:14px;line-height:1;display:grid;place-items:center}
.pffile-x:hover{background:var(--err);color:#fff}
/* — Icone action card: interno BIANCO (vince su .act span color) — */
.pres-acts .act .aico,.pres-acts .act .aico svg{color:#fff}
/* — Campi ora digitabili HH:MM (scrivi l'ora, passa da solo ai minuti) — */
.pftf{display:flex;align-items:center;gap:6px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:8px 12px;width:fit-content}
.pftf input{width:34px;border:none;background:none;font:inherit;font-size:15px;font-weight:700;color:var(--ink);text-align:center;padding:2px 0;outline:none}
.pftf input::placeholder{color:var(--ink-mute);font-weight:400}
.pftf span{font-weight:800;color:var(--ink-mute)}
.pftf:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}
/* — La mia pagina · navigazione settimane (frecce + selettore) — */
.mwnav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mwnav-controls{display:flex;align-items:center;gap:8px}
.mwnav-b{width:30px;height:30px;border:1px solid var(--line);background:var(--bg-1);border-radius:8px;display:grid;place-items:center;color:var(--ink-soft);cursor:pointer;font:inherit;font-size:16px;line-height:1;text-decoration:none;transition:background var(--t-fast)}
.mwnav-b:hover{background:var(--bg-2);color:var(--ink)}
.mwnav-b svg{width:15px;height:15px}
.mwnav-oggi{font-size:12px;font-weight:700;color:var(--accent);text-decoration:none}
.mwnav-oggi:hover{text-decoration:underline}
.mwsec{position:relative}
.pfwk{position:absolute;right:0;top:40px;z-index:80;width:min(430px,92vw);margin:0;box-shadow:var(--shadow-2)}
.pfwk-rows{display:flex;flex-direction:column;gap:2px}
.pfwk-row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:4px 6px;border-radius:8px;text-decoration:none;color:var(--ink);font-size:12.5px}
.pfwk-row span{text-align:center;padding:3px 0}
.pfwk-row span.out{color:var(--ink-mute);opacity:.5}
.pfwk-row.pfwk-hd{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);pointer-events:none}
a.pfwk-row:hover{background:var(--bg-2)}
.pfwk-row.is-sel{background:color-mix(in srgb,var(--accent) 16%,var(--bg-1));font-weight:700}
.pfwk-foot{margin-top:8px;font-size:12px;text-align:right}
.pfwk-foot a{color:var(--accent);font-weight:700;text-decoration:none}
.pfwk-foot a:hover{text-decoration:underline}
/* — Richieste · separatori per mese — */
.pres-msep td{padding:16px 10px 6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);border-bottom:1px solid var(--line);background:transparent}
.pres-requests-table tr.pres-msep>td:last-child{text-align:left}
/* — Tastino "Oggi" nella nav settimana — */
.mwnav-b.mwnav-today{width:auto;padding:0 12px;font-size:12px;font-weight:700}
.mwnav-b.mwnav-today.is-dis{opacity:.45;pointer-events:none}
/* — 6 action card La mia pagina — */
.pres-acts .act.extra .aico{background:var(--info)}
.pres-acts .act.remoto .aico{background:#5a8fd6}
.pres-acts .act.rimborsi .aico{background:#7f8c5a}
.pres-shift-current{padding:12px 14px;border:1px solid color-mix(in srgb,#5f72e6 35%,var(--line));border-radius:12px;background:color-mix(in srgb,#5f72e6 7%,var(--bg-1))}
.pres-shift-current>.frow{margin-top:8px}
.pres-shift-current>.frow>.fld{margin-bottom:0}
.pres-shift-person{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:var(--bg-2);font-size:12.5px;color:var(--ink-soft)}
.pres-shift-person b{color:var(--ink)}
.pres-shift-current-value{margin-top:7px;font-size:15px;font-weight:800;line-height:1.45;color:#5f72e6}
.pres-shift-current-value.is-missing{font-size:12px;font-weight:650;color:var(--err)}
.pres-shift-new{margin-bottom:14px}
.pres-shift-new>label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.pres-shift-new>label>small{font-size:10px;font-weight:650;line-height:1.35;color:var(--ink-mute);text-align:right}
.pres-shift-slots{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:8px}
.pres-shift-slot{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}
.pres-shift-slot>small{display:block;margin:0 0 8px;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-mute)}
.pres-shift-slot .fld{margin-bottom:0}
.pres-shift-slot .pftf{width:100%;justify-content:center}
.pres-shift-note{margin:-2px 0 14px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,#5f72e6 8%,var(--bg-1));border:1px solid color-mix(in srgb,#5f72e6 25%,var(--line));font-size:11.5px;line-height:1.5;color:var(--ink-soft)}
.pres-inline-error{margin:-4px 0 14px;padding:9px 11px;border-radius:9px;background:color-mix(in srgb,var(--err) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--err) 30%,var(--line));font-size:11.5px;line-height:1.45;color:var(--err)}
/* — Switcher anni — */
.pres-years{display:inline-flex;gap:6px;margin:0 0 14px;padding:4px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill)}
.pres-years .pres-year{padding:5px 14px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:700;color:var(--ink-soft);text-decoration:none;transition:all var(--t-fast)}
.pres-years .pres-year:hover{color:var(--ink)}
.pres-years .pres-year.is-on{background:var(--accent);color:#fff}
/* — Intestazioni tabella ordinabili — */
.pres-tbl th.pf-sortable{cursor:pointer;user-select:none;white-space:nowrap}
.pres-tbl th.pf-sortable:hover{color:var(--ink)}
.pres-tbl th.pf-sortable::after{content:"↕";margin-left:5px;font-size:10px;opacity:.35}
.pres-tbl th.pf-sort-asc::after{content:"↑";opacity:.9}
.pres-tbl th.pf-sort-desc::after{content:"↓";opacity:.9}

/* =========================================================================
   ===== NETWORK ===== (area candidature/CV, sessione C)
   Il colore area (coral) arriva dai token dinamici (--accent); qui solo i
   componenti propri. Riusa .pres-*, .pfcal/.pfld, .pres-pick, .btn, .mg-notice.
   ========================================================================= */

/* statistiche in cima alla lista */
.net-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:22px}
.net-stat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:14px 16px}
.net-stat .lab{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute)}
.net-stat .num{font-size:26px;font-weight:900;letter-spacing:-.02em;color:var(--ink);line-height:1.1;margin-top:4px}
.net-stat .foot{font-size:12px;color:var(--ink-soft);margin-top:2px}
.net-stat.is-accent .num{color:var(--accent)}
.net-stat-button{font:inherit;text-align:left;color:inherit;cursor:pointer;appearance:none;transition:border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast)}
.net-stat-button:hover{border-color:color-mix(in srgb,var(--accent) 46%,var(--line));transform:translateY(-1px);box-shadow:var(--shadow-2)}
.net-stat-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.net-stat-button .foot{color:var(--accent);font-weight:700}

/* contatore costi lettura AI (Batch 3) */
.net-cost{display:flex;align-items:center;gap:14px;background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:var(--radius-lg);padding:12px 16px;margin-bottom:22px}
.net-cost-ico{flex:0 0 38px;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,var(--bg-0));color:var(--accent)}
.net-cost-ico svg{width:20px;height:20px}
.net-cost-main{flex:1;min-width:0}
.net-cost-main b{font-size:13.5px;color:var(--ink)}
.net-cost-main span{display:block;font-size:12px;color:var(--ink-soft)}
.net-cost-val{text-align:right}
.net-cost-val .big{font-size:20px;font-weight:900;color:var(--ink);letter-spacing:-.01em}
.net-cost-val small{display:block;font-size:11px;color:var(--ink-mute)}
.net-settings-page{max-width:900px}
.net-cost-settings{margin:0;padding:20px 22px}
.net-piva-modal{max-width:520px}
.net-piva-list{display:grid;gap:8px}
.net-piva-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);text-decoration:none;background:var(--bg-0);transition:border-color var(--t-fast),background var(--t-fast)}
.net-piva-list a:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--bg-0))}
.net-piva-list b,.net-piva-list small{display:block}
.net-piva-list b{font-size:13.5px}
.net-piva-list small{margin-top:2px;font-size:11.5px;color:var(--ink-soft)}
.net-piva-list a>span:last-child{font-size:18px;color:var(--accent)}
.net-piva-empty{margin:0;color:var(--ink-soft);font-size:13.5px}

/* filtri sopra la lista */
.net-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.net-search{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-pill);padding:8px 14px}
.net-search svg{width:16px;height:16px;color:var(--ink-mute);flex:0 0 auto}
.net-search input{border:none;background:none;outline:none;font:inherit;font-size:13px;color:var(--ink);width:100%}
.pf-main.net-list-page{width:100%;max-width:none;padding-inline:clamp(18px,3vw,56px)}
.net-table-card{padding:10px 22px 16px}
.net-table-wrap{overflow:visible}
.net-tbl{width:100%;table-layout:fixed}
.net-tbl .net-col-person{width:19%}
.net-tbl .net-col-role{width:19%}
.net-tbl .net-col-exp{width:7%}
.net-tbl .net-col-vat{width:6%}
.net-tbl .net-col-contacts{width:21%}
.net-tbl .net-col-portfolio{width:8%}
.net-tbl .net-col-status{width:10%}
.net-tbl .net-col-actions{width:10%}
.net-tbl th,.net-tbl td{padding-left:12px;padding-right:12px;vertical-align:middle}
.net-tbl th:first-child,.net-tbl td:first-child{padding-left:4px}
.net-tbl th:last-child,.net-tbl td:last-child{padding-right:4px}
.net-tbl .net-row-link{cursor:pointer}
.net-tbl .net-row-link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.net-tbl .pcell>span:last-child{min-width:0}
.net-contact-cell{min-width:0;overflow:hidden}
.net-contact-cell .net-wa{max-width:100%}
.net-contact-email{white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}
.net-role-form{margin:0}
.net-role-dd .pf-dd-btn{min-height:38px;padding:8px 10px;background:color-mix(in srgb,var(--bg-2) 60%,var(--bg-0));font-size:13px;font-weight:650}
.net-role-dd .pf-dd-menu{min-width:220px}
.net-role-cell{overflow:visible}
.net-tbl tbody tr:last-child .net-role-dd .pf-dd-menu{top:auto;bottom:calc(100% + 6px)}
@media(max-width:1180px){
  .pf-main.net-list-page{padding-inline:18px}
  .net-table-wrap{overflow-x:auto;overflow-y:visible}
  .net-tbl{min-width:1180px}
}

/* pillole pipeline (stato candidato) */
.net-pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:3px 10px 3px 8px;border-radius:var(--radius-pill);border:1px solid transparent;white-space:nowrap}
.net-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.9}
.net-pill.is-nuovo{color:#5b6472;background:var(--bg-2);border-color:var(--line)}
.net-pill.is-valutare{color:#9a6a12;background:#fdf3e0;border-color:#f2dcb0}
.net-pill.is-colloquio{color:#245ea8;background:#e6f0fb;border-color:#c3ddf5}
.net-pill.is-scartato{color:#9a3b34;background:#f9e9e7;border-color:#efc9c4}
.net-pill.is-attivato{color:#1f7a4d;background:#e6f6ec;border-color:#bfe6cd}
:root[data-pim-theme="dark"] .net-pill.is-valutare{background:#3a2e14;border-color:#5a4620}
:root[data-pim-theme="dark"] .net-pill.is-colloquio{background:#122b45;border-color:#22436a}
:root[data-pim-theme="dark"] .net-pill.is-scartato{background:#3a201d;border-color:#5c322d}
:root[data-pim-theme="dark"] .net-pill.is-attivato{background:#12321f;border-color:#22503a}

/* cella persona con anello coral + sottoriga */
.net-tbl .pava{background:color-mix(in srgb,var(--accent) 14%,var(--bg-2));color:var(--accent);border-color:color-mix(in srgb,var(--accent) 26%,var(--line-soft))}
.net-tbl td .sub{display:block;font-size:11.5px;color:var(--ink-mute);font-weight:400}

/* bottone WhatsApp */
.net-wa{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#1f8a4c;background:none;border:none;cursor:pointer;text-decoration:none;white-space:nowrap}
.net-wa svg{width:15px;height:15px}
.net-wa:hover{text-decoration:underline}
.net-portfolio-link{font-size:12px;font-weight:700;color:var(--accent);text-decoration:none;white-space:nowrap}
.net-portfolio-link:hover{text-decoration:underline}

/* azioni di riga */
.net-rowacts{display:inline-flex;gap:6px;justify-content:flex-end}
.net-ico{width:30px;height:30px;border-radius:9px;border:1px solid var(--line);background:var(--bg-0);color:var(--ink-soft);display:grid;place-items:center;cursor:pointer;transition:all var(--t-fast)}
.net-ico svg{width:15px;height:15px}
.net-ico:hover{border-color:var(--accent);color:var(--accent)}
.net-ico.is-danger:hover{border-color:var(--err);color:var(--err)}

/* valutazione a stelle */
.net-stars{display:inline-flex;gap:2px}
.net-stars button{background:none;border:none;padding:0;cursor:pointer;color:var(--line);line-height:1}
.net-stars svg{width:18px;height:18px}
.net-stars .on{color:#e8a90c}
.net-rating-trigger{display:inline-flex;align-items:center;gap:6px;padding:3px 5px;border:0;border-radius:7px;background:transparent;color:var(--ink);cursor:pointer;font:inherit}
.net-rating-trigger .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.net-rating-trigger:hover,.net-rating-trigger:focus-visible,.net-list-rating.is-open .net-rating-trigger{background:color-mix(in srgb,#e8a90c 10%,var(--bg-0));outline:none}
.net-rating-trigger:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent)}
.net-average-stars{display:inline-flex;gap:1px;white-space:nowrap}
.net-average-star{position:relative;display:inline-block;width:17px;height:17px;color:var(--line)}
.net-average-star>span{position:absolute;inset:0;display:block;width:17px;height:17px}
.net-average-star svg{display:block;width:17px;height:17px}
.net-average-star .fill{width:var(--fill,0%);overflow:hidden;color:#e8a90c}
.net-average-star .fill svg{width:17px;max-width:none}
.net-rating-average{min-width:22px;font-size:11px;font-weight:850;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.net-rating-popover{position:fixed;z-index:900;display:grid;gap:10px;padding:14px;border:1px solid color-mix(in srgb,#e8a90c 28%,var(--line));border-radius:14px;background:var(--bg-0);box-shadow:0 16px 42px rgba(34,29,22,.2);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-3px);transition:opacity var(--t-fast),transform var(--t-fast),visibility var(--t-fast)}
.net-list-rating.is-open .net-rating-popover{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.net-rating-popover-head,.net-rating-popover-foot{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.net-rating-popover-head b{font-size:13.5px}.net-rating-popover-head small{font-size:10.5px;color:var(--ink-mute)}
.net-rating-criterion{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:9px;border-top:1px solid var(--line-soft)}
.net-rating-criterion>span{font-size:12px;font-weight:750;color:var(--ink-soft)}
.net-criterion-stars{display:inline-flex;gap:2px}
.net-criterion-stars button{display:grid;place-items:center;width:22px;height:22px;padding:1px;border:0;border-radius:5px;background:transparent;color:var(--line);cursor:pointer}
.net-criterion-stars button svg{width:18px;height:18px}.net-criterion-stars button.on{color:#e8a90c}
.net-criterion-stars button:hover,.net-criterion-stars button:focus-visible{background:color-mix(in srgb,#e8a90c 12%,var(--bg-1));color:#e8a90c;outline:none}.net-criterion-stars button:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent)}
.net-list-rating.is-saving .net-rating-popover{opacity:.7}.net-criterion-stars button:disabled{cursor:wait}
.net-rating-popover-foot{padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-mute)}.net-rating-popover-foot b{font-size:13px;color:var(--ink)}
.net-profile-rating{display:flex;align-items:center;gap:9px;margin-top:6px}.net-profile-rating b{font-size:12px;color:var(--ink-soft);font-variant-numeric:tabular-nums}

/* scheda candidato */
.net-sheet{display:grid;grid-template-columns:1fr 340px;gap:22px;align-items:start}
.net-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.net-form .full{grid-column:1/-1}
.net-side{display:flex;flex-direction:column;gap:16px}
.net-cvcard{display:flex;align-items:center;gap:12px;background:var(--bg-0);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px 14px}
.net-cvcard .thumb{flex:0 0 40px;width:40px;height:48px;border-radius:6px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-2));color:var(--accent);display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:.04em}
.net-cvcard .meta{flex:1;min-width:0}
.net-cvcard .meta b{font-size:13px;color:var(--ink);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.net-cvcard .meta span{font-size:11.5px;color:var(--ink-mute)}
.net-documents-card{padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.net-documents-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.net-documents-head b{font-size:13.5px;color:var(--ink)}
.net-documents-head span,.net-documents-empty{font-size:11.5px;color:var(--ink-mute);margin:0}
.net-documents-list{display:flex;flex-direction:column;gap:7px}
.net-document-row{display:flex;align-items:center;gap:9px;border:1px solid var(--line-soft);border-radius:10px;padding:8px;background:var(--bg-0)}
.net-document-row .thumb{flex:0 0 32px;width:32px;height:38px;border-radius:6px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-2));color:var(--accent);display:grid;place-items:center;font-size:9px;font-weight:850}
.net-document-row .meta{flex:1;min-width:0}
.net-document-row .meta b,.net-document-row .meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.net-document-row .meta b{font-size:12px;color:var(--ink)}
.net-document-row .meta small{font-size:10.5px;color:var(--ink-mute)}
.net-reread-btn{width:100%;justify-content:center}

/* riquadro Fase 2 (predisposto) */
.net-phase2{border:1.5px dashed var(--line);border-radius:var(--radius-lg);padding:16px;background:var(--bg-0)}
.net-phase2 .tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 9px;margin-bottom:8px}
.net-phase2 h4{margin:0 0 4px;font-size:14px;color:var(--ink)}
.net-phase2 p{margin:0 0 12px;font-size:12.5px;color:var(--ink-soft)}

/* elimina in scheda (link discreto) */
.net-del-link{display:inline-flex;align-items:center;gap:7px;justify-content:center;background:none;border:none;cursor:pointer;font:inherit;font-size:12.5px;font-weight:600;color:var(--err);padding:6px;opacity:.85}
.net-del-link svg{width:15px;height:15px}
.net-del-link:hover{opacity:1;text-decoration:underline}

/* banner "letto dall'AI" + campi precompilati (Batch 3) */
.net-aibanner{display:flex;align-items:flex-start;gap:12px;background:color-mix(in srgb,var(--accent) 8%,var(--bg-1));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-left:3px solid var(--accent);border-radius:var(--radius-lg);padding:13px 16px;margin-bottom:22px}
.net-aibanner .ico{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}
.net-aibanner .ico svg{width:15px;height:15px}
.net-aibanner b{font-size:13.5px;color:var(--ink)}
.net-aibanner p{margin:2px 0 0;font-size:12.5px;color:var(--ink-soft)}
.net-aibanner .cost{margin-left:auto;text-align:right;white-space:nowrap;font-size:12px;color:var(--ink-mute)}
.net-aibanner .cost b{display:block;font-size:15px;color:var(--accent)}
.net-ai-suggestions{padding:16px 18px;margin-bottom:18px}
.net-ai-suggestions-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line-soft)}
.net-ai-suggestions-head b{font-size:13.5px;color:var(--ink)}
.net-ai-suggestions-head span{font-size:11.5px;color:var(--ink-mute)}
.net-ai-suggestion{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
.net-ai-suggestion:last-child{border-bottom:none;padding-bottom:0}
.net-ai-suggestion small,.net-ai-suggestion b{display:block}
.net-ai-suggestion small{font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.04em}
.net-ai-suggestion b{font-size:13px;color:var(--ink);overflow-wrap:anywhere}
.net-reading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:44px 24px;text-align:center}
.net-spin{width:46px;height:46px;border-radius:50%;border:4px solid color-mix(in srgb,var(--accent) 22%,var(--bg-2));border-top-color:var(--accent);animation:netspin .8s linear infinite}
@keyframes netspin{to{transform:rotate(360deg)}}
.net-reading b{font-size:15px;color:var(--ink)}
.net-reading p{font-size:13px;color:var(--ink-soft);margin:0;max-width:340px}
.net-drop .pres-drop-ico{color:var(--accent)}

/* responsive */
@media(max-width:900px){
  .net-stats{grid-template-columns:repeat(2,1fr)}
  .net-sheet{grid-template-columns:1fr}
  .net-form{grid-template-columns:1fr}
}
@media(min-width:901px) and (max-width:1180px){
  .net-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:560px){
  .net-cost-settings{align-items:flex-start;flex-direction:column}
  .net-cost-settings .net-cost-val{text-align:left}
}

/* ===================================================================
   ===== MEETING ===== (prenotazione appuntamenti, sessione B)
   Colore area: :root[data-pf-area="meeting"] è generato dai default
   (functions.php pim_hub_area_color_defaults, #1f9e6b). Qui solo le classi
   lato admin e pagina pubblica di prenotazione/gestione. Meeting v1.
   =================================================================== */
.mt-eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}
.mt-h1{margin:0 0 6px;font-size:24px;font-weight:700;letter-spacing:-.01em}
.mt-sub{margin:0 0 26px;font-size:14px;color:var(--ink-soft);max-width:640px}
.mt-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-1)}
.mt-card .cdesc{margin:0 0 14px;font-size:12.5px;color:var(--ink-soft);line-height:1.5}
/* interruttore custom (niente checkbox nativa a vista) */
.mt-sw{position:relative;display:inline-flex;flex:0 0 auto;width:40px;height:23px;cursor:pointer}
.mt-sw input{position:absolute;opacity:0;width:0;height:0}
.mt-sw i{position:absolute;inset:0;border-radius:999px;background:var(--bg-3);border:1px solid var(--line);transition:background var(--t-fast)}
.mt-sw i::after{content:"";position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s ease}
.mt-sw input:checked + i{background:var(--accent);border-color:var(--accent)}
.mt-sw input:checked + i::after{transform:translateX(17px)}
.mt-sw input:focus-visible + i{outline:2px solid var(--accent);outline-offset:2px}
.mt-meta{display:flex;flex-wrap:wrap;gap:8px}
.mt-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:4px 11px;white-space:nowrap}
.mt-pill svg{width:13px;height:13px;color:var(--accent);flex:0 0 auto}
/* stat card (agenda) */
.mt-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:30px}
.mt-stat{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-1)}
.mt-stat .lab{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.mt-stat .num{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:6px 0 2px}
.mt-stat .foot{font-size:12px;color:var(--ink-soft)}
/* agenda list */
.mt-daysep{margin:26px 0 10px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);display:flex;align-items:center;gap:10px}
.mt-daysep::after{content:"";flex:1;height:1px;background:var(--line)}
.mt-appt{position:relative;display:flex;align-items:center;gap:16px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow-1);margin-bottom:10px;transition:transform var(--t-fast),box-shadow var(--t-fast)}
.mt-appt:hover{transform:translateY(-1px);box-shadow:var(--shadow-2);z-index:2}
.mt-appt .when{flex:0 0 76px;text-align:center;border-right:1px solid var(--line);padding-right:14px}
.mt-appt .when b{display:block;font-size:17px;letter-spacing:-.01em}
.mt-appt .when span{font-size:11.5px;color:var(--ink-mute)}
.mt-appt .who{flex:1;min-width:0}
.mt-appt .who b{display:block;font-size:14.5px}
.mt-appt .who .mail{font-size:12.5px;color:var(--ink-soft);overflow-wrap:anywhere}
.mt-appt .tipo{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--ink-soft);white-space:nowrap}
.mt-appt .tipo .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:0 0 auto}
.mt-appt .place{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-soft);white-space:nowrap}
.mt-appt .place svg{width:14px;height:14px;color:var(--accent)}
.mt-empty{text-align:center;padding:40px 20px;color:var(--ink-mute);font-size:14px}
.mt-empty svg{width:38px;height:38px;color:var(--accent);opacity:.5;margin-bottom:10px}
.mt-empty a{color:var(--accent)}
/* tipi card */
.mt-tipi{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.mt-tipo{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--t-fast),box-shadow var(--t-fast)}
.mt-tipo:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.mt-tipo .bar{height:5px;background:var(--accent)}
.mt-tipo.is-off{opacity:.72}
.mt-tipo.is-off .bar{background:var(--bg-3)}
.mt-tipo .in{padding:16px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.mt-tipo .hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.mt-tipo h3{margin:0;font-size:15.5px;font-weight:700;letter-spacing:-.01em}
.mt-tipo .desc{margin:0;font-size:12.5px;color:var(--ink-soft);line-height:1.5}
.mt-link{display:flex;align-items:center;gap:8px;background:var(--bg-2);border:1px dashed var(--line);border-radius:10px;padding:8px 10px;margin-top:auto}
.mt-link code{flex:1;font-size:11.5px;color:var(--ink-soft);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.mt-link .btn{flex:0 0 auto}
.mt-tipo .ft{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line-soft);padding-top:12px}
.mt-tipo .ft .st{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--ink-soft)}
.mt-new{border:1.5px dashed var(--line);border-radius:var(--radius-lg);display:grid;place-items:center;min-height:220px;color:var(--ink-mute);cursor:pointer;background:transparent;font:inherit;transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}
.mt-new:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent)}
.mt-new .plus{font-size:30px;line-height:1;display:block;margin-bottom:6px;text-align:center}
/* disponibilità */
.mt-2col{display:grid;grid-template-columns:1.2fr .9fr;gap:20px;align-items:start}
@media(max-width:860px){.mt-2col{grid-template-columns:1fr}}
.mt-availability-schedules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;margin-bottom:20px}
.mt-availability-card{min-width:0}
.mt-availability-card.is-employees{border-color:color-mix(in srgb,var(--accent) 32%,var(--line))}
.mt-availability-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}
.mt-availability-card-head>div{min-width:0}
.mt-availability-card-head h3{margin:0 0 4px;font-size:14.5px}
.mt-availability-card-head .cdesc{margin:0;font-size:12.5px;color:var(--ink-soft)}
.mt-availability-owner{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:28px;padding:5px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg-2);color:var(--ink-soft);font-size:10.5px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.mt-availability-card.is-employees .mt-availability-owner{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--bg-2));color:color-mix(in srgb,var(--accent) 72%,var(--ink))}
.mt-availability-options{grid-template-columns:1fr 1fr}
@media(max-width:1100px){.mt-availability-schedules{grid-template-columns:1fr}}
@media(max-width:860px){.mt-availability-options{grid-template-columns:1fr}}
@media(max-width:560px){
  .mt-availability-card-head{display:block}
  .mt-availability-owner{margin-top:10px}
  .mt-availability-card .mt-day{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px}
  .mt-availability-card .mt-day .dname{flex:none}
  .mt-availability-card .mt-day .ranges{grid-column:1/-1;width:100%;padding-top:2px}
  .mt-availability-card .mt-day .riposo{grid-column:2}
  .mt-availability-card .mt-range{flex:0 0 auto}
  .mt-availability-card .mt-time{width:76px;min-width:76px;flex:0 0 76px}
}
.mt-day{display:flex;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--line-soft);flex-wrap:wrap}
.mt-day:last-child{border-bottom:none}
.mt-day .dname{flex:0 0 92px;font-size:13.5px;font-weight:700}
.mt-day.is-off .dname{color:var(--ink-mute);font-weight:500}
.mt-day .ranges{display:flex;flex-wrap:wrap;gap:7px;flex:1;align-items:center}
.mt-day.is-off .ranges{display:none}
.mt-day:not(.is-off) .riposo{display:none}
.mt-day .riposo{font-size:12.5px;color:var(--ink-mute)}
.mt-range{display:inline-flex;align-items:center;gap:6px;background:var(--bg-2);border:1px solid var(--line);border-radius:9px;padding:5px 8px;font-size:12.5px;font-weight:600}
.mt-time{width:58px;text-align:center;font:inherit;font-size:16px;font-weight:600;border:1px solid var(--line);border-radius:7px;padding:5px 4px;background:var(--bg-1);color:var(--ink)}
.mt-time:focus{outline:none;border-color:var(--accent)}
.mt-range .x{border:none;background:none;cursor:pointer;color:var(--ink-mute);font-size:13px;line-height:1;padding:0 2px}
.mt-range .x:hover{color:var(--err)}
.mt-addr{border:none;background:none;color:var(--accent);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;padding:6px 4px}
.mt-addr:hover{text-decoration:underline}
.mt-hint{font-size:12px;color:var(--ink-mute);line-height:1.55;margin:10px 0 0}
.mt-hint b{color:var(--ink-soft)}
.mt-frow-seg .seg{margin-top:2px}
/* impostazioni: barra stabile e un solo pannello sotto */
.mt-set{display:grid;gap:12px}
.mt-settings-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mt-settings-tab{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:60px;padding:14px 15px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-1);color:var(--ink);box-shadow:var(--shadow-1);font:inherit;text-align:left;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform var(--t-fast)}
.mt-settings-tab:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--bg-1));color:var(--accent)}
.mt-settings-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mt-settings-tab.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-1));color:var(--accent)}
.mt-settings-title{display:flex;align-items:center;gap:9px;min-width:0;font-size:14px;font-weight:750;line-height:1.25}
.mt-settings-title>svg{width:17px;height:17px;flex:0 0 auto;color:var(--accent)}
.mt-settings-chevron{width:17px;height:17px;flex:0 0 auto;color:var(--ink-mute);transition:transform var(--t-fast),color var(--t-fast)}
.mt-settings-tab.is-active .mt-settings-chevron{transform:rotate(180deg);color:var(--accent)}
.mt-settings-deck{min-width:0}
.mt-settings-panel{margin:0;padding:20px;min-width:0}
.mt-settings-panel[hidden]{display:none}
.mt-settings-panel>.cdesc:first-child{margin-top:0}
.mt-frow{display:flex;flex-direction:column;gap:6px;margin-bottom:13px}
.mt-frow:last-child{margin-bottom:0}
.mt-frow>label{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-mute)}
.mt-frow .seg{align-self:flex-start}
.mt-in{width:100%;padding:11px 12px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;font:inherit;font-size:16px;color:var(--ink)}
.mt-in:focus{outline:none;border-color:var(--accent);background:var(--bg-1)}
textarea.mt-in{resize:vertical;min-height:74px;font-size:14px}
.mt-swrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
.mt-swrow:last-child{border-bottom:none}
.mt-swrow .tx{flex:1;min-width:0}
.mt-swrow .tx b{display:block;font-size:13.5px}
.mt-swrow .tx span{font-size:12px;color:var(--ink-soft)}
.mt-slugbox{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg-2)}
.mt-slugbox .pre{display:flex;align-items:center;padding:0 10px;font-size:12.5px;color:var(--ink-mute);background:var(--bg-3);white-space:nowrap}
.mt-slugbox input{flex:1;border:none;background:transparent;padding:11px 10px;font:inherit;font-size:16px;color:var(--ink);min-width:0}
.mt-slugbox input:focus{outline:none}
.mt-team-settings{margin-top:38px}.mt-team-settings h2{margin:0 0 5px;font-size:22px}.mt-team-settings p{margin:0;color:var(--ink-soft)}.mt-team-current{display:inline-flex;align-items:center;min-height:32px;color:var(--ink-soft);font-size:12px;font-weight:700}.mt-google-user-state{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:5px 10px;border:1px solid var(--line);border-radius:var(--radius-pill);font-size:11px;font-weight:750;white-space:nowrap}.mt-google-user-state i{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 13%,transparent)}.mt-google-user-state.is-connected{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 38%,var(--line));background:color-mix(in srgb,var(--ok) 9%,var(--bg-1))}.mt-google-user-state.is-disconnected{color:var(--err);border-color:color-mix(in srgb,var(--err) 38%,var(--line));background:color-mix(in srgb,var(--err) 8%,var(--bg-1))}
@media(max-width:900px){.mt-settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.mt-settings-tabs{gap:8px}.mt-settings-tab{min-height:54px;padding:12px}.mt-settings-title{font-size:12.5px}.mt-settings-panel{padding:16px}}

/* Meeting operativo: Google Calendar + dettaglio Agenda */
.mt-cal-list{display:flex;flex-direction:column;margin:0 0 14px;border-top:1px solid var(--line-soft)}
.mt-cal-row{display:grid;grid-template-columns:auto minmax(120px,1fr) auto 58px auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line-soft)}
.mt-cal-row .tx{min-width:0}.mt-cal-row .tx b,.mt-cal-row .tx small{display:block;overflow:hidden;text-overflow:ellipsis}.mt-cal-row .tx small{font-size:10.5px;color:var(--ink-mute)}
.mt-cal-mode,.mt-dest{font-size:11.5px;color:var(--ink-soft);white-space:nowrap}.mt-cal-mode input,.mt-dest input{accent-color:var(--accent)}
.mt-sigla{width:58px;padding:7px;text-align:center;text-transform:uppercase;font:inherit;font-weight:800;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);border-radius:8px}
.mt-company-cal{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:0 0 12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));color:var(--ink)}
.mt-company-cal>span:last-child{display:grid;gap:2px}.mt-company-cal small{color:var(--ink-soft);font-size:12px}.mt-company-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 13%,transparent)}
.mt-calendar-list{display:grid;gap:7px;margin:0 0 12px}.mt-calendar-choice{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2);cursor:pointer}.mt-calendar-choice input{width:17px;height:17px;accent-color:var(--accent)}.mt-calendar-choice>span{display:grid;gap:2px}.mt-calendar-choice b{font-size:13px;color:var(--ink)}.mt-calendar-choice small{font-size:11.5px;color:var(--ink-soft)}
.mt-person-id{display:grid;grid-template-columns:82px minmax(190px,1fr) auto;gap:7px;align-items:end;min-width:390px}.mt-person-id label{display:grid;gap:4px;color:var(--ink-mute);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.mt-person-id .mt-in{min-width:0;padding:7px 9px;font-size:12.5px}.mt-events td:first-child{white-space:nowrap}.mt-events form{margin:0}
.mt-monthbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px;padding:12px 14px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}
.mt-monthnav{display:flex;align-items:center;gap:12px}.mt-month-title{min-width:180px;margin:0;text-align:center;font-size:17px;font-weight:750;letter-spacing:-.01em;text-transform:capitalize}.mt-month-arrow{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);border-radius:10px;background:var(--bg-2);color:var(--ink);transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}.mt-month-arrow:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-1))}.mt-month-arrow svg{width:18px;height:18px}.mt-month-arrow.is-prev svg{transform:rotate(180deg)}.mt-today.is-current{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 38%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--bg-1))}
.pf-main.mt-events-page{width:100%;max-width:none;padding-inline:clamp(16px,2.4vw,46px)}
.mt-view-switch{display:inline-flex;gap:3px;margin:0 0 12px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}.mt-view-switch a{padding:7px 13px;border-radius:8px;color:var(--ink-soft);font-size:12px;font-weight:700;transition:background var(--t-fast),color var(--t-fast),box-shadow var(--t-fast)}.mt-view-switch a:hover{color:var(--ink);background:var(--bg-2)}.mt-view-switch a.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-1));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent)}
.mt-calendar-scroll{max-width:100%;overflow-x:auto;padding:1px 1px 10px;scrollbar-color:color-mix(in srgb,var(--accent) 32%,var(--line)) transparent}.mt-month-grid{display:grid;grid-template-columns:repeat(7,minmax(132px,1fr));min-width:940px;border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--line);gap:1px}.mt-cal-weekday{padding:8px 9px;text-align:center;background:var(--bg-2);color:var(--ink-mute);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.mt-cal-day{min-height:154px;padding:7px;background:var(--bg-1)}.mt-cal-day.is-outside{background:color-mix(in srgb,var(--bg-2) 74%,transparent);opacity:.68}.mt-cal-day.is-today{box-shadow:inset 0 0 0 2px var(--accent)}.mt-cal-daynum{width:24px;height:24px;display:grid;place-items:center;margin:0 0 5px;border-radius:8px;color:var(--ink-soft);font-size:11px;font-weight:800}.mt-cal-day.is-today .mt-cal-daynum{background:var(--accent);color:#fff}.mt-cal-items{display:grid;gap:2px;max-height:122px;overflow-y:auto}.mt-calendar-event{width:100%;padding:0;border:1px solid color-mix(in srgb,var(--mt-event-color,var(--accent)) 34%,var(--line));border-left:3px solid var(--mt-event-color,var(--accent));border-radius:6px;background:color-mix(in srgb,var(--mt-event-color,var(--accent)) 12%,var(--bg-1));color:var(--ink-soft);font:inherit;text-align:left;line-height:1.2;transition:border-color var(--t-fast),background var(--t-fast),opacity var(--t-fast)}.mt-calendar-event>summary{list-style:none;cursor:pointer}.mt-calendar-event>summary::-webkit-details-marker{display:none}.mt-calendar-event>summary:hover,.mt-cal-event:hover{background:color-mix(in srgb,var(--mt-event-color,var(--accent)) 20%,var(--bg-1))}.mt-calendar-event>summary:focus-visible,.mt-cal-event:focus-visible{outline:2px solid var(--mt-event-color,var(--accent));outline-offset:1px}.mt-calendar-event time{color:var(--ink-mute);font-weight:750;font-variant-numeric:tabular-nums}.mt-calendar-event b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-calendar-event.is-blocking{color:var(--ink)}.mt-calendar-event.is-free:not([open]){opacity:.66}.mt-calendar-event.is-excluded:not([open]){opacity:.7}.mt-calendar-event.is-excluded b{text-decoration:line-through}.mt-cal-event{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px;align-items:center;padding:3px 5px;cursor:pointer}.mt-cal-event time{font-size:8.5px}.mt-cal-event b{font-size:9.5px}.mt-event-detail{display:grid;gap:3px;padding:6px;border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:var(--bg-1)}.mt-event-detail strong{font-size:10.5px;line-height:1.3;overflow-wrap:anywhere}.mt-event-detail small,.mt-event-detail>span{font-size:9px;color:var(--ink-mute);overflow-wrap:anywhere}.mt-event-detail>span{color:var(--ink-soft);font-weight:700}.mt-event-detail form{margin:3px 0 0}.mt-event-detail .btn{min-height:0;padding:5px 8px;font-size:9.5px}
.mt-calendar-label,.mt-event-modal-calendar{display:inline-flex;align-items:center;gap:7px}.mt-calendar-label i,.mt-event-modal-calendar i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--mt-event-color,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--mt-event-color,var(--accent)) 14%,transparent)}.mt-event-modal-bk{z-index:700}.mt-event-modal{max-width:430px;border-top:4px solid var(--mt-event-color,var(--accent))}.mt-event-modal .modal-hd{align-items:flex-start}.mt-event-modal .modal-hd>div{display:grid;gap:7px;min-width:0}.mt-event-modal .modal-hd h3{font-size:18px;line-height:1.3;overflow-wrap:anywhere}.mt-event-modal-calendar{color:var(--ink-soft);font-size:11px;font-weight:750}.mt-event-modal-body{display:grid;gap:7px}.mt-event-modal-body strong{font-size:14px}.mt-event-modal-body small{color:var(--ink-mute);font-size:12px}.mt-event-modal-body span{color:var(--ink-soft);font-size:12px;font-weight:750}.mt-modal-open{overflow:hidden}
.mt-week-grid{display:grid;grid-template-columns:repeat(7,minmax(138px,1fr));min-width:990px;gap:6px}.mt-week-day{min-height:360px;border:1px solid var(--line);border-radius:11px;background:var(--bg-1);overflow:hidden}.mt-week-day>header{display:flex;align-items:center;justify-content:space-between;padding:8px 9px;border-bottom:1px solid var(--line);background:var(--bg-2)}.mt-week-day>header span{color:var(--ink-mute);font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.mt-week-day>header b{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;font-size:11px}.mt-week-day.is-today{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.mt-week-day.is-today>header b{background:var(--accent);color:#fff}.mt-week-items{display:grid;gap:3px;padding:5px}.mt-week-items>p{margin:6px 3px;color:var(--ink-mute);font-size:10px}.mt-week-event>summary{display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px;align-items:center;padding:4px 5px;min-height:28px}.mt-week-event>summary time{font-size:8.5px}.mt-week-event>summary b{font-size:9.5px;line-height:1.2}.mt-week-event[open]{box-shadow:0 5px 16px color-mix(in srgb,var(--ink) 8%,transparent)}
.mt-rule-strip{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}.mt-rule-strip span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg-1);color:var(--ink-soft);font-size:11.5px}
.mt-agenda-detail{display:flex;flex-direction:column;gap:5px;padding:14px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;margin-bottom:16px}.mt-agenda-detail span,.mt-agenda-detail a,.mt-agenda-detail p{font-size:13px;color:var(--ink-soft);margin:0;overflow-wrap:anywhere}.mt-agenda-detail a{color:var(--accent)}

@media(max-width:760px){.mt-cal-row{grid-template-columns:auto 1fr}.mt-cal-row .mt-cal-mode,.mt-cal-row .mt-sigla,.mt-cal-row .mt-dest{grid-column:2}.mt-appt{flex-wrap:wrap}.mt-appt .who{flex-basis:calc(100% - 110px)}.mt-monthbar{align-items:stretch}.mt-monthnav{flex:1;justify-content:space-between}.mt-month-title{min-width:0;font-size:16px}.mt-today{align-self:center}}
@media(max-width:480px){.mt-view-switch{display:flex;width:100%}.mt-view-switch a{flex:1;text-align:center}.mt-monthbar{flex-wrap:wrap}.mt-monthnav{width:100%}.mt-today{width:100%;justify-content:center}.mt-month-grid{min-width:735px;grid-template-columns:repeat(7,104px)}.mt-week-grid{min-width:910px;grid-template-columns:repeat(7,124px)}}

/* Pagina pubblica Meeting — usa esclusivamente i token globali Blog PIM. */
/* Il fondale vive sul root: così colora anche il gutter riservato alla scrollbar
   e non lascia una striscia nera sul bordo destro delle pagine Meeting. */
html[data-pf-area="meeting"]{background:radial-gradient(70% 80% at 100% 0%,var(--glow-tr),transparent 60%),radial-gradient(64% 74% at 0% 100%,var(--glow-bl),transparent 62%),var(--pim-page-grad);background-attachment:fixed}
:root[data-pim-theme="dark"][data-pf-area="meeting"]{background:radial-gradient(65% 75% at 100% 0%,var(--glow-tr),transparent 62%),radial-gradient(60% 70% at 0% 100%,var(--glow-bl),transparent 64%),var(--pim-page-grad);background-attachment:fixed}
:root[data-pf-area="meeting"] body{background:transparent}
.mtp-shell{--accent:var(--pim-accent);--ic:var(--pim-accent);--mtp-confirm:#00ffe3;--mtp-confirm-hover:#00d9c2;--mtp-confirm-ink:#06110f;min-height:100vh;padding:28px 18px 42px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink)}
.mtp-head{width:min(980px,100%);display:flex;align-items:center;justify-content:space-between;margin:0 0 22px}.mtp-head img{height:34px;width:auto;filter:brightness(0)}[data-pim-theme="dark"] .mtp-head img{filter:brightness(0) invert(1)}
.mtp-theme{position:fixed;z-index:80;top:18px;right:18px;width:34px;height:34px;border-radius:var(--radius);background:color-mix(in srgb,var(--bg-1) 90%,transparent);border:1px solid var(--line);color:var(--ink-soft);box-shadow:var(--shadow-1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.mtp-theme:hover{color:var(--ink);background:var(--bg-2);border-color:var(--line)}.mtp-theme svg{width:16px;height:16px}
.mtp-card{width:min(980px,100%);display:grid;grid-template-columns:310px 1fr;overflow:hidden;min-height:500px;background:var(--bg-1);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-2)}
.mtp-side{padding:30px 26px;border-right:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;gap:12px}.mtp-avatar{width:64px;height:64px;object-fit:cover;border-radius:50%;border:2px solid color-mix(in srgb,var(--pim-accent) 50%,transparent)}
.mtp-kicker{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.mtp-side h1{font-size:22px;line-height:1.25;margin:0}.mtp-host-line{display:block}.mtp-side p{font-size:13px;line-height:1.6;color:var(--ink-soft);margin:0}.mtp-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}.mtp-meta span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;font-size:11.5px;color:var(--ink-soft)}
.mtp-main{padding:30px;min-width:0}.mtp-step{display:flex;align-items:center;gap:9px;margin:0 0 15px;font-size:13px;font-weight:800}.mtp-step>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--pim-accent);color:var(--pim-accent-ink);font-size:11px}
.mtp-hd{display:flex;align-items:center;min-height:32px;margin:0 0 18px}.mtp-hd h2{margin:0;font-size:19px;line-height:1.25;letter-spacing:-.02em}
.mtp-grid4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mtp-t4{position:relative;display:grid;grid-template-rows:auto auto auto 1fr;gap:5px;min-width:0;padding:16px 16px 15px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--bg-1);color:var(--ink);font:inherit;text-align:left;text-decoration:none;transition:border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast)}
.mtp-t4::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--ic);opacity:0;transition:opacity var(--t-fast)}
.mtp-t4:hover,.mtp-t4:focus-visible{border-color:color-mix(in srgb,var(--ic) 65%,var(--line));transform:translateY(-2px);box-shadow:0 10px 26px -14px color-mix(in srgb,var(--ic) 60%,transparent)}.mtp-t4:focus-visible{outline:2px solid var(--ic);outline-offset:2px}
.mtp-t4:hover::before,.mtp-t4:focus-visible::before{opacity:1}
.mtp-t4 .ic{width:46px;height:46px;display:grid;place-items:center;margin-bottom:5px;border-radius:13px;background:color-mix(in srgb,var(--ic) 15%,transparent);color:var(--ic);transition:background var(--t-fast)}
.mtp-t4:hover .ic,.mtp-t4:focus-visible .ic{background:color-mix(in srgb,var(--ic) 24%,transparent)}.mtp-t4 .ic svg{width:23px;height:23px}
.mtp-t4 .nm{padding-right:26px;font-size:15.5px;font-weight:700;letter-spacing:-.01em;line-height:1.2}.mtp-t4 .mt{color:var(--ic);font-size:12px;font-weight:700;letter-spacing:.01em}.mtp-t4 .dd{color:var(--ink-soft);font-size:12.5px;line-height:1.45}
.mtp-t4 .ar{position:absolute;top:16px;right:15px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--ic) 12%,transparent);color:var(--ic);opacity:0;transform:translateX(-4px);transition:opacity var(--t-fast),transform var(--t-fast)}.mtp-t4 .ar svg{width:14px;height:14px}.mtp-t4:hover .ar,.mtp-t4:focus-visible .ar{opacity:1;transform:none}
.mtp-booking-form{display:flex;flex-direction:column}.mtp-picker-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.mtp-picker-head .mtp-step{margin-bottom:15px}.mtp-tz{display:inline-flex;align-items:center;white-space:nowrap;color:var(--ink-mute);font-size:11.5px;font-weight:650}
.mtp-first{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;margin:0 0 18px;text-align:left;text-decoration:none;font:inherit;color:var(--ink);background:color-mix(in srgb,var(--pim-accent) 9%,var(--bg-1));border:1px solid color-mix(in srgb,var(--pim-accent) 35%,var(--line));border-radius:13px;cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t-fast),border-color var(--t-fast)}.mtp-first:hover{transform:translateY(-1px);box-shadow:var(--shadow-1);border-color:var(--pim-accent)}.mtp-first .zap{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:var(--pim-accent);color:var(--pim-accent-ink)}.mtp-first .tx{flex:1}.mtp-first small,.mtp-first b{display:block}.mtp-first small{font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.mtp-first b{font-size:13px}.mtp-first .go{margin-left:auto;white-space:nowrap;color:var(--pim-accent);font-size:12px}
.mtp-booking-panel[hidden]{display:none}.mtp-pick{display:grid;grid-template-columns:minmax(250px,310px) 1fr;gap:26px;align-items:start}.mtp-calendar{min-width:0}.mtp-cal-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mtp-cal-hd b{font-size:14px;text-transform:capitalize}.mtp-cal-actions{display:flex;gap:6px}.mtp-cal-nav{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--bg-1);color:var(--ink-soft);font-size:17px;text-decoration:none}.mtp-cal-nav:hover{background:var(--bg-2);color:var(--ink)}.mtp-cal-nav.is-disabled{opacity:.35;cursor:default}.mtp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.mtp-grid .wl{padding:5px 0;text-align:center;color:var(--ink-mute);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.mtp-d{position:relative;display:grid;place-items:center;aspect-ratio:1/1;border-radius:50%;color:var(--ink);font-size:13px;font-weight:600;text-decoration:none}.mtp-d.has:hover:not(.is-sel){background:var(--bg-2)}.mtp-d:not(.has){color:var(--ink-disabled);font-weight:400}.mtp-d.is-out{color:transparent}.mtp-d.has::after{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;transform:translateX(-50%);border-radius:50%;background:var(--pim-accent)}.mtp-d.is-today{box-shadow:inset 0 0 0 1.5px var(--line)}.mtp-d.is-sel{background:var(--pim-accent);color:var(--pim-accent-ink)}.mtp-d.is-sel::after{background:var(--pim-accent-ink)}
.mtp-slots2{min-width:0}.mtp-slots2 .sl-hd{font-size:14px;font-weight:700}.mtp-fascia{display:inline-flex;gap:3px;padding:3px;margin:10px 0 14px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2)}.mtp-fascia button{padding:7px 14px;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}.mtp-fascia button.is-on{background:var(--pim-accent);color:var(--pim-accent-ink)}.mtp-fascia button:disabled{opacity:.4;cursor:default}.mtp-fascia .cnt{margin-left:4px;font-size:10px;font-weight:500}.mtp-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mtp-chip-label{min-width:0;cursor:pointer}.mtp-chip-label[hidden]{display:none}.mtp-chip-label input{position:absolute;opacity:0}.mtp-chip{display:grid;place-items:center;width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--bg-1);color:var(--ink);font-size:13px;font-weight:700;text-align:center;box-sizing:border-box;transition:border-color var(--t-fast),background var(--t-fast),color var(--t-fast),transform var(--t-fast)}.mtp-chip-label:hover .mtp-chip{transform:translateY(-1px);border-color:var(--pim-accent);color:var(--pim-accent)}.mtp-chip-label input:checked+.mtp-chip{border-color:var(--pim-accent);background:var(--pim-accent);color:var(--pim-accent-ink)}.mtp-chip-label input:focus-visible+.mtp-chip{outline:2px solid var(--pim-accent);outline-offset:2px}.mtp-nosl{margin:0;padding:8px 0;color:var(--ink-mute);font-size:12.5px;line-height:1.5}
.mtp-details-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.mtp-details-head .mtp-step{margin:0;outline:0;box-shadow:none}.mtp-change-slot{padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink-soft);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.mtp-change-slot:hover{border-color:var(--pim-accent);color:var(--pim-accent)}.mtp-choice{display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center;margin-bottom:17px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--pim-accent) 34%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--pim-accent) 8%,var(--bg-1))}.mtp-choice>span{grid-column:1/-1;color:var(--ink-mute);font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mtp-choice strong{font-size:13.5px;text-transform:capitalize}.mtp-choice b{color:var(--pim-accent);font-size:14px}.mtp-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 13px;margin-bottom:17px}.mtp-fields label,.mtp-cancel label{display:flex;flex-direction:column;gap:6px;color:var(--ink-soft);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.055em}.mtp-fields input,.mtp-cancel textarea{width:100%;padding:10px 12px;border:1.5px solid color-mix(in srgb,var(--ink) 24%,var(--line));border-radius:10px;background:var(--bg-1);color:var(--ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 4%,transparent);font:inherit;font-size:15px}.mtp-fields input:hover{border-color:color-mix(in srgb,var(--ink) 38%,var(--line))}.mtp-fields input:focus{outline:3px solid color-mix(in srgb,var(--pim-accent) 22%,transparent);outline-offset:1px;border-color:var(--pim-accent)}[data-pim-theme="dark"] .mtp-fields input{border-color:color-mix(in srgb,#fff 30%,var(--line));background:color-mix(in srgb,var(--bg-1) 88%,#fff 12%);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 5%,transparent)}[data-pim-theme="dark"] .mtp-fields input:hover{border-color:color-mix(in srgb,#fff 46%,var(--line))}.mtp-cancel textarea{min-height:72px;resize:vertical}.mtp-submit{align-self:flex-end;background:var(--mtp-confirm);border-color:var(--mtp-confirm);color:var(--mtp-confirm-ink);box-shadow:0 8px 22px -12px color-mix(in srgb,var(--mtp-confirm) 80%,transparent)}.mtp-submit:hover{background:var(--mtp-confirm-hover);border-color:var(--mtp-confirm-hover);color:var(--mtp-confirm-ink);box-shadow:0 10px 26px -11px color-mix(in srgb,var(--mtp-confirm) 72%,transparent)}.mtp-submit:focus-visible{outline:3px solid color-mix(in srgb,var(--mtp-confirm) 42%,transparent);outline-offset:3px}.mtp-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}
.mtp-fields .mtp-field-wide{grid-column:1/-1}
.mtp-address{display:flex;flex-direction:column;gap:7px;min-width:0}.mtp-address-manual-toggle{align-self:flex-start;padding:0;border:0;background:transparent;color:var(--ink-mute);font:inherit;font-size:10.5px;line-height:1.4;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.mtp-address-manual-toggle:hover,.mtp-address-manual-toggle:focus-visible{color:var(--pim-accent)}.mtp-address-manual{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(70px,.55fr) minmax(90px,.65fr) minmax(130px,1fr);gap:10px;margin-top:4px}.mtp-address-manual[hidden]{display:none}.mtp-address-status{min-height:15px;margin:0;color:var(--ink-mute);font-size:10.5px;line-height:1.4}.mtp-address-status.is-ok{color:var(--ok)}.pac-container{z-index:2147483647;border:1px solid var(--line);border-radius:10px;background:var(--bg-1);box-shadow:var(--shadow-2);font-family:inherit;overflow:hidden}.pac-item{padding:9px 11px;border-top-color:var(--line);color:var(--ink-soft);font-size:12px;cursor:pointer}.pac-item:hover,.pac-item-selected{background:var(--bg-2)}.pac-item-query{color:var(--ink);font-size:12.5px}.pac-icon{display:none}
.mtp-booking-panel[data-mtp-panel="details"]:not([hidden]){display:flex;flex-direction:column}
[data-pim-theme="dark"] .mtp-cal-nav,[data-pim-theme="dark"] .mtp-fascia,[data-pim-theme="dark"] .mtp-chip{border-color:color-mix(in srgb,#fff 20%,var(--line))}[data-pim-theme="dark"] .mtp-d.is-today{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,#fff 20%,var(--line))}[data-pim-theme="dark"] .mtp-cal-nav:hover,[data-pim-theme="dark"] .mtp-chip-label:hover .mtp-chip{border-color:color-mix(in srgb,#fff 28%,var(--line))}
.mtp-error,.mtp-success{padding:12px 14px;border-radius:11px;margin-bottom:16px;font-size:13px}.mtp-error{background:color-mix(in srgb,var(--err) 12%,var(--bg-1));border:1px solid color-mix(in srgb,var(--err) 45%,var(--line));color:var(--err)}.mtp-success{display:flex;flex-direction:column;gap:7px;padding:18px 20px;margin-bottom:22px;background:color-mix(in srgb,var(--pim-accent) 10%,var(--bg-1));border:1px solid color-mix(in srgb,var(--pim-accent) 42%,var(--line))}.mtp-success .mtp-success-kicker{color:var(--pim-accent);font-size:9.5px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.mtp-success>b{font-size:17px;line-height:1.3}.mtp-success .mtp-success-copy{color:var(--ink-soft);font-size:13.5px;line-height:1.5}.mtp-success .mtp-success-copy strong{color:var(--ink);overflow-wrap:anywhere}.mtp-success small{margin-top:2px;color:var(--ink-mute);font-size:11.5px;line-height:1.45}
.mtp-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;min-height:300px;padding:32px}.mtp-state h1,.mtp-state h2,.mtp-state p{margin:0}.mtp-state p{color:var(--ink-soft);font-size:14px;line-height:1.6}.mtp-state-ico{font-size:42px;color:var(--accent)}
.mtp-summary{display:flex;flex-direction:column;gap:7px;padding:16px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px}.mtp-summary span{font-size:13px;color:var(--ink-soft)}.mtp-manage-help{max-width:620px;margin:17px 0 9px;color:var(--ink-soft);font-size:11.5px;line-height:1.5}.mtp-manage-actions{display:flex;align-items:flex-start;gap:7px;margin-top:0}.mtp-manage-btn{min-height:32px;padding:6px 11px;background:transparent;border:1px solid var(--mtp-confirm);color:var(--mtp-confirm);box-shadow:none;font-size:11.5px;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}.mtp-manage-btn:hover{background:color-mix(in srgb,var(--mtp-confirm) 10%,transparent);border-color:var(--mtp-confirm-hover);color:var(--mtp-confirm-hover);box-shadow:none;transform:none}.mtp-manage-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--mtp-confirm) 42%,transparent);outline-offset:3px}.mtp-cancel{display:none;margin-top:18px;padding:16px;border:1px solid color-mix(in srgb,var(--err) 45%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--err) 7%,var(--bg-1))}.mtp-cancel.is-open{display:block}.mtp-cancel h2{font-size:17px;margin:0 0 13px}.mtp-cancel form>div{display:flex;gap:9px;margin-top:13px}
@media(hover:none){.mtp-t4 .ar{opacity:1;transform:none}}
@media(max-width:820px){html[data-pf-area="meeting"]{overflow-y:auto;scrollbar-gutter:auto;scrollbar-width:none;background:radial-gradient(100% 22% at 100% 0%,var(--glow-tr),transparent 78%),radial-gradient(95% 22% at 0% 100%,var(--glow-bl),transparent 78%),var(--pim-page-grad);background-attachment:fixed}html[data-pf-area="meeting"]::-webkit-scrollbar{width:0;height:0}.mtp-shell{justify-content:flex-start;padding:18px 12px 30px}.mtp-card{grid-template-columns:1fr}.mtp-side{border-right:0;border-bottom:1px solid var(--line);padding:22px}.mtp-main{padding:22px}.mtp-pick{grid-template-columns:1fr}.mtp-slots2{scroll-margin-top:18px}.mtp-fields{grid-template-columns:1fr}.mtp-address-manual{grid-template-columns:minmax(0,2fr) minmax(70px,.6fr) minmax(90px,.7fr)}.mtp-address-manual label:last-child{grid-column:1/-1}}
@media(max-width:560px){.mtp-grid4{grid-template-columns:1fr}}
@media(max-width:480px){.mtp-main{padding:18px}.mtp-picker-head{align-items:flex-start;flex-direction:column;gap:0}.mtp-first .go{display:none}.mtp-fascia{display:flex}.mtp-fascia button{flex:1;padding-inline:10px}.mtp-address-manual{grid-template-columns:1fr 78px}.mtp-address-manual label:nth-child(3),.mtp-address-manual label:last-child{grid-column:auto}.mtp-address-manual label:last-child{grid-column:1/-1}.mtp-manage-actions,.mtp-cancel form>div{flex-direction:column}.mtp-submit{width:100%}}
/* ===== PERSONE TRASVERSALI / PRIVACY ===== */
.pgd-people-summary{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 26px}.pgd-people-summary span{display:flex;align-items:baseline;gap:6px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.pgd-people-summary b{font-size:20px}.pgd-people-summary .is-ok{color:var(--ok,#198754)}.pgd-people-summary .is-warn{color:var(--warn,#b56b00)}
.pgd-people-section{margin-top:24px}.pgd-people-table td{vertical-align:middle}.pgd-people-table td>small,.mg-table td>small{display:block;color:var(--ink-soft);margin-top:3px}.pgd-subject-form{display:flex;gap:7px;align-items:center;min-width:270px}.pgd-subject-form select,.ut-subject-input{min-width:170px;max-width:260px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);padding:8px 10px}.pgd-person-docs{display:flex;gap:7px;flex-wrap:wrap}.pgd-person-doc{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--ink);font-size:12px}.pgd-person-doc b{font-size:11px}.pgd-person-doc.is-ok{border-color:color-mix(in srgb,var(--ok,#198754) 35%,var(--line));background:color-mix(in srgb,var(--ok,#198754) 8%,var(--card))}.pgd-person-doc.is-warn{border-color:color-mix(in srgb,var(--warn,#b56b00) 35%,var(--line));background:color-mix(in srgb,var(--warn,#b56b00) 8%,var(--card))}.pgd-people-headacts,.pgd-people-rowacts{display:flex;align-items:center;justify-content:flex-end;gap:8px}.pgd-people-rowacts form{margin:0}.pgd-people-rowacts{min-width:220px;white-space:nowrap}
.pgd-person-row,.sic-person-row{scroll-margin-top:150px}.pgd-person-row:target>td,.sic-person-row:target>td{background:color-mix(in srgb,var(--cyan,#27d8cb) 10%,var(--card));box-shadow:inset 0 1px color-mix(in srgb,var(--cyan,#27d8cb) 45%,transparent),inset 0 -1px color-mix(in srgb,var(--cyan,#27d8cb) 45%,transparent)}
@media(max-width:760px){.pgd-subject-form{min-width:220px;flex-wrap:wrap}.pgd-people-table{min-width:930px}.pgd-people-summary span{flex:1 1 120px}.ut-subject-input{min-width:145px}.pgd-people-headacts{width:100%;align-items:stretch;flex-direction:column}.pgd-people-headacts .btn{width:100%;justify-content:center}}

/* ===== UTENTI · COMUNICAZIONI PRIVACY GLOBALI ===== */
.ut-privacy-bulk{margin-top:24px;border-color:color-mix(in srgb,var(--privacy,#a5408a) 26%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--privacy,#a5408a) 6%,var(--card)),var(--card) 68%)}
.ut-privacy-bulk-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ut-privacy-bulk-actions form{display:flex;align-items:center;gap:12px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--bg-1)}
.ut-privacy-bulk-actions form .btn{flex:none;justify-content:center}
.ut-privacy-bulk-actions small{min-width:0;color:var(--ink-soft);font-size:12px;line-height:1.45}
.ut-privacy-bulk-actions small b{color:var(--ink);font-size:15px}
.ut-privacy-bulk-actions .btn:disabled{cursor:not-allowed;opacity:.48}
@media(max-width:860px){.ut-privacy-bulk-actions{grid-template-columns:1fr}}
@media(max-width:560px){.ut-privacy-bulk-actions form{align-items:stretch;flex-direction:column}.ut-privacy-bulk-actions form .btn{width:100%}}

/* ===== ACCESSI GLOBALI ALLE AREE ===== */
.pim-global-access{margin-top:24px}.pim-global-access-groups{display:grid;gap:24px}.pim-global-access-group{min-width:0}.pim-global-access-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 10px}.pim-global-access-group-head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:17px}.pim-global-access-group-head h3 span{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 7px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);color:var(--ink-soft);font-size:11px}.pim-global-access-group-head p{margin:3px 0 0;color:var(--ink-mute);font-size:12px}.pim-global-access-group-collaboratori{padding-top:22px;border-top:1px solid var(--line)}.pim-global-access-group-amministratori{padding-top:22px;border-top:1px solid var(--line);opacity:.78}.pim-global-access-wrap{overflow:auto}.pim-global-access-table{min-width:940px}.pim-global-access-table th:not(:first-child),.pim-global-access-table td:not(:first-child){text-align:center;white-space:nowrap}.pim-global-access-table th:first-child,.pim-global-access-table td:first-child{min-width:220px}.pim-access-form{display:inline-flex;margin:0}.pim-area-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:58px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink-soft);font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.pim-area-toggle span{width:7px;height:7px;border-radius:50%;background:currentColor}.pim-area-toggle.is-on{border-color:color-mix(in srgb,var(--ok,#198754) 42%,var(--line));background:color-mix(in srgb,var(--ok,#198754) 10%,var(--card));color:var(--ok,#198754)}.pim-area-toggle.is-off:hover{border-color:var(--accent);color:var(--accent)}.pim-access-admin{display:inline-flex;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--ok,#198754) 10%,var(--card));color:var(--ok,#198754);font-size:11px;font-weight:700;white-space:nowrap}.pim-access-admin.is-compact{justify-content:center;min-width:58px}
.pim-area-toggle.is-forbidden,.pim-area-toggle.is-forbidden:hover{cursor:not-allowed;opacity:.42;border-color:var(--line);background:var(--bg-2);color:var(--ink-mute)}
@media(max-width:760px){.pim-global-access{margin-inline:-4px}.pim-global-access-wrap{border-radius:12px}.pim-global-access-table{min-width:880px}.pim-global-access-table th:first-child,.pim-global-access-table td:first-child{min-width:190px}}

/* ════════════════ Scrivania mobile amministratore ════════════════ */
.pf-svc-azioni{display:none}
.pf-mobile-actions-page{max-width:720px;padding-top:26px}
.pma-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 11%,var(--bg-1)),var(--bg-1) 64%);box-shadow:var(--shadow-1)}
.pma-eyebrow{display:block;margin-bottom:5px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.pma-hero h1{margin:0 0 4px;font-size:30px;line-height:1.05;letter-spacing:-.035em}
.pma-hero p{margin:0;color:var(--ink-soft);font-size:13.5px}
.pma-total{display:grid;place-items:center;min-width:48px;height:48px;padding:0 12px;border-radius:16px;background:var(--accent);color:#fff;font-size:21px;font-weight:750;box-shadow:0 9px 22px color-mix(in srgb,var(--accent) 30%,transparent)}
.pma-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:-12px 0 30px}
.pma-overview a{min-width:0;padding:14px 12px;border:1px solid var(--line);border-radius:16px;display:flex;align-items:center;gap:10px;background:var(--bg-1);color:inherit;text-decoration:none;box-shadow:0 7px 22px -20px rgba(31,30,29,.8)}
.pma-overview a:hover{border-color:color-mix(in srgb,var(--accent) 38%,var(--line))}
.pma-overview span{flex:none;color:var(--accent);font-size:23px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.pma-overview small{min-width:0;color:var(--ink-soft);font-size:10px;font-weight:700;line-height:1.25}
.pma-section{margin-bottom:30px}
.pma-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.pma-section-title{display:flex;align-items:center;gap:11px;min-width:0}
.pma-section-title h2{margin:0 0 2px;font-size:16px;line-height:1.2}
.pma-section-title p{margin:0;color:var(--ink-mute);font-size:12px}
.pma-section-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:12px;background:color-mix(in srgb,var(--accent) 11%,var(--bg-1));color:var(--accent)}
.pma-section-icon.pma-expense{color:#8b5f17;background:color-mix(in srgb,#d89b3c 13%,var(--bg-1))}
.pma-section-icon.pma-meeting{color:#6c55b5;background:color-mix(in srgb,#7a65c4 12%,var(--bg-1))}
.pma-section-icon.pma-payslip{color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,var(--bg-1))}
.pma-section-icon svg,.pma-empty svg,.pma-button svg,.pma-all-link svg,.pma-meeting-card>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pma-count{display:grid;place-items:center;min-width:28px;height:28px;padding:0 9px;border-radius:999px;background:color-mix(in srgb,var(--warn) 14%,var(--bg-1));color:var(--warn);font-size:12px;font-weight:750}
.pma-card{display:block;margin-bottom:10px;padding:16px;border:1px solid var(--line);border-radius:17px;background:var(--bg-1);box-shadow:0 7px 22px -20px rgba(31,30,29,.8)}
.pma-card-top{display:flex;align-items:center;gap:11px;min-width:0}
.pma-card-top>div{min-width:0;flex:1}
.pma-card h3{margin:0 0 3px;color:var(--ink);font-size:14.5px;line-height:1.25}
.pma-card p{margin:0;color:var(--ink-soft);font-size:12.5px;line-height:1.45}
.pma-avatar{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-soft);font-size:11px;font-weight:750}
.pma-note{margin-top:12px!important;padding:10px 11px;border-radius:10px;background:var(--bg-2);color:var(--ink-soft)!important}
.pma-note a{color:var(--accent);font-weight:650;text-decoration:none}
.pma-amount{flex:none;color:var(--ink);font-size:14px;font-variant-numeric:tabular-nums}
.pma-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}
.pma-actions form{margin:0}
.pma-button{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2);color:var(--ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:transform var(--t-fast),border-color var(--t-fast),background var(--t-fast)}
.pma-button:hover{transform:translateY(-1px)}
.pma-button-ok{border-color:color-mix(in srgb,var(--ok) 34%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--bg-1));color:var(--ok)}
.pma-button-no{border-color:color-mix(in srgb,var(--err) 26%,var(--line));background:color-mix(in srgb,var(--err) 6%,var(--bg-1));color:var(--err)}
.pma-empty{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding:15px 16px;border:1px dashed var(--line);border-radius:14px;color:var(--ok);background:color-mix(in srgb,var(--ok) 4%,var(--bg-1));font-size:13px;font-weight:650}
.pma-meeting-card{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:13px;color:inherit;text-decoration:none;transition:transform var(--t-fast),border-color var(--t-fast)}
.pma-meeting-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.pma-meeting-card time{display:flex;flex-direction:column;align-items:center;padding-right:12px;border-right:1px solid var(--line)}
.pma-meeting-card time b{color:var(--ink);font-size:16px;font-variant-numeric:tabular-nums}
.pma-meeting-card time span{color:var(--ink-mute);font-size:10px;text-transform:uppercase}
.pma-meeting-card .pma-arrow{width:17px;height:17px;color:var(--ink-mute)}
.pma-payslip-card{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;color:inherit;text-decoration:none;transition:transform var(--t-fast),border-color var(--t-fast)}
.pma-payslip-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.pma-payslip-card>span:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:3px}
.pma-payslip-card b{overflow:hidden;color:var(--ink);font-size:13.5px;text-overflow:ellipsis;white-space:nowrap}
.pma-payslip-card small{overflow:hidden;color:var(--ink-soft);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.pma-payslip-side{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}
.pma-payslip-side .pma-amount{font-size:12.5px;white-space:nowrap}
.pma-payslip-side>small{color:var(--ink-mute);font-size:9px;white-space:nowrap}
.pma-payslip-card .pma-arrow{width:18px;height:18px;color:var(--accent);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pma-all-link{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;color:var(--accent);font-size:12.5px;font-weight:700;text-decoration:none}
.pma-all-link svg{width:15px;height:15px}

@media(max-width:760px){
  .pf-admin-mobile-nav .pf-svc-azioni{display:flex}
  .pf-admin-mobile-nav .pf-svc:not(.pf-svc-azioni){display:none}
  .pf-admin-mobile-nav .pf-svcnav{overflow:visible}
  .pf-admin-mobile-nav .pf-subbar{display:none}
  .pf-admin-mobile-nav .pf-viewsw,.pf-admin-mobile-nav [data-pf-blur-toggle]{display:none}
  .pf-admin-mobile-nav .pf-topbar-main .inner{gap:10px}
  .pf-admin-mobile-nav .pf-svc{width:54px}
  .pf-mobile-actions-page{padding:20px 14px 72px}
  .pma-hero{padding:20px;margin-bottom:25px;border-radius:19px}
  .pma-hero h1{font-size:27px}
  .pma-total{min-width:44px;height:44px;border-radius:14px;font-size:19px}
  .pma-overview{margin-top:-10px;gap:7px}
  .pma-overview a{padding:12px 9px;gap:7px}
  .pma-overview span{font-size:20px}
  .pma-overview small{font-size:8.5px}
  .pma-card{padding:15px}
}

@media(max-width:390px){
  .pf-admin-mobile-nav [data-pf-theme-toggle]{display:none}
  .pf-admin-mobile-nav .pf-brand .name{font-size:14px}
  .pf-admin-mobile-nav .pf-brand .mark{width:27px;height:27px;flex-basis:27px}
  .pma-actions{gap:7px}
  .pma-button{padding-inline:8px}
  .pma-payslip-card{grid-template-columns:34px minmax(0,1fr) auto;gap:9px}
  .pma-payslip-side{gap:6px}
  .pma-payslip-side .pma-amount{font-size:11.5px}
}

/* Meeting: tour contestuale con spotlight sull'area spiegata. */
.mt-tour{overflow:hidden;background:transparent;backdrop-filter:none}
.mt-tour-spotlight{position:fixed;z-index:0;border:2px solid var(--accent);border-radius:18px;box-shadow:0 0 0 9999px rgba(4,8,8,.78),0 0 0 5px color-mix(in srgb,var(--accent) 24%,transparent);pointer-events:none;transition:left .24s ease,top .24s ease,width .24s ease,height .24s ease}
.mt-tour-card{position:relative;z-index:1;max-height:calc(100dvh - 32px);overflow:auto}
.mt-tour section{min-height:280px}
.mt-tour-spotlight[hidden]{display:none}

/* Menu aree personale: il trascinamento non coinvolge Dashboard e utility. */
.pf-svc[data-pf-menu-item]{cursor:grab}
.pf-svc[data-pf-menu-item]:active{cursor:grabbing}
.pf-svc[data-pf-menu-item].is-dragging{opacity:.45;transform:scale(.96)}

/* Meeting: inviti personali e pipeline condivisa email/link breve. */
.mt-invites-page{max-width:1280px}.mt-invite-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:22px}.mt-invite-page-head>div{min-width:0}.mt-invite-page-head .mt-sub{margin-bottom:0;max-width:820px}.mt-invite-page-head>.btn{flex:0 0 auto}
.mt-invite-ready{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:center;gap:24px;margin:22px 0;padding:22px;border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--bg-1))}
.mt-invite-ready h2,.mt-invite-create h2,.mt-invite-pipeline h2,.mt-people-config h2{margin:0 0 5px;font-size:22px}.mt-invite-ready p,.mt-invite-create p,.mt-invite-pipeline p,.mt-people-config p{margin:0;color:var(--ink-soft)}
.mt-invite-link{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 10px 9px 14px;border:1px dashed color-mix(in srgb,var(--accent) 52%,var(--line));border-radius:14px;background:var(--bg-2)}
.mt-invite-link code{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-size:13px;white-space:nowrap}
.mt-invite-wizard{box-sizing:border-box}
.mt-invite-wizard[hidden]{display:none}.mt-invite-wizard{--mtw-accent:#00e7d2;--mtw-accent-hover:#00cdbb;--mtw-ink:#06110f;--accent:var(--mtw-accent);--accent-ink:var(--mtw-ink);--focus:0 0 0 2px var(--bg-1),0 0 0 4px var(--mtw-accent);position:fixed;z-index:10020;inset:0;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.76);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}body.mt-invite-wizard-open{overflow:hidden}.mt-invite-wizard-dialog{display:grid;grid-template-columns:250px minmax(0,1fr);width:min(900px,calc(100vw - 36px));max-height:calc(100dvh - 36px);overflow:hidden;border:1px solid color-mix(in srgb,var(--mtw-accent) 28%,var(--line));border-radius:22px;background:var(--bg-1);box-shadow:0 32px 100px rgba(0,0,0,.55)}.mt-invite-wizard-side{display:flex;flex-direction:column;gap:11px;padding:28px 24px;border-right:1px solid var(--line);background:var(--bg-2)}.mt-invite-wizard-side>img{width:62px;height:62px;object-fit:cover;border:2px solid color-mix(in srgb,var(--mtw-accent) 58%,transparent);border-radius:50%;margin-bottom:5px}.mt-invite-wizard-kicker{color:var(--mtw-accent);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.mt-invite-wizard-side h2{margin:0;font-size:23px;line-height:1.2;letter-spacing:-.025em}.mt-invite-wizard-side p{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.55}.mt-invite-wizard-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.mt-invite-wizard-pills span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:10.5px}.mt-invite-wizard-main{display:flex;min-width:0;flex-direction:column}.mt-invite-wizard-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px 11px}.mt-invite-wizard-head>div{display:grid;gap:2px}.mt-invite-wizard-head span{color:var(--mtw-accent);font-size:9.5px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.mt-invite-wizard-head strong{font-size:16px}.mt-invite-wizard-close{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink-soft);font:inherit;font-size:20px;line-height:1;cursor:pointer}.mt-invite-wizard-close:hover{border-color:var(--mtw-accent);color:var(--mtw-accent)}.mt-invite-progress{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 20px 13px;border-bottom:1px solid var(--line)}.mt-invite-progress>span{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;color:var(--ink-mute);font-size:11px}.mt-invite-progress i{display:grid;place-items:center;width:24px;height:24px;flex:0 0 auto;border-radius:50%;background:var(--bg-2);font-style:normal;font-size:10.5px}.mt-invite-progress b{font-weight:750}.mt-invite-progress .is-active{border-color:color-mix(in srgb,var(--mtw-accent) 48%,var(--line));background:color-mix(in srgb,var(--mtw-accent) 8%,var(--bg-1));color:var(--ink)}.mt-invite-progress .is-active i,.mt-invite-progress .is-done i{background:var(--mtw-accent);color:var(--mtw-ink)}
.mt-invite-form{display:flex;min-height:0}.mt-invite-step{display:flex;width:100%;min-height:0;flex-direction:column;gap:14px;padding:18px 20px 20px}.mt-invite-step[hidden]{display:none}.mt-invite-step-title span{color:var(--mtw-accent);font-size:9.5px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.mt-invite-step-title h3{margin:3px 0 0;font-size:19px;letter-spacing:-.02em}.mt-invite-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mt-invite-fields label{display:flex;min-width:0;flex-direction:column;gap:6px}.mt-invite-message{display:grid;gap:6px}.mt-invite-fields label,.mt-invite-message{color:var(--ink-soft);font-size:10px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.mt-invite-fields label>span,.mt-invite-message>span{font-weight:550;color:var(--ink-mute);letter-spacing:0;text-transform:none}.mt-invite-fields .mt-in{min-height:44px;flex:0 0 44px;margin-top:auto;border:1.5px solid color-mix(in srgb,var(--ink) 23%,var(--line));border-radius:11px;background:var(--bg-1);font-size:14px}.mt-invite-fields .mt-in:focus{outline:3px solid color-mix(in srgb,var(--mtw-accent) 20%,transparent);border-color:var(--mtw-accent)}[data-pim-theme="dark"] .mt-invite-fields .mt-in{border-color:color-mix(in srgb,#fff 26%,var(--line));background:color-mix(in srgb,var(--bg-1) 90%,#fff 10%)}.mt-invite-step-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:3px}.mt-invite-expiry{display:flex;align-items:center;gap:7px;color:var(--ink-mute);font-size:11px}.mt-invite-expiry select{padding:6px 24px 6px 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);color:var(--ink);font:inherit;font-size:11px}.mt-invite-wizard-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}.mt-invite-wizard-actions .btn{min-width:116px}.mt-invite-wizard-actions .btn-primary{background:var(--mtw-accent);border-color:var(--mtw-accent);color:var(--mtw-ink)}.mt-invite-wizard-actions .btn-primary:hover{background:var(--mtw-accent-hover);border-color:var(--mtw-accent-hover);color:var(--mtw-ink)}.mt-invite-step-bottom{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:12px}.mt-invite-message textarea{height:68px;min-height:68px;resize:none}.mt-invite-type-error{margin:-7px 0 0;color:var(--err);font-size:11px;font-weight:750}.mt-invite-location{display:grid;grid-template-columns:minmax(0,.72fr) minmax(250px,1.28fr);align-items:center;gap:3px 12px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1);color:var(--ink-soft);font-size:10px;font-weight:750}.mt-invite-location[hidden]{display:none}.mt-invite-location>span small,.mt-invite-location>small{color:var(--ink-mute);font-weight:500}.mt-invite-location>small{grid-column:2;font-size:9px;line-height:1.3}.mt-invite-location .mt-in{min-height:38px;border:1.5px solid color-mix(in srgb,var(--ink) 23%,var(--line));border-radius:10px;background:var(--bg-2);font-size:12px}.mt-invite-location .mt-in:focus{outline:3px solid color-mix(in srgb,var(--mtw-accent) 20%,transparent);border-color:var(--mtw-accent)}
.mt-invite-types,.mt-invite-channel{margin:0;padding:0;border:0}.mt-invite-types legend,.mt-invite-channel legend{margin-bottom:8px;color:var(--ink-soft);font-size:10px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.mt-invite-types>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mt-invite-types label,.mt-invite-channel label{min-width:0;cursor:pointer}.mt-invite-types input,.mt-invite-channel input{position:absolute;opacity:0;pointer-events:none}.mt-invite-type-card{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:2px 9px;min-height:70px;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:var(--bg-1);transition:border-color var(--t-fast),background var(--t-fast),transform var(--t-fast)}.mt-invite-type-card>i{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--mt-type-color) 14%,transparent);color:var(--mt-type-color);font-style:normal}.mt-invite-type-card>i svg{width:18px;height:18px}.mt-invite-type-card>b{overflow:hidden;text-overflow:ellipsis;font-size:12px;white-space:nowrap}.mt-invite-type-card>small{overflow:hidden;text-overflow:ellipsis;color:var(--ink-mute);font-size:9.5px;white-space:nowrap}.mt-invite-type-card>em{position:absolute;top:7px;right:7px;display:none;width:18px;height:18px;place-items:center;border-radius:50%;background:var(--mtw-accent);color:var(--mtw-ink);font-size:10px;font-style:normal}.mt-invite-types label:hover .mt-invite-type-card{border-color:color-mix(in srgb,var(--mt-type-color) 58%,var(--line));transform:translateY(-1px)}.mt-invite-types input:checked+.mt-invite-type-card{border-color:var(--mtw-accent);background:color-mix(in srgb,var(--mtw-accent) 8%,var(--bg-1));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mtw-accent) 55%,transparent)}.mt-invite-types input:checked+.mt-invite-type-card>em{display:grid}.mt-invite-types input:focus-visible+.mt-invite-type-card,.mt-invite-channel input:focus-visible+span{outline:2px solid var(--mtw-accent);outline-offset:2px}
.mt-invite-channel{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mt-invite-channel legend{grid-column:1/-1}.mt-invite-channel label>span{display:grid;gap:2px;min-height:64px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}.mt-invite-channel label>span b{font-size:11.5px}.mt-invite-channel label>span small{color:var(--ink-soft);font-size:9.5px}.mt-invite-channel input:checked+span{border-color:var(--mtw-accent);box-shadow:inset 0 0 0 1px var(--mtw-accent);background:color-mix(in srgb,var(--mtw-accent) 8%,var(--bg-1))}
.mt-invite-mailbox{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--mtw-accent) 34%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--mtw-accent) 6%,var(--bg-1));cursor:pointer}.mt-invite-mailbox>span{display:grid;gap:2px;min-width:0}.mt-invite-mailbox b{overflow:hidden;text-overflow:ellipsis;font-size:11.5px;white-space:nowrap}.mt-invite-mailbox small{color:var(--ink-soft);font-size:9.5px}.mt-invite-mailbox input{position:absolute;opacity:0;pointer-events:none}.mt-invite-mailbox>i{position:relative;width:38px;height:22px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--ink) 18%,var(--line));border-radius:999px;background:var(--bg-2);transition:background var(--t-fast),border-color var(--t-fast)}.mt-invite-mailbox>i:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--ink-mute);transition:transform var(--t-fast),background var(--t-fast)}.mt-invite-mailbox input:checked+i{border-color:var(--mtw-accent);background:var(--mtw-accent)}.mt-invite-mailbox input:checked+i:after{transform:translateX(16px);background:var(--mtw-ink)}.mt-invite-mailbox input:focus-visible+i{outline:2px solid var(--mtw-accent);outline-offset:2px}
.mt-invite-client-choice{--mt-client-accent:var(--mtw-accent,var(--mtg-accent,#00e7d2));display:grid;grid-template-columns:auto auto minmax(170px,1fr);align-items:center;gap:8px 12px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1)}.mt-invite-client-heading{display:grid;gap:1px;min-width:112px}.mt-invite-client-heading span{color:var(--ink);font-size:10px;font-weight:800}.mt-invite-client-heading small{color:var(--ink-mute);font-size:8.5px}.mt-invite-client-modes{display:flex;align-items:center;gap:5px}.mt-invite-client-modes label{cursor:pointer}.mt-invite-client-modes input{position:absolute;opacity:0;pointer-events:none}.mt-invite-client-modes label>span{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:9px;font-weight:750;white-space:nowrap;transition:border-color var(--t-fast),background var(--t-fast),color var(--t-fast)}.mt-invite-client-modes input:checked+span{border-color:var(--mt-client-accent);background:color-mix(in srgb,var(--mt-client-accent) 10%,var(--bg-1));color:var(--mt-client-accent)}.mt-invite-client-modes input:focus-visible+span{outline:2px solid var(--mt-client-accent);outline-offset:2px}.mt-invite-client-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;min-width:0;color:var(--ink-soft);font-size:9px;font-weight:750}.mt-invite-client-field[hidden]{display:none}.mt-invite-client-field select,.mt-invite-client-field .mt-in{box-sizing:border-box;width:100%;min-width:0;min-height:34px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--ink) 22%,var(--line));border-radius:9px;background:var(--bg-2);color:var(--ink);font:inherit;font-size:10.5px}.mt-invite-client-field select:focus,.mt-invite-client-field .mt-in:focus{outline:2px solid color-mix(in srgb,var(--mt-client-accent) 25%,transparent);border-color:var(--mt-client-accent)}
.mt-invite-pipeline{margin:0 0 38px}.mt-invite-list{display:grid;gap:9px}
.mt-invite-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) 130px 120px auto;align-items:center;gap:16px;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:var(--bg-1)}
.mt-invite-person{display:grid;gap:2px;min-width:0}.mt-invite-person b,.mt-invite-person a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-invite-person a{color:var(--ink-soft);font-size:12px;text-decoration:none}.mt-invite-person small,.mt-invite-channel-label small{color:var(--ink-mute);font-size:10.5px}
.mt-invite-kind{display:flex;flex-wrap:wrap;gap:5px}.mt-invite-kind span{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:10.5px}.mt-invite-channel-label{display:grid;gap:2px;color:var(--ink-soft);font-size:11.5px}
.mt-invite-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:10.5px;font-weight:750;white-space:nowrap}.mt-invite-status.is-prenotato{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 9%,var(--bg-1));color:var(--ok)}.mt-invite-status.is-aperto,.mt-invite-status.is-inviato{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--bg-1));color:var(--accent)}.mt-invite-status.is-errore,.mt-invite-status.is-annullato,.mt-invite-status.is-rifiutato{color:var(--err)}
.mt-invite-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.mt-invite-actions form{margin:0}.mt-people-config{padding-top:10px}
.mtp-invite-decline{margin-top:22px}.mtp-invite-decline button{padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;opacity:.72}.mtp-invite-decline button:hover{color:var(--pim-accent);opacity:1}
@media(max-width:980px){.mt-invite-row{grid-template-columns:1fr 1fr auto}.mt-invite-channel-label{display:none}.mt-invite-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:700px){.mt-invite-page-head{align-items:stretch;flex-direction:column;gap:15px}.mt-invite-ready{grid-template-columns:1fr}.mt-invite-wizard{place-items:start center;padding:8px;overflow-y:auto;overflow-x:hidden}.mt-invite-wizard-dialog{grid-template-columns:1fr;width:calc(100vw - 16px);max-height:none;border-radius:18px}.mt-invite-wizard-side{display:grid;grid-template-columns:44px 1fr;gap:3px 11px;padding:14px 16px;border-right:0;border-bottom:1px solid var(--line)}.mt-invite-wizard-side>img{grid-row:1/4;width:44px;height:44px;margin:0}.mt-invite-wizard-kicker{align-self:end;font-size:8.5px}.mt-invite-wizard-side h2{font-size:17px}.mt-invite-wizard-side p,.mt-invite-wizard-pills{display:none}.mt-invite-wizard-head{padding:12px 14px 8px}.mt-invite-wizard-head strong{font-size:14px}.mt-invite-progress{gap:6px;padding:0 14px 10px}.mt-invite-progress>span{padding:7px 8px;font-size:9.5px}.mt-invite-progress i{width:21px;height:21px}.mt-invite-step{gap:10px;padding:12px 14px 14px}.mt-invite-step-title h3{font-size:16px}.mt-invite-fields{gap:8px}.mt-invite-fields label{gap:4px}.mt-invite-fields .mt-in{min-height:39px;padding:8px 10px;font-size:13px}.mt-invite-client-choice{grid-template-columns:1fr;padding:8px}.mt-invite-client-heading{display:flex;align-items:baseline;gap:6px}.mt-invite-client-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mt-invite-client-modes label>span{width:100%;padding-inline:4px}.mt-invite-client-field{grid-template-columns:1fr}.mt-invite-step-footer{align-items:center;margin-top:0}.mt-invite-expiry{font-size:9.5px}.mt-invite-expiry select{font-size:9.5px}.mt-invite-types legend,.mt-invite-channel legend{margin-bottom:6px}.mt-invite-types>div{grid-template-columns:1fr 1fr;gap:6px}.mt-invite-type-card{grid-template-columns:28px minmax(0,1fr);min-height:58px;padding:7px 8px;column-gap:7px}.mt-invite-type-card>i{width:28px;height:28px}.mt-invite-type-card>i svg{width:15px;height:15px}.mt-invite-type-card>b{font-size:10.5px}.mt-invite-type-card>small{font-size:8.5px}.mt-invite-location{grid-template-columns:1fr;padding:7px 8px}.mt-invite-location>small{grid-column:1}.mt-invite-step-bottom{grid-template-columns:1.15fr .85fr;gap:7px}.mt-invite-message textarea{height:54px;min-height:54px;padding:8px;font-size:11px}.mt-invite-channel{gap:6px}.mt-invite-channel label>span{min-height:54px;padding:8px}.mt-invite-channel label>span b{font-size:10px}.mt-invite-channel label>span small{font-size:8.5px}.mt-invite-wizard-actions{gap:6px}.mt-invite-wizard-actions .btn{min-width:94px;padding:9px 12px}.mt-invite-row{grid-template-columns:1fr auto}.mt-invite-kind{grid-column:1/-1}.mt-invite-actions{grid-column:1/-1}.mt-invite-link{align-items:stretch;flex-direction:column}.mt-invite-link .btn{width:100%}}
@media(max-width:420px){.mt-invite-fields{grid-template-columns:1fr 1fr}.mt-invite-step-footer{align-items:stretch;flex-direction:column}.mt-invite-wizard-actions{width:100%}.mt-invite-wizard-actions .btn{flex:1}.mt-invite-step-bottom{grid-template-columns:1fr}.mt-invite-message{display:none}}
@media(max-height:650px) and (min-width:701px){.mt-invite-wizard-side{padding-top:20px;padding-bottom:20px}.mt-invite-wizard-head{padding-top:11px}.mt-invite-progress{padding-bottom:9px}.mt-invite-step{gap:9px;padding-top:11px;padding-bottom:12px}.mt-invite-type-card{min-height:60px}.mt-invite-message textarea{height:52px;min-height:52px}.mt-invite-channel label>span{min-height:54px}.mt-invite-step-title h3{font-size:16px}}

/* Meeting: incontri di gruppo, proposte personali e conferma manuale. */
.mt-agenda-create-actions{display:flex;flex-wrap:wrap;gap:9px}.mt-group-wizard[hidden]{display:none}.mt-group-wizard{--mtg-accent:#00e7d2;position:fixed;z-index:10025;inset:0;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.mt-group-dialog{display:flex;width:min(960px,calc(100vw - 36px));max-height:calc(100dvh - 36px);overflow:hidden;flex-direction:column;border:1px solid color-mix(in srgb,var(--mtg-accent) 28%,var(--line));border-radius:24px;background:var(--bg-1);box-shadow:0 34px 100px rgba(0,0,0,.58)}.mt-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 25px 15px}.mt-group-head span{color:var(--mtg-accent);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.mt-group-head h2{margin:5px 0 4px;font-size:25px}.mt-group-head p{margin:0;color:var(--ink-soft);font-size:13px}.mt-group-head button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink);font:inherit;font-size:21px;cursor:pointer}.mt-group-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:0 25px 14px;border-bottom:1px solid var(--line)}.mt-group-progress span{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:12px;color:var(--ink-mute);font-size:11px}.mt-group-progress i{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--bg-2);font-style:normal}.mt-group-progress .is-active{border-color:color-mix(in srgb,var(--mtg-accent) 48%,var(--line));color:var(--ink);background:color-mix(in srgb,var(--mtg-accent) 7%,var(--bg-1))}.mt-group-progress .is-active i,.mt-group-progress .is-done i{background:var(--mtg-accent);color:#04110f}.mt-group-form{min-height:0;overflow:auto}.mt-group-form>section{display:grid;gap:15px;padding:18px 25px 22px}.mt-group-form>section[hidden]{display:none}.mt-group-step-title{display:flex;align-items:center;gap:11px}.mt-group-step-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--mtg-accent);color:#04110f;font-size:12px;font-weight:850}.mt-group-step-title h3{margin:0;font-size:20px}.mt-group-step-title p{margin:2px 0 0;color:var(--ink-soft);font-size:12px}.mt-group-title-field{display:grid;gap:6px;color:var(--ink-soft);font-size:11px;font-weight:750}.mt-group-title-field .mt-in{min-height:44px;border-color:color-mix(in srgb,var(--ink) 22%,var(--line))}.mt-group-types,.mt-group-internals{margin:0;padding:0;border:0}.mt-group-types legend,.mt-group-internals legend{margin-bottom:8px;color:var(--ink-soft);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.mt-group-internals legend small{font-weight:550;text-transform:none;letter-spacing:0}.mt-group-types>div,.mt-group-member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mt-group-types label,.mt-group-member-grid label{cursor:pointer}.mt-group-types input,.mt-group-member-grid input,.mt-group-slots input,.mtp-group-proposals input{position:absolute;opacity:0;pointer-events:none}.mt-group-types label>span,.mt-group-member-grid label>span{position:relative;display:grid;grid-template-columns:8px 1fr;grid-template-rows:auto auto;gap:2px 10px;min-height:62px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2)}.mt-group-types span>i{grid-row:1/3;width:8px;border-radius:9px;background:var(--mt-type-color)}.mt-group-types span>b,.mt-group-member-grid span>b{font-size:12px}.mt-group-types span>small,.mt-group-member-grid span>small{color:var(--ink-mute);font-size:10px}.mt-group-types span>em,.mt-group-member-grid span>em{position:absolute;right:8px;top:8px;display:none;width:18px;height:18px;place-items:center;border-radius:50%;background:var(--mtg-accent);color:#04110f;font-style:normal;font-size:10px}.mt-group-types input:checked+span,.mt-group-member-grid input:checked+span{border-color:var(--mtg-accent);background:color-mix(in srgb,var(--mtg-accent) 7%,var(--bg-1))}.mt-group-types input:checked+span>em,.mt-group-member-grid input:checked+span>em{display:grid}.mt-group-creator{display:grid;gap:2px;margin-bottom:8px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--mtg-accent) 32%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--mtg-accent) 6%,var(--bg-1));font-size:12px}.mt-group-creator span{color:var(--ink-soft);font-size:10px}.mt-group-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:2px}.mt-group-actions>span{margin-right:auto;color:var(--ink-soft);font-size:11px;font-weight:700}.mt-group-actions .btn-primary,.mtp-group-vote .btn-primary{background:var(--mtg-accent,#00e7d2);border-color:var(--mtg-accent,#00e7d2);color:#04110f}.mt-group-actions .btn-primary:hover,.mtp-group-vote .btn-primary:hover{background:#00cdbb;border-color:#00cdbb;color:#04110f}.mt-group-actions .btn:disabled{opacity:.38;cursor:not-allowed}.mt-group-slots-status{padding:13px;border:1px dashed var(--line);border-radius:12px;color:var(--ink-soft);font-size:12px}.mt-group-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.mt-group-slots label{cursor:pointer}.mt-group-slots label>span{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:56px;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2)}.mt-group-slots b{font-size:11px}.mt-group-slots strong{color:var(--mtg-accent);font-size:14px}.mt-group-slots em{display:none;font-style:normal}.mt-group-slots input:checked+span{border-color:var(--mtg-accent);background:color-mix(in srgb,var(--mtg-accent) 8%,var(--bg-1))}.mt-group-slots input:checked+span em{display:block}.mt-group-external-list{display:grid;gap:8px}.mt-group-external{display:grid;grid-template-columns:1fr 1fr 32px;align-items:end;gap:9px}.mt-group-external label{display:grid;gap:5px;color:var(--ink-soft);font-size:10px;font-weight:750}.mt-group-external .mt-in{min-height:42px;border-color:color-mix(in srgb,var(--ink) 22%,var(--line))}.mt-group-external button{width:32px;height:32px;margin-bottom:5px;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink);font:inherit;cursor:pointer}.mt-group-final{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2)}.mt-group-final label{display:grid;gap:5px;color:var(--ink-soft);font-size:10px;font-weight:750}.mt-group-final select{padding:7px 30px 7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink)}.mt-group-final p{margin:0;color:var(--ink-soft);font-size:11px;line-height:1.45}.mt-group-pipeline{margin:4px 0 36px}.mt-group-list{display:grid;gap:11px}.mt-group-row{padding:17px;border:1px solid var(--line);border-radius:17px;background:var(--bg-1)}.mt-group-row.is-da_confermare{border-color:color-mix(in srgb,var(--accent) 48%,var(--line))}.mt-group-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mt-group-row-head h3{margin:0 0 3px;font-size:17px}.mt-group-row-head p{margin:0;color:var(--ink-soft);font-size:11px}.mt-group-row-head>span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:10px;font-weight:750}.mt-group-response-progress{display:flex;align-items:center;gap:10px;margin:13px 0 10px}.mt-group-response-progress i{position:relative;width:120px;height:6px;overflow:hidden;border-radius:999px;background:var(--bg-2)}.mt-group-response-progress i:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--mt-progress);background:var(--accent)}.mt-group-response-progress b{font-size:11px}.mt-group-proposal-list{display:flex;flex-wrap:wrap;gap:6px}.mt-group-proposal-list label{display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:10px}.mt-group-proposal-list label.is-common{border-color:var(--accent);color:var(--accent)}.mt-group-confirm{display:grid;gap:10px;margin-top:14px;padding:13px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-1))}.mt-group-confirm p{margin:0;color:var(--ink-soft);font-size:11px}.mt-group-confirm>div{display:flex;flex-wrap:wrap;gap:7px}.mt-group-confirm label{cursor:pointer}.mt-group-confirm input{margin-right:5px}.mt-group-cancel{margin-top:10px}.mtp-group-vote{--mtg-accent:#00e7d2}.mtp-group-vote .mtp-side h1{font-size:31px}.mtp-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.mtp-pills span{padding:7px 10px;border:1px solid var(--pim-line);border-radius:999px;color:var(--pim-muted);font-size:11px}.mtp-group-vote-form{display:grid;gap:18px}.mtp-group-proposals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mtp-group-proposals label{cursor:pointer}.mtp-group-proposals label>span{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 14px;min-height:72px;padding:13px 15px;border:1px solid var(--pim-line);border-radius:14px;background:var(--pim-panel-2)}.mtp-group-proposals b{font-size:13px}.mtp-group-proposals strong{color:var(--mtg-accent);font-size:18px}.mtp-group-proposals em{display:none;position:absolute;right:9px;bottom:7px;font-style:normal}.mtp-group-proposals input:checked+span{border-color:var(--mtg-accent);background:color-mix(in srgb,var(--mtg-accent) 9%,var(--pim-panel))}.mtp-group-proposals input:checked+span em{display:block}
@media(max-width:760px){.mt-agenda-create-actions{width:100%}.mt-agenda-create-actions .btn{flex:1}.mt-group-wizard{place-items:start center;padding:8px;overflow:auto}.mt-group-dialog{width:calc(100vw - 16px);max-height:none;border-radius:18px}.mt-group-head{padding:16px 16px 11px}.mt-group-head h2{font-size:21px}.mt-group-head p{font-size:11px}.mt-group-progress{gap:5px;padding:0 16px 11px}.mt-group-progress span{padding:7px;font-size:9px}.mt-group-progress i{width:21px;height:21px}.mt-group-form>section{padding:14px 16px 16px}.mt-group-types>div,.mt-group-member-grid{grid-template-columns:1fr 1fr}.mt-group-slots{grid-template-columns:1fr 1fr}.mt-group-external{grid-template-columns:1fr 32px}.mt-group-external label{grid-column:1}.mt-group-external button{grid-column:2;grid-row:1/3}.mt-group-final{grid-template-columns:1fr}.mtp-group-proposals{grid-template-columns:1fr}.mt-group-pipeline .sec-head{align-items:stretch;flex-direction:column}.mt-group-pipeline .sec-head .btn{width:100%}}

/* Le schede dei tipi usano l'icona del luogo, compresa la nuvoletta fuori sede. */
.mt-group-types label>span{grid-template-columns:34px minmax(0,1fr)}
.mt-group-types span>i{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;align-self:center;border-radius:10px;background:color-mix(in srgb,var(--mt-type-color) 14%,transparent);color:var(--mt-type-color);font-style:normal}
.mt-group-types span>i svg{width:18px;height:18px}

/* Incontro di gruppo: quattro tipologie in una griglia compatta e sede cliente
 * mostrata solo quando serve. La lista dei partecipanti resta a tre colonne. */
.mt-group-types>div{grid-template-columns:repeat(2,minmax(0,1fr))}
.mt-group-location{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(0,1fr);align-items:center;gap:5px 14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--mtg-accent) 28%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--mtg-accent) 5%,var(--bg-2))}
.mt-group-location[hidden]{display:none}
.mt-group-location>span{grid-column:1;grid-row:1;color:var(--ink);font-size:11px;font-weight:800}
.mt-group-location>.mt-in{grid-column:2;grid-row:1/3;min-height:44px;border-color:color-mix(in srgb,var(--ink) 22%,var(--line))}
.mt-group-location>small{grid-column:1;grid-row:2;color:var(--ink-mute);font-size:10px;line-height:1.35}

/* Meeting group UX v2: quattro step compatti, voto evidente e selezione finale unica. */
.mt-group-progress{grid-template-columns:repeat(4,minmax(0,1fr))}.mt-group-dialog{width:min(980px,calc(100vw - 36px))}.mt-group-form>section{min-height:410px;align-content:start}.mt-group-form>section .mt-group-actions{align-self:end;margin-top:auto}.mt-group-member-grid label>span{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;padding:12px 38px 11px 12px}.mt-group-member-grid span>b{overflow-wrap:anywhere;line-height:1.2}.mt-group-member-grid span>small{display:block;margin-top:5px;line-height:1.3}.mt-group-weeks{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px}.mt-group-weeks button{flex:none;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);color:var(--ink-soft);font:inherit;font-size:10px;font-weight:750;cursor:pointer}.mt-group-weeks button.is-active{border-color:var(--mtg-accent);background:color-mix(in srgb,var(--mtg-accent) 10%,var(--bg-1));color:var(--mtg-accent)}.mt-group-slots{display:block}.mt-group-week-panel{display:grid;gap:7px}.mt-group-week-panel[hidden]{display:none}.mt-group-day-row{display:grid;grid-template-columns:155px minmax(0,1fr);align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2)}.mt-group-day-row>b{font-size:11px}.mt-group-day-row>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.mt-group-day-row label>span{justify-content:center;min-height:38px;padding:7px 8px;border-radius:9px}.mt-group-day-row strong{font-size:12px}.mt-group-day-row em{position:absolute;right:5px;top:3px}.mt-group-choice{margin-top:12px}.mt-group-proposal-list.is-selectable label{position:relative;cursor:pointer;border-color:color-mix(in srgb,var(--warn) 58%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--bg-1));color:var(--ink)}.mt-group-proposal-list.is-selectable input{position:absolute;opacity:0;pointer-events:none}.mt-group-proposal-list.is-selectable label>i{display:none;width:17px;height:17px;place-items:center;border-radius:50%;background:var(--ok);color:var(--ok-ink,#04110f);font-size:10px;font-style:normal}.mt-group-proposal-list.is-selectable input:checked~i{display:grid}.mt-group-proposal-list.is-selectable label:has(input:checked){border-color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,var(--bg-1));color:var(--ok)}.mt-group-choice-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px}.mt-group-choice-actions>span{color:var(--ink-soft);font-size:11px}.mt-group-choice-actions .btn{margin-left:auto}.mt-group-choice-actions .btn:disabled{opacity:.38}.mt-group-cancel{margin-top:8px}.mtp-group-vote .mtp-main{align-content:start}.mtp-group-vote-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.mtp-group-vote-head>b{color:var(--mtg-accent);font-size:12px}.mtp-group-proposals{gap:12px}.mtp-group-proposals label>span{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;min-height:94px;padding:16px 54px 16px 17px;transition:border-color .16s,background .16s,transform .16s}.mtp-group-proposals label:hover>span{transform:translateY(-1px);border-color:color-mix(in srgb,var(--mtg-accent) 48%,var(--pim-line))}.mtp-group-proposals small{grid-column:1;color:var(--pim-muted);font-size:10px;font-weight:800;letter-spacing:.1em}.mtp-group-proposals b{grid-column:1;font-size:17px}.mtp-group-proposals strong{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}.mtp-group-proposals em{display:grid;right:13px;top:50%;bottom:auto;width:27px;height:27px;place-items:center;transform:translateY(-50%);border:1px solid var(--pim-line);border-radius:50%;color:transparent}.mtp-group-proposals input:checked+span{border-color:var(--mtg-accent);background:color-mix(in srgb,var(--mtg-accent) 13%,var(--pim-panel));box-shadow:inset 0 0 0 1px var(--mtg-accent)}.mtp-group-proposals input:checked+span em{border-color:var(--mtg-accent);background:var(--mtg-accent);color:#04110f}.mtp-group-vote-form .btn{justify-self:end;min-width:240px}.mtp-group-vote-form .btn:disabled{opacity:.38;cursor:not-allowed}.mtp-group-saved{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;padding:24px;border:1px solid var(--mtg-accent);border-radius:18px;background:color-mix(in srgb,var(--mtg-accent) 10%,var(--pim-panel))}.mtp-group-saved-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--mtg-accent);color:#04110f;font-size:25px;font-weight:900}.mtp-group-saved h2{margin:5px 0 8px;font-size:25px}.mtp-group-saved p{margin:0;color:var(--pim-muted);line-height:1.55}.mtp-group-saved>div>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.mtp-group-saved>div>div span{padding:7px 10px;border:1px solid color-mix(in srgb,var(--mtg-accent) 50%,var(--pim-line));border-radius:999px;font-size:11px}
@media(max-width:760px){.mt-group-progress span b{display:none}.mt-group-form>section{min-height:auto}.mt-group-day-row{grid-template-columns:1fr;gap:7px}.mt-group-day-row>div{grid-template-columns:repeat(4,minmax(0,1fr))}.mt-group-choice-actions{align-items:stretch;flex-direction:column}.mt-group-choice-actions .btn{width:100%;margin:0}.mtp-group-vote-head{align-items:flex-start;flex-direction:column}.mtp-group-vote-form .btn{width:100%;justify-self:stretch}.mtp-group-saved{grid-template-columns:1fr}.mtp-group-saved-icon{width:46px;height:46px}.mtp-group-saved h2{font-size:22px}}
@media(max-width:760px){.mt-group-location{grid-template-columns:1fr}.mt-group-location>span,.mt-group-location>.mt-in,.mt-group-location>small{grid-column:1;grid-row:auto}}

/* Meeting pubblico · proposte di gruppo.
 * Usa i token correnti dell'area Meeting: le vecchie variabili --pim-* non
 * sono definite nel tema pubblico e facevano sparire bordo e fondo dei box. */
.mtp-group-vote .mtp-pills span{
  border-color:var(--line);
  color:var(--ink-mute);
}
.mtp-group-vote .mtp-group-proposals{
  gap:14px;
}
.mtp-group-vote .mtp-group-proposals label>span{
  min-height:112px;
  padding:18px 62px 18px 19px;
  border:1px solid color-mix(in srgb,var(--ink) 18%,var(--line));
  border-radius:17px;
  background:var(--bg-2);
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.mtp-group-vote .mtp-group-proposals small{
  color:var(--ink-mute);
}
.mtp-group-vote .mtp-group-proposals label:hover>span{
  border-color:color-mix(in srgb,var(--mtg-accent) 58%,var(--line));
  background:color-mix(in srgb,var(--mtg-accent) 4%,var(--bg-2));
}
.mtp-group-vote .mtp-group-proposals em{
  border-color:color-mix(in srgb,var(--ink) 22%,var(--line));
  background:var(--bg-1);
  color:transparent;
  font-size:0;
  line-height:1;
}
.mtp-group-vote .mtp-group-proposals em::after{
  content:"";
  width:8px;
  height:14px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-1px) rotate(45deg);
}
.mtp-group-vote .mtp-group-proposals input:focus-visible+span{
  outline:3px solid color-mix(in srgb,var(--mtg-accent) 34%,transparent);
  outline-offset:3px;
}
.mtp-group-vote .mtp-group-proposals input:checked+span{
  border-color:var(--mtg-accent);
  background:color-mix(in srgb,var(--mtg-accent) 13%,var(--bg-1));
  box-shadow:inset 0 0 0 1px var(--mtg-accent),0 14px 34px rgba(0,0,0,.16);
}
.mtp-group-vote .mtp-group-proposals input:checked+span em{
  border-color:var(--mtg-accent);
  background:var(--mtg-accent);
  color:#04110f;
}
.mtp-group-vote .mtp-group-saved{
  background:color-mix(in srgb,var(--mtg-accent) 10%,var(--bg-1));
}
.mtp-group-vote .mtp-group-saved p{
  color:var(--ink-mute);
}
.mtp-group-vote .mtp-group-saved>div>div span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border-color:color-mix(in srgb,var(--mtg-accent) 50%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--mtg-accent) 12%,var(--bg-2));
  color:var(--ink);
  font-weight:750;
  line-height:1;
}
@media(max-width:760px){
  .mtp-group-vote .mtp-group-proposals label>span{
    min-height:94px;
    padding:15px 58px 15px 16px;
  }
}
/* Meeting · attivazione personale Google Meet */
body:has(.mt-meet-setup){overflow:hidden}
.mt-meet-setup{height:calc(100dvh - 116px);min-height:0;display:grid;place-items:center;padding:16px;overflow:hidden}
.mt-meet-setup-card{width:min(1040px,100%);height:min(540px,100%);min-height:0;display:grid;grid-template-columns:minmax(330px,.82fr) minmax(460px,1.18fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:26px;background:var(--bg-1);box-shadow:0 28px 80px rgba(0,0,0,.22)}
.mt-meet-setup-side{padding:34px 38px;display:flex;flex-direction:column;justify-content:center;background:color-mix(in srgb,var(--accent) 7%,var(--bg-1));border-right:1px solid var(--line)}
.mt-meet-setup-side h1{margin:12px 0 14px;font-size:clamp(34px,3.2vw,44px);line-height:1.02;letter-spacing:-.045em;max-width:11ch}
.mt-meet-setup-side p{margin:0;max-width:38ch;color:var(--ink-soft);font-size:15px;line-height:1.48}
.mt-meet-step{align-self:flex-start;margin-top:16px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:999px;color:var(--accent);font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.mt-meet-setup-main{padding:34px 38px;display:flex;min-height:0;flex-direction:column;justify-content:center;gap:16px}
.mt-meet-account{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--line) 75%,white 25%);border-radius:16px;background:var(--bg-2)}
.mt-meet-account span{grid-column:1/-1;color:var(--ink-soft);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.mt-meet-account b{font-size:18px;overflow-wrap:anywhere}.mt-meet-account em{align-self:center;color:var(--accent);font-style:normal;font-weight:800}
.mt-meet-checks{display:grid;gap:6px;margin:0;padding:0;list-style:none}.mt-meet-checks li{display:flex;align-items:center;gap:13px;padding:9px 0}.mt-meet-checks i,.mt-meet-success>i{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-style:normal;font-weight:900}.mt-meet-checks span{display:grid;gap:2px}.mt-meet-checks small{color:var(--ink-soft);font-size:12px}
.mt-meet-connect{align-self:flex-end;min-width:240px;justify-content:center}.mt-meet-privacy{margin:0;text-align:right;color:var(--ink-soft);font-size:11px}
.mt-meet-success{display:flex;gap:18px;align-items:flex-start;padding:22px 24px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:20px;background:color-mix(in srgb,var(--accent) 9%,var(--bg-1))}.mt-meet-success span{color:var(--accent);font-weight:850;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.mt-meet-success h2{margin:5px 0 8px;font-size:28px}.mt-meet-success p{margin:0;color:var(--ink-soft)}
.mt-meet-setup-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.mt-meet-setup-actions form{margin:0}
.mt-guide-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-height:680px) and (min-width:781px){.mt-meet-setup{height:calc(100dvh - 96px);padding:10px}.mt-meet-setup-card{height:min(480px,100%)}.mt-meet-setup-side,.mt-meet-setup-main{padding-block:24px}.mt-meet-setup-side h1{font-size:34px}.mt-meet-checks li{padding:5px 0}}
@media(max-width:780px){.mt-meet-setup{height:calc(100dvh - 102px);padding:10px}.mt-meet-setup-card{height:auto;max-height:100%;min-height:0;grid-template-columns:1fr;grid-template-rows:auto auto;border-radius:22px}.mt-meet-setup-side{padding:17px 20px;border-right:0;border-bottom:1px solid var(--line)}.mt-meet-setup-side .mt-eyebrow{font-size:9px}.mt-meet-step{margin-top:8px;padding:5px 8px;font-size:9px}.mt-meet-setup-side h1{max-width:none;margin:8px 0;font-size:27px}.mt-meet-setup-side p{font-size:12px;line-height:1.38}.mt-meet-setup-main{justify-content:flex-start;padding:16px 20px;gap:10px}.mt-meet-account{padding:12px 14px}.mt-meet-account b{font-size:15px}.mt-meet-checks{gap:2px}.mt-meet-checks li{gap:10px;padding:5px 0}.mt-meet-checks i,.mt-meet-success>i{flex-basis:30px;height:30px}.mt-meet-checks small{font-size:11px}.mt-meet-connect{align-self:stretch;min-width:0}.mt-meet-privacy{text-align:left;font-size:10px}.mt-meet-success{padding:14px}.mt-meet-success h2{font-size:21px}.mt-meet-setup-actions{align-items:stretch;flex-direction:column-reverse}.mt-meet-setup-actions .btn{width:100%;justify-content:center}}

/* Meeting · pipeline Inviti compatta e wizard coerente. */
.mt-invite-field-label{display:flex;align-items:baseline;gap:4px;min-height:14px;color:var(--ink-soft)!important;font-size:10px;font-weight:750!important;letter-spacing:.045em!important;text-transform:uppercase!important;white-space:nowrap}.mt-invite-field-label small{color:var(--ink-mute);font:inherit;font-weight:550;letter-spacing:0;text-transform:none}.mt-invite-expiry>span{white-space:nowrap}.mt-invite-expiry select{min-width:106px;min-height:36px;padding:7px 30px 7px 11px;border-color:color-mix(in srgb,var(--ink) 18%,var(--line));background-color:var(--bg-2);font-weight:700}
.mt-invites-page{max-width:1580px}.mt-invite-columns{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);align-items:start;gap:20px}.mt-invite-columns>.mt-group-pipeline,.mt-invite-columns>.mt-invite-pipeline{min-width:0;margin:0}.mt-invite-columns .sec-head{align-items:flex-start;margin-bottom:14px}.mt-invite-columns .sec-head h2{margin:0 0 5px;font-size:21px}.mt-invite-columns .sec-head p{max-width:48ch;font-size:12px;line-height:1.45}.mt-invite-columns .sec-head>.btn{padding-inline:15px;white-space:nowrap}
.mt-invite-columns .mt-group-list,.mt-invite-columns .mt-invite-list{gap:12px}.mt-card-eyebrow{display:block;margin-bottom:5px;color:var(--accent);font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.mt-invite-columns .mt-invite-row{position:relative;display:block;overflow:hidden;padding:0;border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-1) 96%,var(--accent) 4%),var(--bg-1))}.mt-invite-columns .mt-invite-row:before,.mt-invite-columns .mt-group-row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.mt-invite-columns .mt-invite-row.is-annullato:before,.mt-invite-columns .mt-invite-row.is-rifiutato:before,.mt-invite-columns .mt-invite-row.is-errore:before,.mt-invite-columns .mt-group-row.is-annullato:before,.mt-invite-columns .mt-group-row.is-errore:before{background:var(--err)}.mt-invite-columns .mt-invite-row.is-scaduto:before{background:var(--ink-mute)}
.mt-invite-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 17px 13px}.mt-invite-columns .mt-invite-person{display:grid;gap:2px;min-width:0}.mt-invite-columns .mt-invite-person b{font-size:17px;line-height:1.2}.mt-invite-columns .mt-invite-person a{font-size:11.5px}.mt-invite-card-state{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}.mt-invite-columns .mt-invite-kind{display:flex;justify-content:flex-end;gap:5px}.mt-invite-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 17px 14px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--line)}.mt-invite-card-meta>div{display:grid;gap:3px;min-width:0;padding:10px 11px;background:var(--bg-2)}.mt-invite-card-meta span,.mt-invite-channel-label span,.mt-group-summary span,.mt-group-proposals-head>span{color:var(--ink-mute);font-size:8.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mt-invite-card-meta b,.mt-invite-channel-label b,.mt-group-summary b{overflow:hidden;text-overflow:ellipsis;color:var(--ink-soft);font-size:10.5px;white-space:nowrap}.mt-invite-card-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 13px 10px 17px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg-2) 72%,transparent)}.mt-invite-columns .mt-invite-channel-label{display:grid;gap:2px;min-width:0}.mt-invite-columns .mt-invite-actions{justify-content:flex-end;gap:5px;flex:0 0 auto}.mt-invite-columns .mt-invite-actions .btn{min-height:34px;padding:6px 9px;font-size:10px}.mt-invite-row.is-annullato,.mt-invite-row.is-rifiutato,.mt-invite-row.is-scaduto{background:var(--bg-1)}.mt-invite-row.is-annullato .mt-invite-card-meta,.mt-invite-row.is-rifiutato .mt-invite-card-meta,.mt-invite-row.is-scaduto .mt-invite-card-meta{opacity:.72}
.mt-invite-columns .mt-group-row{position:relative;overflow:hidden;padding:0 0 13px;border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-1) 96%,var(--accent) 4%),var(--bg-1))}.mt-invite-columns .mt-group-row-head{padding:16px 17px 13px}.mt-invite-columns .mt-group-row-head h3{margin:0;font-size:17px;line-height:1.22}.mt-invite-columns .mt-group-row-head>span{align-self:flex-start;background:var(--bg-2)}.mt-invite-columns .mt-group-row.is-da_confermare .mt-group-row-head>span{border-color:color-mix(in srgb,var(--ok) 50%,var(--line));background:color-mix(in srgb,var(--ok) 10%,var(--bg-1));color:var(--ok)}.mt-invite-columns .mt-group-row.is-annullato .mt-group-row-head>span,.mt-invite-columns .mt-group-row.is-errore .mt-group-row-head>span{color:var(--err)}.mt-group-summary{display:grid;grid-template-columns:1fr 1.3fr .82fr;gap:1px;margin:0 17px 14px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--line)}.mt-group-summary>div{display:grid;align-content:center;gap:4px;min-width:0;padding:10px 11px;background:var(--bg-2)}.mt-invite-columns .mt-group-response-progress{display:grid;grid-template-columns:1fr auto;gap:4px 8px;margin:0}.mt-invite-columns .mt-group-response-progress i{grid-column:1/-1;width:100%;height:5px}.mt-group-proposals-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 17px 7px}.mt-group-proposals-head small{color:var(--ink-mute);font-size:9px}.mt-invite-columns .mt-group-proposal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 17px}.mt-invite-columns .mt-group-proposal-list label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:9px 10px;border-radius:11px;background:var(--bg-2)}.mt-invite-columns .mt-group-proposal-list label span{font-weight:750}.mt-invite-columns .mt-group-proposal-list label small{grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-invite-columns .mt-group-choice{margin-top:0}.mt-invite-columns .mt-group-choice-actions{margin:11px 17px 0}.mt-group-card-footer{display:flex;justify-content:flex-end;margin:12px 17px 0;padding-top:10px;border-top:1px solid var(--line)}.mt-invite-columns .mt-group-cancel{margin:0}.mt-invite-columns .mt-group-row.is-annullato{background:var(--bg-1)}.mt-invite-columns .mt-group-row.is-annullato .mt-group-summary,.mt-invite-columns .mt-group-row.is-annullato .mt-group-proposal-list{opacity:.72}
.mt-invite-type-icon,.mt-invite-copy-icon{display:grid;place-items:center;flex:0 0 auto}.mt-invite-type-icon{width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);color:var(--accent)}.mt-invite-type-icon svg{width:16px;height:16px}.mt-invite-copy-icon{width:34px!important;min-width:34px!important;height:34px!important;padding:0!important}.mt-invite-copy-icon svg{width:16px;height:16px}.mt-invite-copy-icon.is-copied{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--bg-1));color:var(--ok)}
.mt-invite-row.is-new{border-color:var(--mtw-accent,#00e7d2);box-shadow:0 0 0 2px color-mix(in srgb,var(--mtw-accent,#00e7d2) 22%,transparent),0 14px 34px color-mix(in srgb,var(--mtw-accent,#00e7d2) 10%,transparent);animation:mtInviteFresh 1.1s ease-in-out 2}.mt-invite-row{transition:border-color .35s,box-shadow .35s}@keyframes mtInviteFresh{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--mtw-accent,#00e7d2) 25%,transparent),0 16px 38px color-mix(in srgb,var(--mtw-accent,#00e7d2) 16%,transparent)}}
.mt-invite-delete-modal{position:fixed;z-index:2147483000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,5,5,.76);backdrop-filter:blur(11px)}.mt-invite-delete-modal[hidden]{display:none}.mt-invite-delete-dialog{position:relative;width:min(100%,500px);padding:28px;border:1px solid color-mix(in srgb,var(--err) 50%,var(--line));border-radius:22px;background:var(--bg-1);box-shadow:0 26px 90px rgba(0,0,0,.48)}.mt-invite-delete-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink-soft);font-size:22px;line-height:1;cursor:pointer}.mt-invite-delete-kicker{display:block;margin:0 48px 8px 0;color:var(--err);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.mt-invite-delete-dialog h2{margin:0 48px 8px 0;font-size:25px}.mt-invite-delete-dialog>p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.55}.mt-invite-delete-person{display:grid;gap:3px;margin:20px 0;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:var(--bg-2)}.mt-invite-delete-person span{color:var(--ink-mute);font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.mt-invite-delete-person b{font-size:16px}.mt-invite-delete-person small{overflow-wrap:anywhere;color:var(--ink-soft);font-size:12px}.mt-invite-delete-dialog form{display:flex;justify-content:flex-end;gap:8px}.mt-invite-delete-open{overflow:hidden}@media(max-width:560px){.mt-invite-delete-modal{padding:10px}.mt-invite-delete-dialog{padding:23px 18px 18px;border-radius:18px}.mt-invite-delete-dialog form{align-items:stretch;flex-direction:column-reverse}.mt-invite-delete-dialog form .btn{width:100%}}
@media(max-width:1180px){.mt-invite-columns{grid-template-columns:1fr}.mt-invite-columns>.mt-group-pipeline,.mt-invite-columns>.mt-invite-pipeline{margin-bottom:28px}}
@media(max-width:700px){.mt-invite-field-label{font-size:9.5px}.mt-invite-expiry{width:100%;justify-content:space-between}.mt-invite-expiry select{flex:0 0 auto}.mt-invite-columns .sec-head{align-items:stretch;flex-direction:column}.mt-invite-columns .sec-head>.btn{width:100%}.mt-invite-card-head{gap:10px;padding:14px 14px 11px}.mt-invite-card-state{align-items:flex-end;flex-direction:column;gap:6px}.mt-invite-card-meta{margin:0 14px 12px}.mt-invite-card-footer{align-items:flex-start;flex-direction:column;padding:10px 14px}.mt-invite-columns .mt-invite-actions{width:100%;justify-content:flex-end}.mt-group-summary{grid-template-columns:1fr 1fr;margin:0 14px 12px}.mt-group-summary .mt-group-response-progress{grid-column:1/-1}.mt-invite-columns .mt-group-row-head{padding:14px}.mt-group-proposals-head{margin-inline:14px}.mt-invite-columns .mt-group-proposal-list{grid-template-columns:1fr;margin-inline:14px}.mt-invite-columns .mt-group-choice-actions{align-items:stretch;margin-inline:14px}.mt-group-card-footer{margin-inline:14px}}

/* Inviti: i singoli hanno priorità e usano una griglia compatta; i meeting di gruppo restano sotto a piena larghezza. */
.mt-invite-columns{grid-template-columns:minmax(0,1fr);gap:34px}.mt-invite-columns>.mt-invite-pipeline{order:1}.mt-invite-columns>.mt-group-pipeline{order:2}.mt-invite-columns>.mt-group-pipeline,.mt-invite-columns>.mt-invite-pipeline{margin:0}.mt-invite-columns .mt-invite-list{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:11px}.mt-invite-columns .mt-invite-row{display:flex;align-items:stretch;min-width:0;min-height:0;flex-direction:column}.mt-invite-columns .mt-invite-card-head,.mt-invite-columns .mt-invite-card-meta,.mt-invite-columns .mt-invite-card-footer{box-sizing:border-box;width:100%}.mt-invite-columns .mt-invite-card-head{gap:10px;padding:13px 14px 11px}.mt-invite-columns .mt-invite-person b{font-size:16px}.mt-invite-columns .mt-invite-person a{overflow:hidden;text-overflow:ellipsis;font-size:11.25px;white-space:nowrap}.mt-invite-columns .mt-invite-card-state{align-items:flex-end;flex-direction:column;gap:5px}.mt-invite-columns .mt-invite-type-icon{width:28px;height:28px;border-radius:8px}.mt-invite-columns .mt-invite-type-icon svg{width:14px;height:14px}.mt-invite-columns .mt-invite-status{padding:4px 7px;font-size:8.75px}.mt-invite-columns .mt-invite-card-meta{margin:0 14px 11px;width:calc(100% - 28px);border-radius:10px}.mt-invite-columns .mt-invite-card-meta>div{padding:9px 10px}.mt-invite-columns .mt-invite-card-meta span,.mt-invite-columns .mt-invite-channel-label span{font-size:8.25px}.mt-invite-columns .mt-invite-card-meta b,.mt-invite-columns .mt-invite-channel-label b{font-size:10.5px}.mt-invite-columns .mt-invite-card-footer{align-items:flex-end;margin-top:auto;gap:8px;padding:9px 11px 9px 14px}.mt-invite-columns .mt-invite-actions{flex-wrap:wrap;gap:4px}.mt-invite-columns .mt-invite-actions .btn{min-height:30px;padding:5px 7px;font-size:9.5px}.mt-invite-columns .mt-invite-copy-icon{width:30px!important;min-width:30px!important;height:30px!important}.mt-invite-columns .mt-invite-copy-icon svg{width:14px;height:14px}.mt-invite-columns .mt-group-list{grid-template-columns:minmax(0,1fr)}
@media(max-width:1420px){.mt-invite-columns .mt-invite-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1040px){.mt-invite-columns .mt-invite-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.mt-invite-columns{gap:28px}.mt-invite-columns .mt-invite-list{grid-template-columns:1fr}.mt-invite-columns .mt-invite-card-head{padding:13px 14px 10px}.mt-invite-columns .mt-invite-person b{font-size:15px}.mt-invite-columns .mt-invite-card-meta{margin-inline:14px}.mt-invite-columns .mt-invite-card-footer{align-items:flex-start;padding-inline:14px}.mt-invite-columns .mt-invite-actions{width:100%;justify-content:flex-end}}

/* Rubrica Meeting privata e suggerimenti destinatario. */
.mt-invite-fields{position:relative}.mt-contact-suggestions{position:absolute;z-index:40;top:66px;left:0;display:grid;width:calc(50% - 5px);max-height:220px;overflow:auto;padding:5px;border:1px solid color-mix(in srgb,var(--mtw-accent,#00e7d2) 48%,var(--line));border-radius:12px;background:var(--bg-1);box-shadow:0 18px 45px rgba(0,0,0,.34)}.mt-contact-suggestions[hidden]{display:none}.mt-contact-suggestions button{display:grid;gap:2px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.mt-contact-suggestions button:hover,.mt-contact-suggestions button:focus-visible{outline:0;background:color-mix(in srgb,var(--mtw-accent,#00e7d2) 10%,var(--bg-2))}.mt-contact-suggestions b{font-size:11.5px}.mt-contact-suggestions span{overflow:hidden;text-overflow:ellipsis;color:var(--ink-soft);font-size:9.5px;white-space:nowrap}.mt-group-external{position:relative}.mt-group-external>.mt-contact-suggestions{top:100%;left:0;width:calc(50% - 5px)}
.mt-contacts-page{max-width:1440px}.mt-contacts-head{align-items:flex-end}.mt-contact-owner label{display:flex;align-items:center;gap:9px;color:var(--ink-soft);font-size:12px;font-weight:700}.mt-contact-owner select{min-width:230px}.mt-contact-create{display:grid;gap:12px;margin:24px 0 16px;padding:20px}.mt-contact-create h2{margin:3px 0 0;font-size:20px}.mt-contact-form{display:grid;grid-template-columns:1fr 1fr 1.25fr 1fr 1fr auto;align-items:end;gap:9px}.mt-contact-form label{display:grid;gap:5px;min-width:0;color:var(--ink-soft);font-size:9.5px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.mt-contact-form label small{font:inherit;font-weight:550;letter-spacing:0;text-transform:none}.mt-contact-form .mt-in{width:100%;min-width:0;min-height:40px}.mt-contact-help{margin:0;color:var(--ink-mute);font-size:10.5px}.mt-contact-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 11px}.mt-contact-toolbar label{width:min(100%,520px)}.mt-contact-toolbar input{width:100%}.mt-contact-toolbar>span{color:var(--ink-soft);font-size:11.5px;white-space:nowrap}.mt-contact-list{display:grid;gap:9px}.mt-contact-card{position:relative;padding:14px 64px 14px 14px;border:1px solid var(--line);border-radius:15px;background:var(--bg-1)}.mt-contact-card .mt-contact-delete{position:absolute;top:50%;right:13px;transform:translateY(-50%)}.mt-contact-actions{display:flex;align-items:end}.mt-contact-actions .btn{width:100%}
@media(max-width:1180px){.mt-contact-form{grid-template-columns:repeat(3,minmax(0,1fr))}.mt-contact-form>.btn,.mt-contact-actions{justify-self:end}.mt-contact-card{padding-right:14px}.mt-contact-card .mt-contact-delete{position:static;display:flex;justify-content:flex-end;margin-top:8px;transform:none}}
@media(max-width:700px){.mt-contact-suggestions{top:61px;width:100%}.mt-group-external>.mt-contact-suggestions{width:100%}.mt-contacts-head{align-items:stretch;flex-direction:column}.mt-contact-owner label{align-items:stretch;flex-direction:column}.mt-contact-owner select{width:100%;min-width:0}.mt-contact-form{grid-template-columns:1fr 1fr}.mt-contact-form>.btn,.mt-contact-actions{width:100%;justify-self:stretch}.mt-contact-create{padding:15px}.mt-contact-toolbar{align-items:stretch;flex-direction:column}.mt-contact-toolbar label{width:100%}}

/* Meeting · impostazioni personali dei collaboratori. */
.mt-personal-settings{max-width:1180px}.mt-personal-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;margin-top:26px}.mt-personal-settings-grid>.mt-card{display:flex;min-height:310px;flex-direction:column;gap:15px}.mt-personal-settings-grid .mt-card-title{margin:0}.mt-personal-settings-grid .mt-settings-title{font-size:17px}.mt-personal-settings-grid .cdesc{margin:0;line-height:1.55}.mt-personal-link-value{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px dashed color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--accent) 5%,var(--bg-2))}.mt-personal-link-value code{min-width:0;overflow-wrap:anywhere;color:var(--ink);font-family:inherit;font-size:13px;font-weight:750}.mt-personal-link-value .btn{margin-left:auto;flex:0 0 auto}.mt-personal-settings-grid>.mt-card>.btn{align-self:flex-start;margin-top:auto}.mt-personal-google-state{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2)}.mt-personal-google-state>i{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:var(--err);box-shadow:0 0 0 4px color-mix(in srgb,var(--err) 12%,transparent)}.mt-personal-google-state.is-connected>i{background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 12%,transparent)}.mt-personal-google-state>div{display:grid;gap:2px;min-width:0}.mt-personal-google-state b{font-size:13px}.mt-personal-google-state span{overflow:hidden;text-overflow:ellipsis;color:var(--ink-soft);font-size:11px;white-space:nowrap}
@media(max-width:780px){.mt-personal-settings-grid{grid-template-columns:1fr}.mt-personal-settings-grid>.mt-card{min-height:0}.mt-personal-link-value{align-items:stretch;flex-direction:column}.mt-personal-link-value .btn{width:100%;margin:0}}

/* Meeting · wizard inviti: correzioni riservate alla viewport mobile. */
@media(max-width:700px){
  .mt-invite-wizard{place-items:center;overflow-x:hidden;overflow-y:auto}
  .mt-invite-wizard-dialog{max-height:calc(100dvh - 16px);margin-block:auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
  .mt-invite-step-footer{align-items:stretch;flex-direction:column;gap:8px}
  .mt-invite-expiry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;gap:8px}
  .mt-invite-expiry select{box-sizing:border-box;width:auto;min-width:112px;max-width:100%}
  .mt-invite-step-footer>.mt-invite-wizard-actions{width:100%;margin-left:0}
  .mt-invite-step-footer>.mt-invite-wizard-actions .btn{min-width:0;flex:1}
  .mt-invite-step-bottom{grid-template-columns:minmax(0,1fr)}
  .mt-invite-message{display:grid;grid-column:1/-1}
}

/* ========================================================================== */
/* Shortlink · link brevi, cartelle e QR dinamici. */
[data-pf-area="shortlink"]{--sl:#0b93b8;--sl-soft:color-mix(in srgb,var(--sl) 10%,var(--bg-1));--accent:var(--sl);--accent-rgb:11,147,184}
.sl-page{max-width:1540px;padding-bottom:64px}.sl-page svg{width:19px;height:19px;flex:0 0 auto}.sl-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.sl-page-head h1{margin:6px 0 8px;font-size:clamp(30px,3.2vw,43px);line-height:1.02;letter-spacing:-.042em}.sl-page-head p{max-width:720px;margin:0;color:var(--ink-soft);font-size:14px;line-height:1.5}.sl-page-head>.btn{flex:0 0 auto}.sl-eyebrow{color:var(--sl);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.sl-notice{margin:0 0 16px;padding:12px 15px;border:1px solid color-mix(in srgb,var(--ok) 42%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--ok) 9%,var(--bg-1));color:var(--ink);font-size:12px;font-weight:750}.sl-notice.is-error{border-color:color-mix(in srgb,var(--err) 48%,var(--line));background:color-mix(in srgb,var(--err) 9%,var(--bg-1));color:var(--err)}
.sl-domain-warning{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--warn) 45%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--warn) 8%,var(--bg-1))}.sl-domain-warning>div{display:grid;gap:3px}.sl-domain-warning b{font-size:13px}.sl-domain-warning span{color:var(--ink-soft);font-size:11px}
.sl-layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:570px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--bg-1);box-shadow:var(--shadow-1)}.sl-folders{padding:17px 12px;border-right:1px solid var(--line);background:var(--bg-2)}.sl-aside-head{display:flex;align-items:center;justify-content:space-between;padding:0 9px 11px;color:var(--ink-mute);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.sl-aside-head span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:99px;background:var(--bg-1);color:var(--ink-soft)}.sl-folder{position:relative;display:flex;align-items:center;gap:9px;min-height:41px;margin-bottom:3px;padding:0 10px;border-radius:10px;color:var(--ink-soft);font-size:12px;font-weight:720;text-decoration:none}.sl-folder:before{content:"";position:absolute;inset:8px auto 8px 0;width:3px;border-radius:4px;background:transparent}.sl-folder svg{width:17px;height:17px;color:var(--folder,var(--ink-mute))}.sl-folder:hover,.sl-folder.is-active{background:var(--bg-1);color:var(--ink)}.sl-folder.is-active:before{background:var(--folder,var(--sl))}.sl-folder.is-active svg{color:var(--folder,var(--sl))}.sl-folder-new{display:grid;gap:7px;margin:16px 7px 0;padding-top:15px;border-top:1px solid var(--line)}.sl-folder-new>label{color:var(--ink-mute);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.sl-folder-new>div{display:grid;grid-template-columns:minmax(0,1fr) 28px 34px;align-items:center;gap:6px}.sl-folder-new input[type="text"],.sl-folder-new input:not([type]){width:100%;min-width:0;height:36px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink);font:inherit;font-size:10.5px}.sl-folder-new input[type="color"]{width:28px;height:28px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--bg-1);cursor:pointer}.sl-icon-button{display:grid!important;place-items:center;width:35px;height:35px;padding:0!important;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink-soft);cursor:pointer;text-decoration:none}.sl-icon-button svg{width:16px;height:16px}.sl-icon-button:hover{border-color:color-mix(in srgb,var(--sl) 55%,var(--line));background:var(--sl-soft);color:var(--sl)}
.sl-content{min-width:0;padding:18px}.sl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.sl-search{display:flex;align-items:center;gap:9px;width:min(100%,560px);height:42px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2);color:var(--ink-mute)}.sl-search svg{width:16px;height:16px}.sl-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:12px}.sl-archive-filter{display:inline-flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:11px;font-weight:750;text-decoration:none}.sl-archive-filter svg{width:15px;height:15px}.sl-archive-filter:hover{color:var(--sl)}.sl-list{display:grid;gap:9px}.sl-row{display:grid;grid-template-columns:minmax(280px,1fr) minmax(210px,.5fr) 82px;align-items:center;gap:16px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--bg-2);transition:border-color .16s,transform .16s}.sl-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--sl) 42%,var(--line))}.sl-row[hidden]{display:none}.sl-row-main{min-width:0}.sl-row-title{display:flex;align-items:center;gap:8px;min-width:0;margin-bottom:7px}.sl-row-title h2{min-width:0;overflow:hidden;margin:0;text-overflow:ellipsis;font-size:14px;white-space:nowrap}.sl-status{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--ink-mute);box-shadow:0 0 0 4px color-mix(in srgb,var(--ink-mute) 13%,transparent)}.sl-status.is-active{background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 13%,transparent)}.sl-private{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid color-mix(in srgb,var(--sl) 30%,var(--line));border-radius:99px;color:var(--sl);font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.sl-private svg{width:10px;height:10px}.sl-url{display:flex;align-items:center;gap:7px;min-width:0}.sl-url code{overflow:hidden;color:var(--sl);font-family:inherit;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.sl-copy{display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border:0;border-radius:6px;background:transparent;color:var(--ink-mute);font:inherit;font-size:9px;font-weight:750;cursor:pointer}.sl-copy svg{width:12px;height:12px}.sl-copy:hover,.sl-copy.is-copied{background:var(--sl-soft);color:var(--sl)}.sl-destination{display:flex;align-items:center;gap:5px;min-width:0;margin-top:5px;overflow:hidden;color:var(--ink-mute);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.sl-destination span{color:var(--sl)}.sl-row-meta{display:grid;gap:4px;color:var(--ink-soft);font-size:10px}.sl-row-meta span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-row-meta i{width:8px;height:8px;flex:0 0 auto;border-radius:3px;background:var(--folder,var(--line))}.sl-row-actions{display:flex;justify-content:flex-end;gap:6px}.sl-empty{display:grid;justify-items:center;padding:64px 22px;text-align:center;color:var(--ink-mute)}.sl-empty>svg{width:38px;height:38px;margin-bottom:10px;color:var(--sl)}.sl-empty h2{margin:0 0 5px;color:var(--ink);font-size:18px}.sl-empty p{margin:0;font-size:11px}
.sl-form-page,.sl-detail-page,.sl-history-page,.sl-settings-page{max-width:1280px}.sl-editor{display:grid;gap:14px}.sl-card{padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--bg-1);box-shadow:0 14px 40px rgba(0,0,0,.05)}.sl-card-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.sl-card-head>span{display:grid;place-items:center;min-width:36px;height:36px;border-radius:10px;background:var(--sl-soft);color:var(--sl);font-size:11px;font-weight:850}.sl-card-head>span svg{width:18px;height:18px}.sl-card-head h2{margin:1px 0 4px;font-size:18px;letter-spacing:-.015em}.sl-card-head p{margin:0;color:var(--ink-mute);font-size:10.5px}.sl-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.sl-fields label,.sl-domain-form>label{display:grid;gap:6px;color:var(--ink-soft);font-size:9.5px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.sl-fields label>span small{color:var(--ink-mute);font:inherit;font-weight:550;letter-spacing:0;text-transform:none}.sl-fields input,.sl-domain-form input{width:100%;min-height:43px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-2);color:var(--ink);font:inherit;font-size:13px}.sl-fields input:focus,.sl-domain-form input:focus{outline:2px solid color-mix(in srgb,var(--sl) 28%,transparent);border-color:var(--sl)}.sl-fields .is-wide{grid-column:1/-1}.sl-code-field{display:flex;align-items:center;min-width:0;min-height:43px;border:1px solid var(--line);border-radius:10px;background:var(--bg-2)}.sl-code-field:focus-within{outline:2px solid color-mix(in srgb,var(--sl) 28%,transparent);border-color:var(--sl)}.sl-code-field b{padding-left:12px;color:var(--ink-mute);font-size:11px;letter-spacing:0;text-transform:none;white-space:nowrap}.sl-code-field input{min-width:80px;border:0;background:transparent;outline:0}.sl-choice-grid,.sl-visibility{margin:0;padding:0;border:0}.sl-choice-grid legend,.sl-visibility legend{margin-bottom:8px;color:var(--ink-soft);font-size:9.5px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.sl-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.sl-choice-grid label,.sl-visibility label{position:relative;cursor:pointer}.sl-choice-grid input,.sl-visibility input{position:absolute;opacity:0;pointer-events:none}.sl-choice-grid label>span{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--bg-2);color:var(--ink-soft)}.sl-choice-grid label>span svg{width:16px;height:16px;color:var(--folder,var(--ink-mute))}.sl-choice-grid label>span b{overflow:hidden;text-overflow:ellipsis;font-size:11px;white-space:nowrap}.sl-choice-grid input:checked+span,.sl-visibility input:checked+span{border-color:var(--sl);background:var(--sl-soft);box-shadow:inset 0 0 0 1px var(--sl);color:var(--ink)}.sl-choice-grid input:focus-visible+span,.sl-visibility input:focus-visible+span{outline:2px solid var(--sl);outline-offset:2px}.sl-visibility{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--bg-1)}.sl-visibility legend{float:left;width:100%;margin-bottom:9px}.sl-visibility label>span{display:grid;grid-template-columns:28px 1fr;gap:2px 8px;min-height:66px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2)}.sl-visibility svg{grid-row:1/3;align-self:center;color:var(--sl)}.sl-visibility b{font-size:11px}.sl-visibility small{color:var(--ink-mute);font-size:9px}.sl-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding-top:3px}
.sl-form-page{max-width:1120px}.sl-form-head,.sl-editor{max-width:900px;margin-right:auto;margin-left:auto}.sl-editor{display:block}.sl-create-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--bg-1);box-shadow:0 22px 62px rgba(0,0,0,.08)}.sl-main-fields{display:grid;gap:17px;padding:28px}.sl-field{display:grid;gap:7px;color:var(--ink-soft);font-size:9.5px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.sl-field>span small{color:var(--ink-mute);font:inherit;font-weight:550;letter-spacing:0;text-transform:none}.sl-field>input{width:100%;min-height:48px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2);color:var(--ink);font:inherit;font-size:14px}.sl-field>input:focus{outline:2px solid color-mix(in srgb,var(--sl) 28%,transparent);border-color:var(--sl)}.sl-field-help{color:var(--ink-mute);font-size:10.5px;font-weight:550;letter-spacing:0;line-height:1.4;text-transform:none}.sl-main-destination>input{min-height:58px;font-size:17px}.sl-link-preview{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 28px 22px;padding:15px 17px;border:1px dashed color-mix(in srgb,var(--sl) 48%,var(--line));border-radius:13px;background:var(--sl-soft)}.sl-link-preview>div{display:grid;gap:3px}.sl-link-preview small{color:var(--ink-mute);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.sl-link-preview strong{color:var(--sl);font-size:17px}.sl-link-preview strong span{color:var(--ink-soft)}.sl-link-preview p{display:grid;gap:2px;margin:0;text-align:right}.sl-link-preview p b{font-size:11px}.sl-link-preview p span{color:var(--ink-mute);font-size:10px}.sl-options-toggle{display:grid;grid-template-columns:28px auto 1fr;align-items:center;gap:4px 10px;width:100%;min-height:58px;padding:11px 28px;border:0;border-top:1px solid var(--line);background:var(--bg-2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.sl-options-sign{grid-row:1/3;display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--sl-soft);color:var(--sl);font-size:18px;font-weight:600}.sl-options-toggle>b{align-self:end;font-size:12px}.sl-options-toggle>small{grid-column:2/4;align-self:start;color:var(--ink-mute);font-size:10px}.sl-options-toggle:hover{background:color-mix(in srgb,var(--sl) 5%,var(--bg-2))}.sl-options-toggle:focus-visible{outline:2px solid var(--sl);outline-offset:-3px}.sl-options-content{display:grid;gap:18px;padding:24px 28px;border-top:1px solid var(--line);background:var(--bg-2)}.sl-options-content[hidden]{display:none}.sl-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sl-options-content .sl-code-field{min-height:48px;border-radius:11px;background:var(--bg-1)}.sl-options-content .sl-code-field input{width:100%;min-height:46px;padding:10px 12px;font-size:13px}.sl-option-label{color:var(--ink-soft);font-size:9.5px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.sl-folder-options{display:grid;gap:8px}.sl-folder-list{display:flex;flex-wrap:wrap;gap:8px}.sl-folder-list label{position:relative;cursor:pointer}.sl-folder-list input,.sl-private-option>input{position:absolute;opacity:0;pointer-events:none}.sl-folder-list label>span{display:flex;align-items:center;gap:8px;min-height:40px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-1);color:var(--ink-soft)}.sl-folder-list label>span svg{width:15px;height:15px;color:var(--folder,var(--ink-mute))}.sl-folder-list label>span b{max-width:220px;overflow:hidden;text-overflow:ellipsis;font-size:11px;white-space:nowrap}.sl-folder-list input:checked+span{border-color:var(--sl);background:var(--sl-soft);box-shadow:inset 0 0 0 1px var(--sl);color:var(--ink)}.sl-folder-list input:focus-visible+span,.sl-private-option>input:focus-visible+span{outline:2px solid var(--sl);outline-offset:2px}.sl-private-option{position:relative}.sl-private-option>span{display:grid;grid-template-columns:22px 1fr 38px;align-items:center;gap:2px 10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-1);cursor:pointer}.sl-private-option>span>svg{grid-column:1;grid-row:1/3;width:17px;height:17px;color:var(--sl)}.sl-private-option>span>span{display:grid;gap:2px}.sl-private-option b{font-size:11px}.sl-private-option small{color:var(--ink-mute);font-size:10px}.sl-private-option i{grid-column:3;grid-row:1/3;width:36px;height:20px;border-radius:99px;background:var(--line-strong);box-shadow:inset 0 0 0 1px var(--line)}.sl-private-option i:after{content:"";display:block;width:16px;height:16px;margin:2px;border-radius:50%;background:var(--bg-1);transition:transform .16s}.sl-private-option>input:checked+span{border-color:color-mix(in srgb,var(--sl) 46%,var(--line));background:var(--sl-soft)}.sl-private-option>input:checked+span i{background:var(--sl)}.sl-private-option>input:checked+span i:after{transform:translateX(16px)}.sl-shared-note{margin:-8px 0 0;color:var(--ink-mute);font-size:10px}.sl-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:17px 28px;border-top:1px solid var(--line);background:var(--bg-1)}
.sl-destination-large{max-width:840px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-detail-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:start;gap:15px}.sl-link-card,.sl-stats-card,.sl-info-card{min-width:0}.sl-public-value{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px dashed color-mix(in srgb,var(--sl) 48%,var(--line));border-radius:12px;background:var(--sl-soft)}.sl-public-value code{min-width:0;overflow-wrap:anywhere;color:var(--sl);font-family:inherit;font-size:14px;font-weight:850}.sl-public-value .btn{flex:0 0 auto}.sl-public-value .btn svg{width:15px;height:15px}.sl-inline-warning{margin-top:10px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--warn) 9%,var(--bg-2));color:var(--ink-soft);font-size:10.5px}.sl-detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:15px}.sl-detail-actions form{margin:0}.sl-qr-card{grid-row:span 2}.sl-qr{width:min(100%,350px);aspect-ratio:1;margin:0 auto;padding:16px;border:1px solid var(--line);border-radius:17px;background:#fff}.sl-qr canvas,.sl-qr img{display:block!important;width:100%!important;height:100%!important}.sl-qr-actions{display:flex;justify-content:center;gap:8px;margin-top:13px}.sl-qr-placeholder{display:grid;justify-items:center;gap:10px;padding:65px 15px;border:1px dashed var(--line);border-radius:15px;color:var(--ink-mute);font-size:11px}.sl-qr-placeholder svg{width:62px;height:62px;color:var(--sl);opacity:.5}.sl-stat-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sl-stat-pills>div{display:grid;gap:2px;padding:12px;border-radius:11px;background:var(--bg-2)}.sl-stat-pills b{font-size:21px}.sl-stat-pills span{color:var(--ink-mute);font-size:9px;font-weight:750;text-transform:uppercase}.sl-chart{display:flex;align-items:end;gap:4px;height:82px;margin-top:15px;padding:8px;border-bottom:1px solid var(--line)}.sl-chart i{flex:1;min-width:3px;height:var(--bar);border-radius:4px 4px 0 0;background:var(--sl);opacity:.78}.sl-chart i:hover{opacity:1}.sl-chart-empty{align-self:center;width:100%;color:var(--ink-mute);font-size:10px;text-align:center}.sl-info-card dl{display:grid;gap:1px;overflow:hidden;margin:0;border:1px solid var(--line);border-radius:11px;background:var(--line)}.sl-info-card dl>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;background:var(--bg-2)}.sl-info-card dt{color:var(--ink-mute);font-size:9px;text-transform:uppercase}.sl-info-card dd{margin:0;color:var(--ink);font-size:10.5px;font-weight:750}
.sl-history-current{display:grid;gap:4px;margin-bottom:18px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--sl) 40%,var(--line));border-radius:14px;background:var(--sl-soft)}.sl-history-current span{color:var(--sl);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.sl-history-current b{overflow-wrap:anywhere;font-size:12px}.sl-timeline{position:relative;display:grid;gap:13px;padding-left:24px}.sl-timeline:before{content:"";position:absolute;inset:0 auto 0 6px;width:1px;background:var(--line)}.sl-timeline article{position:relative;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--bg-1)}.sl-timeline article>i{position:absolute;top:21px;left:-23px;width:11px;height:11px;border:3px solid var(--bg);border-radius:50%;background:var(--sl);box-shadow:0 0 0 1px var(--sl)}.sl-timeline time{color:var(--sl);font-size:9px;font-weight:800;text-transform:uppercase}.sl-timeline h2{margin:5px 0 12px;font-size:14px}.sl-timeline article>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px 9px}.sl-timeline article span{color:var(--ink-mute);font-size:9px;font-weight:750;text-transform:uppercase}.sl-timeline code{overflow-wrap:anywhere;color:var(--ink-soft);font:inherit;font-size:10.5px}
.sl-domain-form{display:grid;gap:17px;max-width:850px}.sl-domain-form>label input{margin-top:1px}.sl-domain-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sl-domain-checks>div{display:grid;gap:4px;padding:12px;border-radius:11px;background:var(--bg-2)}.sl-domain-checks b{font-size:10px}.sl-domain-checks span{color:var(--ink-mute);font-size:9.5px;line-height:1.45}.sl-domain-form>.btn{justify-self:end}
@media(max-width:1100px){.sl-row{grid-template-columns:minmax(260px,1fr) 170px 82px}.sl-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sl-detail-grid{grid-template-columns:1fr}.sl-qr-card{grid-row:auto}.sl-qr{width:min(100%,310px)}}
@media(max-width:780px){.sl-page{padding-inline:14px}.sl-page-head{align-items:stretch;flex-direction:column;gap:15px}.sl-page-head>.btn{width:100%}.sl-domain-warning{align-items:stretch;flex-direction:column}.sl-layout{display:block}.sl-folders{display:flex;gap:5px;overflow-x:auto;padding:10px;border-right:0;border-bottom:1px solid var(--line)}.sl-aside-head,.sl-folder-new{display:none}.sl-folder{flex:0 0 auto;margin:0;padding-inline:11px}.sl-folder:before{display:none}.sl-folder.is-active{box-shadow:inset 0 0 0 1px var(--sl)}.sl-content{padding:12px}.sl-toolbar{align-items:stretch;flex-direction:column}.sl-search{width:100%}.sl-archive-filter{align-self:flex-end}.sl-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px}.sl-row-meta{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:9px;border-top:1px solid var(--line)}.sl-row-actions{grid-column:2;grid-row:1}.sl-fields{grid-template-columns:1fr}.sl-fields .is-wide{grid-column:auto}.sl-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sl-visibility{grid-template-columns:1fr}.sl-main-fields{padding:20px}.sl-link-preview{align-items:flex-start;flex-direction:column;margin:0 20px 18px}.sl-link-preview p{text-align:left}.sl-options-toggle{padding-inline:20px}.sl-options-content{padding:20px}.sl-options-grid{grid-template-columns:1fr}.sl-editor-actions{align-items:stretch;flex-direction:column-reverse;padding:16px 20px}.sl-editor-actions .btn{width:100%}.sl-public-value{align-items:stretch;flex-direction:column}.sl-public-value .btn{width:100%}.sl-qr-actions{align-items:stretch;flex-direction:column}.sl-qr-actions .btn{width:100%}.sl-domain-checks{grid-template-columns:1fr}.sl-domain-form>.btn{width:100%;justify-self:stretch}}
@media(max-width:460px){.sl-row-title{align-items:flex-start;flex-wrap:wrap}.sl-row-title h2{width:calc(100% - 18px)}.sl-row-meta{grid-template-columns:1fr 1fr}.sl-row-meta span:last-child{display:none}.sl-row-actions{flex-direction:column}.sl-choice-grid{grid-template-columns:1fr}.sl-stat-pills{grid-template-columns:1fr 1fr}.sl-stat-pills>div:last-child{grid-column:1/-1}.sl-card{padding:16px}.sl-detail-actions{align-items:stretch;flex-direction:column}.sl-detail-actions .btn,.sl-detail-actions form,.sl-detail-actions form button{width:100%}.sl-timeline article>div{grid-template-columns:1fr}.sl-timeline article span{margin-top:5px}}

/* Shortlink · cartelle private, tavolozza e cancellazione definitiva. */
.sl-folder .sl-folder-lock{display:grid;place-items:center;width:18px;height:18px;margin-left:auto;color:var(--sl)}.sl-folder .sl-folder-lock svg{width:11px;height:11px;color:currentColor}.sl-folder-new>.sl-folder-create-row{grid-template-columns:minmax(0,1fr) 34px}.sl-folder-new>label:not(.sl-folder-private-toggle){color:var(--ink-mute);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.sl-folder-private-toggle{position:relative;cursor:pointer}.sl-folder-private-toggle>input,.sl-folder-palette input{position:absolute;opacity:0;pointer-events:none}.sl-folder-private-toggle>span{display:grid;grid-template-columns:15px 1fr 28px;align-items:center;gap:7px;min-height:32px;padding:5px 7px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1);color:var(--ink-soft)}.sl-folder-private-toggle svg{width:13px;height:13px;color:var(--sl)}.sl-folder-private-toggle b{font-size:9.5px}.sl-folder-private-toggle i{width:27px;height:16px;border-radius:99px;background:var(--line-strong)}.sl-folder-private-toggle i:after{content:"";display:block;width:12px;height:12px;margin:2px;border-radius:50%;background:var(--bg-1);transition:transform .16s}.sl-folder-private-toggle input:checked+span{border-color:color-mix(in srgb,var(--sl) 44%,var(--line));background:var(--sl-soft);color:var(--ink)}.sl-folder-private-toggle input:checked+span i{background:var(--sl)}.sl-folder-private-toggle input:checked+span i:after{transform:translateX(11px)}.sl-folder-private-toggle input:focus-visible+span{outline:2px solid var(--sl);outline-offset:2px}.sl-folder-palette{display:grid;gap:6px;margin:0;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1)}.sl-folder-palette[hidden]{display:none}.sl-folder-palette legend{padding:0 3px;color:var(--ink-mute);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.sl-folder-palette>div{display:grid;grid-template-columns:repeat(4,24px);gap:6px}.sl-folder-palette label{position:relative;display:block;width:24px;height:24px;cursor:pointer}.sl-folder-palette label>span{display:block;width:24px;height:24px;border:1px solid color-mix(in srgb,#000 18%,transparent);border-radius:5px;background:var(--swatch)}.sl-folder-palette input:checked+span{outline:2px solid var(--bg-1);outline-offset:-4px;box-shadow:0 0 0 2px var(--sl)}.sl-folder-palette input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.sl-folder-list label>span em{display:inline-flex;align-items:center;gap:3px;color:var(--sl);font-size:8px;font-style:normal;font-weight:800;text-transform:uppercase}.sl-folder-list label>span em svg{width:10px;height:10px;color:currentColor}.sl-row{grid-template-columns:minmax(280px,1fr) minmax(210px,.5fr) 117px}.sl-delete-button:hover{border-color:color-mix(in srgb,var(--err) 55%,var(--line));background:color-mix(in srgb,var(--err) 9%,var(--bg-1));color:var(--err)}
.sl-delete-modal{position:fixed;z-index:2147483000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,5,5,.76);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px)}.sl-delete-modal[hidden]{display:none}.sl-delete-dialog{position:relative;width:min(100%,500px);padding:28px;border:1px solid color-mix(in srgb,var(--err) 50%,var(--line));border-radius:22px;background:var(--bg-1);box-shadow:0 26px 90px rgba(0,0,0,.48)}.sl-delete-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink-soft);font:inherit;font-size:22px;line-height:1;cursor:pointer}.sl-delete-kicker{display:block;margin:0 48px 8px 0;color:var(--err);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sl-delete-dialog h2{margin:0 48px 8px 0;font-size:25px}.sl-delete-dialog>p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.55}.sl-delete-target{display:grid;gap:3px;margin:20px 0;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:var(--bg-2)}.sl-delete-target>span{color:var(--ink-mute);font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.sl-delete-target b{font-size:16px}.sl-delete-target code{overflow-wrap:anywhere;color:var(--sl);font-family:inherit;font-size:12px;font-weight:750}.sl-delete-dialog form{display:flex;justify-content:flex-end;gap:8px}.sl-delete-open{overflow:hidden}
@media(max-width:1100px) and (min-width:781px){.sl-row{grid-template-columns:minmax(260px,1fr) 150px 117px}}
@media(max-width:780px){.sl-row{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:560px){.sl-delete-modal{padding:10px}.sl-delete-dialog{padding:23px 18px 18px;border-radius:18px}.sl-delete-dialog form{align-items:stretch;flex-direction:column-reverse}.sl-delete-dialog form .btn{width:100%}}
.sl-qr img{display:none!important}
.sl-folder-new>.sl-folder-private-toggle{color:inherit;letter-spacing:0;text-transform:none}

/* Shortlink · cartelle compatte; i comandi compaiono soltanto in modalità gestione. */
.sl-folders{padding:14px 10px}.sl-aside-head{gap:5px;padding:0 6px 9px}.sl-aside-head>b{margin-right:auto}.sl-aside-head span{min-width:20px;height:20px}.sl-folder{gap:7px;min-height:34px;margin-bottom:2px;padding:0 8px;border-radius:8px;font-size:10.5px}.sl-folder:before{inset-block:7px}.sl-folder svg{width:15px;height:15px}.sl-folder>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-folder-count{color:var(--ink-mute);font-size:9px;font-weight:700}.sl-folder .sl-folder-lock{width:15px;height:15px;margin-left:1px}.sl-folder .sl-folder-lock svg{width:10px;height:10px}.sl-folder-row{min-width:0;margin-bottom:2px}.sl-folder-row .sl-folder{min-width:0;margin:0}.sl-folder-manage-toggle{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-mute);cursor:pointer}.sl-folder-manage-toggle svg{width:13px;height:13px}.sl-folder-manage-toggle:hover,.sl-folder-manage-toggle:focus-visible,.sl-folder-manage-toggle[aria-pressed="true"]{outline:0;background:var(--sl-soft);color:var(--sl)}.sl-folder-manage-toggle:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--sl) 48%,transparent)}.sl-folder-manage-mobile{display:none}.sl-folder-actions{display:none;align-items:center;gap:1px}.sl-folders.is-managing .sl-folder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px}.sl-folders.is-managing .sl-folder-actions{display:flex}.sl-folder-edit,.sl-folder-delete{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-mute);cursor:pointer}.sl-folder-edit svg,.sl-folder-delete svg{width:13px;height:13px}.sl-folder-edit:hover,.sl-folder-edit:focus-visible{outline:0;background:var(--sl-soft);color:var(--sl)}.sl-folder-edit:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--sl) 48%,transparent)}.sl-folder-delete:hover,.sl-folder-delete:focus-visible{outline:0;background:color-mix(in srgb,var(--err) 10%,var(--bg-1));color:var(--err)}.sl-folder-delete:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--err) 48%,transparent)}
.sl-folder-edit-modal{position:fixed;z-index:2147483000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,5,5,.72);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px)}.sl-folder-edit-modal[hidden]{display:none}.sl-folder-edit-dialog{position:relative;width:min(100%,480px);padding:28px;border:1px solid color-mix(in srgb,var(--sl) 48%,var(--line));border-radius:22px;background:var(--bg-1);box-shadow:0 26px 90px rgba(0,0,0,.48)}.sl-folder-edit-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--bg-2);color:var(--ink-soft);cursor:pointer}.sl-folder-edit-close svg{width:17px;height:17px}.sl-folder-edit-close:hover,.sl-folder-edit-close:focus-visible{outline:0;border-color:color-mix(in srgb,var(--sl) 45%,var(--line));background:var(--sl-soft);color:var(--sl)}.sl-folder-edit-kicker{display:block;margin:0 48px 8px 0;color:var(--sl);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sl-folder-edit-dialog h2{margin:0 48px 8px 0;font-size:25px}.sl-folder-edit-dialog>p{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.55}.sl-folder-edit-dialog form{display:grid;gap:15px;margin-top:20px}.sl-folder-edit-dialog .sl-field input{width:100%}.sl-folder-edit-palette{margin:0}.sl-folder-edit-note{margin:-3px 0 0;color:var(--ink-mute);font-size:10px}.sl-folder-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}.sl-folder-edit-open{overflow:hidden}
@media(max-width:780px){.sl-folder-row{display:flex;flex:0 0 auto;margin:0}.sl-folder-row .sl-folder{flex:0 0 auto}.sl-folder-manage-mobile{display:grid;flex:0 0 auto;width:34px;height:34px;border:1px solid var(--line);background:var(--bg-1)}.sl-folders.is-managing .sl-folder-row{display:flex}.sl-folder-actions{flex:0 0 auto}.sl-folder-edit,.sl-folder-delete{flex:0 0 auto;background:var(--bg-1)}}
@media(max-width:560px){.sl-folder-edit-modal{padding:10px}.sl-folder-edit-dialog{padding:23px 18px 18px;border-radius:18px}.sl-folder-edit-actions{align-items:stretch;flex-direction:column-reverse}.sl-folder-edit-actions .btn{width:100%}}

/* Shortlink · card informative con attività aggregata degli ultimi sette giorni. */
.sl-row{grid-template-areas:"main stats meta actions";grid-template-columns:minmax(310px,1.2fr) minmax(260px,.78fr) minmax(190px,.58fr) 117px;align-items:stretch;gap:18px;min-height:154px;padding:18px}.sl-row-main{grid-area:main;align-self:center}.sl-row-stats{grid-area:stats;display:grid;grid-template-columns:82px minmax(150px,1fr);align-items:stretch;gap:12px;min-width:0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--sl) 25%,var(--line));border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--sl) 8%,var(--bg-1)),var(--bg-1))}.sl-row-stats-summary{display:grid;align-content:center;min-width:0}.sl-row-stats-summary>span{color:var(--ink-mute);font-size:8px;font-weight:850;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.sl-row-stats-summary>b{margin-top:2px;color:var(--ink);font-size:28px;line-height:1}.sl-row-stats-summary>small{margin-top:2px;color:var(--ink-soft);font-size:9px}.sl-row-stats-summary>div{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.sl-row-stats-summary>div i{padding:3px 5px;border-radius:5px;background:color-mix(in srgb,var(--sl) 9%,var(--bg-2));color:var(--ink-mute);font-size:7.5px;font-style:normal;font-weight:750;white-space:nowrap}.sl-row-spark{display:grid;grid-template-columns:repeat(7,minmax(9px,1fr));align-items:stretch;gap:5px;min-width:0;height:76px;padding-top:3px}.sl-row-spark>span{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:end;gap:4px;min-width:0}.sl-row-spark i{display:block;width:100%;height:var(--bar);min-height:5px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,#24ddce,var(--sl));box-shadow:0 3px 10px color-mix(in srgb,var(--sl) 24%,transparent)}.sl-row-spark i.is-empty{background:var(--line-strong);box-shadow:none;opacity:.62}.sl-row-spark small{overflow:hidden;color:var(--ink-mute);font-size:7px;font-weight:750;line-height:1;text-align:center;text-transform:uppercase}.sl-row-meta{grid-area:meta;display:grid;align-content:center;gap:7px;min-width:0;color:var(--ink-soft);font-size:9.5px}.sl-row-meta span{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-row-meta svg{width:13px;height:13px;color:var(--ink-mute)}.sl-row-meta span:first-child svg{color:var(--folder,var(--sl))}.sl-row-meta .sl-row-total{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1px 6px;margin-top:2px;padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg-1)}.sl-row-total b{grid-row:1/3;color:var(--sl);font-size:19px;line-height:1}.sl-row-total small{align-self:center;overflow:hidden;color:var(--ink-mute);font-size:8px;font-weight:750;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.sl-row-actions{grid-area:actions;align-self:center;padding-left:12px;border-left:1px solid var(--line)}
@media(max-width:1400px) and (min-width:981px){.sl-row{grid-template-areas:"main stats actions" "meta meta meta";grid-template-columns:minmax(280px,1fr) minmax(250px,320px) 117px}.sl-row-meta{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:11px;border-top:1px solid var(--line)}.sl-row-meta .sl-row-total{margin:0;padding-block:6px}.sl-row-actions{grid-row:1}}
@media(max-width:980px){.sl-row{grid-template-areas:"main actions" "stats stats" "meta meta";grid-template-columns:minmax(0,1fr) 117px;gap:13px}.sl-row-stats{grid-template-columns:86px minmax(0,1fr)}.sl-row-meta{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:11px;border-top:1px solid var(--line)}.sl-row-meta .sl-row-total{margin:0;padding-block:6px}.sl-row-actions{grid-row:1}}
@media(max-width:780px){.sl-row{grid-template-columns:minmax(0,1fr) auto;min-height:0;padding:14px}.sl-row-stats{grid-template-columns:80px minmax(0,1fr)}.sl-row-meta{grid-template-columns:1fr 1fr}.sl-row-actions{padding-left:9px}.sl-row-spark{height:68px}}
@media(max-width:460px){.sl-row-meta span:last-child{display:grid}.sl-row-meta .sl-row-total{grid-template-columns:auto minmax(0,1fr)}.sl-row-stats{gap:9px;padding-inline:10px}.sl-row-stats-summary>b{font-size:25px}.sl-row-stats-summary>div{gap:3px}.sl-row-stats-summary>div i{padding-inline:4px}.sl-row-spark{gap:4px}}

/* Shortlink · statistiche compatte senza aumentare l'altezza della riga. */
.sl-row{min-height:126px;padding-block:14px}.sl-row-stats{align-self:center;padding:7px 10px}.sl-row-stats-summary>b{font-size:24px}.sl-row-stats-summary>div{margin-top:5px}.sl-row-stats-summary>div i{padding-block:2px}.sl-row-spark{height:60px}
@media(max-width:780px){.sl-row{min-height:0}.sl-row-stats{align-self:stretch}}

/* Meeting gruppo: rifiniture circoscritte al wizard mobile. */
@media(max-width:760px){
  .mt-group-wizard{
    place-items:center;
    padding:10px;
    overflow:hidden;
  }
  .mt-group-dialog{
    width:calc(100vw - 20px);
    max-height:calc(100dvh - 20px);
    margin:0;
    overflow:hidden;
  }
  .mt-group-head{
    flex:0 0 auto;
    gap:12px;
  }
  .mt-group-head>div{
    min-width:0;
  }
  .mt-group-head h2,
  .mt-group-head p{
    overflow-wrap:anywhere;
  }
  .mt-group-head button{
    flex:0 0 34px;
  }
  .mt-group-progress{
    flex:0 0 auto;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .mt-group-progress span{
    min-width:0;
    justify-content:center;
  }
  .mt-group-progress i{
    flex:0 0 21px;
  }
  .mt-group-form{
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .mt-group-form>section{
    min-width:0;
  }
  .mt-group-weeks{
    max-width:100%;
    padding-bottom:0;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .mt-group-weeks::-webkit-scrollbar{
    display:none;
    width:0;
    height:0;
  }
  [data-mt-group-step="3"] .mt-group-actions{
    display:grid;
    grid-template-areas:
      "counter counter"
      "back next";
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    width:100%;
  }
  [data-mt-group-step="3"] .mt-group-actions>[data-mt-group-back]{
    grid-area:back;
  }
  [data-mt-group-step="3"] .mt-group-actions>span{
    grid-area:counter;
    margin:0;
    text-align:center;
  }
  [data-mt-group-step="3"] .mt-group-actions>[data-mt-group-next]{
    grid-area:next;
  }
  [data-mt-group-step="3"] .mt-group-actions .btn{
    width:100%;
    min-width:0;
  }
  .mt-group-external-list{
    counter-reset:mt-group-person;
    gap:10px;
  }
  .mt-group-external{
    counter-increment:mt-group-person;
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:9px;
    padding:36px 11px 11px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--bg-2);
  }
  .mt-group-external::before{
    content:"Persona " counter(mt-group-person);
    position:absolute;
    top:11px;
    left:11px;
    color:var(--mtg-accent);
    font-size:9px;
    font-weight:850;
    letter-spacing:.09em;
    text-transform:uppercase;
  }
  .mt-group-external label{
    grid-column:1;
    min-width:0;
  }
  .mt-group-external .mt-in{
    width:100%;
    min-width:0;
  }
  .mt-group-external>button[data-mt-group-remove]{
    position:absolute;
    top:7px;
    right:7px;
    grid-column:auto;
    grid-row:auto;
    width:28px;
    height:28px;
    margin:0;
  }
  .mt-group-external>.mt-contact-suggestions{
    top:100%;
    width:100%;
  }
  [data-mt-group-add]{
    width:100%;
  }
  .mt-group-final{
    gap:12px;
  }
  .mt-group-final label{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
  }
  .mt-group-final select{
    min-width:112px;
  }
}

/* Meeting · campi partecipanti coerenti nei tre flussi. */
.mt-direct-contact-add{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end}
.mt-direct-contact-add>button{grid-column:3;grid-row:1/3;align-self:stretch;min-height:42px}
.mt-direct-email-list>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 8px;border-radius:13px}
.mt-direct-email-list>span>b,.mt-direct-email-list>span>small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mt-direct-email-list>span>small{grid-column:1;color:var(--muted);font-size:9px}
.mt-direct-email-list>span>button{grid-column:2;grid-row:1/3}
.mt-group-external{grid-template-columns:repeat(2,minmax(0,1fr));padding:36px 11px 11px}
.mt-group-external>button[data-mt-group-remove]{position:absolute;top:7px;right:7px;margin:0}
.mt-group-external>.mt-contact-suggestions{top:100%;width:100%}
@media(max-width:760px){
  .mt-direct-contact-add{grid-template-columns:1fr}
  .mt-direct-contact-add>button{grid-column:1;grid-row:auto;width:100%}
  .mt-group-external{grid-template-columns:minmax(0,1fr)}
}
