/* Cives in Cloud — Congresso: stili del modulo condiviso (gestionale + link) */
.cgv-hero{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.cgv-hero > div:first-child{flex:1;min-width:220px;}
.cgv-hero .desc{margin:4px 0 0;}
.cgv-kpis{display:flex;gap:10px;flex-wrap:wrap;}
.cgv-kpis > div{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:9px 13px;min-width:92px;}
.cgv-kpis b{font-family:'Unbounded';font-size:20px;display:block;line-height:1.1;}
.cgv-kpis span{font-size:11px;color:var(--muted);font-weight:600;}
.cgv-gh{display:flex;align-items:center;gap:8px;margin-bottom:6px;}
.cgv-warn{border-color:var(--amber);background:linear-gradient(0deg,var(--amberSoft),var(--panel) 60%);}

/* righe candidatura */
.cgv-cand{display:flex;gap:12px;align-items:center;padding:12px 4px;border-top:1px solid var(--line);flex-wrap:wrap;}
.cgv-cand:first-of-type{border-top:none;}
.cgv-cand.ritirata{opacity:.55;}
.cgv-cand-main{flex:1;min-width:220px;}
.cgv-cand-name{font-weight:700;font-size:15px;}
.cgv-cand-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-top:3px;}
.cgv-cand-act{display:flex;gap:6px;flex-wrap:wrap;}
.cgv-form{border:2px solid var(--brand);}
.cgv-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.cgv-inline .inp{flex:1;min-width:120px;}
.cgv-found{display:flex;flex-direction:column;gap:4px;margin-top:6px;}
.cgv-found button{text-align:left;border:1px solid var(--line2);background:var(--panel2);border-radius:9px;padding:7px 10px;cursor:pointer;font:600 13px 'DM Sans';color:var(--ink);}
.cgv-found button:hover{border-color:var(--brand);background:var(--brandSoft);}

/* selettore a pulsanti */
.cgv-seg{display:flex;flex-wrap:wrap;gap:6px;}
.cgv-seg button{border:1.5px solid var(--line2);background:var(--panel);color:var(--ink2);border-radius:11px;padding:10px 13px;font:700 13px 'DM Sans';cursor:pointer;transition:.12s;}
.cgv-seg button:hover{border-color:var(--brand);}
.cgv-seg button.on{background:var(--brand);border-color:var(--brand);color:#fff;}
.cgv-seg.sm button{padding:7px 14px;}
.cgv-seg[data-seg^="numeroLegale"] button.on[data-v="false"]{background:var(--red);border-color:var(--red);}
.cgv-seg[data-seg^="numeroLegale"] button.on[data-v="true"]{background:var(--green);border-color:var(--green);}

/* verbale: avanzamento e navigazione */
.cgv-top{position:sticky;top:0;z-index:5;background:var(--bg);padding:10px 0 6px;margin:-4px 0 4px;}
.cgv-prog{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.cgv-bar{flex:1;min-width:160px;height:10px;background:var(--line);border-radius:999px;overflow:hidden;}
.cgv-bar > i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--brand2));border-radius:999px;transition:width .4s;}
.cgv-bar.done > i{background:var(--green);}
.cgv-pct{font-family:'Unbounded';font-weight:700;font-size:15px;min-width:52px;}
.cgv-save{font-size:12px;color:var(--muted);}
.cgv-save.err{color:var(--red);font-weight:700;}
.cgv-steps{display:flex;gap:6px;overflow-x:auto;padding:8px 0 2px;scrollbar-width:none;}
.cgv-steps button{flex:0 0 auto;border:1px solid var(--line2);background:var(--panel);border-radius:999px;padding:6px 12px;font:700 12px 'DM Sans';color:var(--ink2);cursor:pointer;}
.cgv-steps button.ok{border-color:transparent;background:var(--greenSoft);color:var(--green);}
.cgv-miss{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;}
.cgv-miss button{border:none;background:var(--amberSoft);color:var(--amber);border-radius:999px;padding:4px 10px;font:700 11.5px 'DM Sans';cursor:pointer;}
.cgv-sec{scroll-margin-top:120px;}
.cgv-sec-h{display:flex;gap:12px;align-items:flex-start;margin-bottom:6px;}
.cgv-sec-h .desc{margin:2px 0 0;}
.cgv-num{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:0 0 30px;background:var(--brandSoft);color:var(--brandInk);font:800 14px 'Unbounded';}
.cgv-sec.ok .cgv-num{background:var(--green);color:#fff;}
.cgv-conv{border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--panel2);}
.cgv-conv.on{border-color:var(--brand);background:var(--brandSoft);}
.cgv-conv h3{font-size:13px;margin:0 0 2px;}
.cgv-quorum{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:13px;background:var(--panel2);border:1px dashed var(--line2);border-radius:12px;padding:10px 12px;margin:12px 0;}
.cgv-hint{font-size:12px;color:var(--muted);margin-top:4px;}

/* editor a righe (mozioni, emendamenti) */
.cgv-rows{display:flex;flex-direction:column;gap:8px;margin:8px 0;}
.cgv-r{display:grid;gap:8px;align-items:center;}
.cgv-r .inp{padding:9px 11px;font-size:14px;}
.cgv-r .inp.num{text-align:right;}
.cgv-rh{display:grid;gap:8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700;padding:0 2px;}
.iconbtn.sm{width:32px;height:32px;border-radius:9px;font-size:13px;}
.cgv-esito .pill{white-space:nowrap;}

/* elezioni */
.cgv-vt{width:100%;}
.cgv-vt td{padding:8px 6px;}
.cgv-vt .inp{padding:8px 10px;}
.cgv-vt input.voti{width:90px;text-align:right;font-weight:700;font-size:16px;}
.cgv-vt tr.eletto td{background:var(--greenSoft);}
.cgv-vt tr.suppl td{background:var(--brandSoft);}
.cgv-avvisi > div{background:var(--amberSoft);color:var(--amber);border-radius:12px;padding:10px 13px;margin:8px 0;font-weight:600;font-size:13.5px;}
.cgv-eletti{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:12px;}
.cgv-eletti > div{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--panel2);}
.cgv-eletti h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);}
.cgv-eletti .p{display:flex;justify-content:space-between;gap:8px;padding:4px 0;font-weight:700;font-size:14px;}
.cgv-eletti .p span{color:var(--muted);font-weight:600;}

/* regia */
.cgv-modi{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;}
.cgv-modo{border:2px solid var(--line);border-radius:16px;padding:14px;cursor:pointer;background:var(--panel);text-align:left;font-family:'DM Sans';color:var(--ink);transition:.15s;}
.cgv-modo:hover{border-color:var(--brand2);}
.cgv-modo.on{border-color:var(--brand);background:var(--brandSoft);box-shadow:0 10px 24px -14px var(--brand);}
.cgv-modo .ic{font-size:24px;}
.cgv-modo b{display:block;font-size:15px;margin:6px 0 2px;}
.cgv-modo span{font-size:12.5px;color:var(--muted);}
.cgv-modo .live{display:inline-block;margin-top:6px;font-size:10.5px;font-weight:800;color:#fff;background:var(--red);border-radius:999px;padding:2px 8px;letter-spacing:.5px;}
.cgv-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0;}
.cgv-chips button{border:1px solid var(--line2);background:var(--panel2);border-radius:999px;padding:5px 11px;font:600 12.5px 'DM Sans';cursor:pointer;color:var(--ink2);}
.cgv-chips button:hover{border-color:var(--brand);color:var(--brandInk);}
.cgv-mini{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:13.5px;}
.cgv-mini b{font-family:'Unbounded';font-size:22px;}

/* check-in */
.cgv-ck-big{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;}
.cgv-ck-big > div{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow);}
.cgv-ck-big b{font-family:'Unbounded';font-size:34px;display:block;line-height:1.1;}
.cgv-ck-big span{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;}
.cgv-scan{font-size:20px !important;padding:16px 18px !important;text-align:center;letter-spacing:1px;}
.cgv-banner{border-radius:16px;padding:16px 18px;margin-top:10px;animation:cgvPop .25s ease;}
.cgv-banner .t{font-size:20px;font-weight:800;}
.cgv-banner .s{font-size:13.5px;margin-top:2px;}
.cgv-banner.g{background:var(--greenSoft);color:var(--green);}
.cgv-banner.a{background:var(--amberSoft);color:var(--amber);}
.cgv-banner.r{background:var(--redSoft);color:var(--red);}
@keyframes cgvPop{from{transform:scale(.97);opacity:.4}to{transform:none;opacity:1}}
#ckCamBox{border-radius:14px;overflow:hidden;margin-top:10px;max-width:420px;}
.cgv-res{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 4px;border-top:1px solid var(--line);}
.cgv-res:first-child{border-top:none;}

/* link e QR */
.cgv-link{display:flex;gap:8px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:11px;padding:8px 10px;font-family:ui-monospace,Menlo,monospace;font-size:12px;word-break:break-all;}
.cgv-scopes{display:flex;flex-wrap:wrap;gap:8px;}
.cgv-scopes label{display:flex;gap:8px;align-items:flex-start;border:1.5px solid var(--line2);border-radius:12px;padding:10px 12px;cursor:pointer;flex:1;min-width:190px;font-size:13px;}
.cgv-scopes label b{display:block;font-size:13.5px;}
.cgv-scopes label span{color:var(--muted);font-size:12px;}
.cgv-scopes input{margin-top:3px;accent-color:var(--brand);}
.cgv-acc{display:flex;gap:12px;align-items:center;padding:12px 2px;border-top:1px solid var(--line);flex-wrap:wrap;}
.cgv-acc:first-child{border-top:none;}
.cgv-acc.off{opacity:.55;}
.cgv-qr{display:grid;place-items:center;padding:10px;background:#fff;border-radius:14px;}
.cgv-qr svg,.cgv-qr img{width:240px;height:240px;}
@media print{body *{visibility:hidden}.cgv-print,.cgv-print *{visibility:visible}.cgv-print{position:fixed;inset:0;display:grid;place-items:center;text-align:center}}
@media(max-width:620px){.cgv-r{grid-template-columns:1fr 1fr 1fr !important}.cgv-r > :first-child{grid-column:1/-1}.cgv-rh{display:none}}

/* diapositive e timer (regia) */
.cgv-deck-h{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;}
.cgv-deck-h .desc{margin:2px 0 10px;max-width:640px;}
.cgv-remote{display:flex;gap:8px;margin-bottom:12px;}
.cgv-remote .btn{padding:14px 22px;font-size:16px;}
.cgv-slides{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;}
.cgv-sl{position:relative;display:flex;flex-direction:column;gap:3px;text-align:left;min-height:118px;border-radius:16px;padding:12px 12px 44px;cursor:pointer;color:#fff;border:2px solid transparent;font-family:'DM Sans';
  background:linear-gradient(140deg,#3a1d5c,#1b0f2c);box-shadow:0 10px 24px -16px rgba(40,10,70,.8);transition:transform .15s,box-shadow .15s,border-color .15s;}
.cgv-sl:hover{transform:translateY(-2px);box-shadow:0 16px 30px -16px rgba(40,10,70,.9);}
.cgv-sl.on{border-color:#ff4d6d;box-shadow:0 0 0 4px rgba(255,77,109,.25),0 16px 30px -14px rgba(255,77,109,.8);}
.cgv-sl.t-benvenuto{background:linear-gradient(140deg,#b3125e,#5b2a9c 55%,#1f3b8f);}
.cgv-sl.t-intervento{background:linear-gradient(140deg,#c9469a,#5a24b0);}
.cgv-sl.t-presidenza{background:linear-gradient(140deg,#1d3fbf,#4a2b9a 70%,#8a6a1c);}
.cgv-sl.t-mozione{background:linear-gradient(140deg,#00936f,#0b5c80);}
.cgv-sl.t-votazione{background:linear-gradient(140deg,#e2304f,#a3285f);}
.cgv-sl.t-pausa{background:linear-gradient(140deg,#e37a00,#9a2d6a);}
.cgv-sl b{font-family:'Unbounded';font-size:14.5px;line-height:1.2;margin-top:4px;}
.cgv-sl-sub{font-size:12px;opacity:.8;}
.cgv-sl-top{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:11px;font-weight:800;letter-spacing:.3px;}
.cgv-sl-n{width:20px;height:20px;border-radius:7px;display:grid;place-items:center;background:rgba(255,255,255,.2);}
.cgv-sl-tipo{opacity:.9;text-transform:uppercase;}
.cgv-sl-t{background:rgba(0,0,0,.25);border-radius:999px;padding:2px 7px;}
.cgv-sl .live{font-size:10px;font-weight:800;color:#fff;background:#ff2d55;border-radius:999px;padding:2px 8px;animation:cgvBlink 1.4s infinite;margin-left:auto;}
@keyframes cgvBlink{50%{opacity:.55}}
.cgv-sl-act{position:absolute;left:10px;right:10px;bottom:8px;display:flex;gap:4px;justify-content:flex-end;opacity:.75;}
.cgv-sl:hover .cgv-sl-act{opacity:1;}
.cgv-sl-act .iconbtn{background:rgba(255,255,255,.16);color:#fff;border:none;}
.cgv-sl-add{align-items:center;justify-content:center;padding:12px;background:var(--panel2);color:var(--ink2);border:2px dashed var(--line2);box-shadow:none;}
.cgv-sl-add:hover{border-color:var(--brand);color:var(--brandInk);}
.cgv-tm{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.cgv-tm-big{font-family:'Unbounded';font-weight:800;font-size:46px;min-width:170px;font-variant-numeric:tabular-nums;color:var(--green);}
.cgv-tm-big.warn{color:var(--amber);}
.cgv-tm-big.over{color:var(--red);animation:cgvBlink 1s infinite;}
.cgv-tm-btn{display:flex;gap:8px;flex-wrap:wrap;}
@media(max-width:620px){.cgv-slides{grid-template-columns:1fr 1fr}.cgv-sl{min-height:104px}.cgv-sl b{font-size:13px}.cgv-remote{width:100%}.cgv-remote .btn{flex:1}}
