/* Area clienti UCI — super app dell'associato (17-18/10/2026). Testi minimo 16px, tasti grandi, contrasti alti, niente sorprese. */
.ar{max-width:1040px;margin:0 auto;padding:22px 16px 110px;font-size:17px;line-height:1.5}
.saluto{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.saluto h1{font-size:clamp(28px,5vw,40px);color:var(--vs);line-height:1.1}.saluto small{display:block;color:var(--sl);font-size:16px;font-family:Inter,system-ui,sans-serif;margin-top:6px}
.sal-az{display:flex;gap:8px}
.btn.chiaro{background:#fff!important;color:var(--vs)!important;border:2px solid var(--bd);box-shadow:none!important}
.btn.tondo{width:50px;height:50px;padding:0!important;justify-content:center;border-radius:50%!important}
.btn.grande{font-size:18px;padding:17px 20px;justify-content:center;width:100%;margin-top:6px}
.btn.mini{font-size:15px;padding:9px 13px;min-height:44px;flex:none}
button.link{background:none;border:0;color:var(--v);font:700 16px Inter,system-ui,sans-serif;cursor:pointer;padding:10px 0;min-height:44px}
:focus-visible{outline:3px solid #E9B949;outline-offset:2px;border-radius:10px}
.intro{color:var(--sl);margin-bottom:12px;font-size:16px}
.piccolo{font-size:15px;color:var(--sl);margin-top:12px}
.lab{font-weight:700;color:var(--vs)}
/* schede in alto */
.schede{position:sticky;top:0;z-index:30;display:flex;gap:8px;overflow-x:auto;padding:10px 2px 12px;margin:0 -2px 18px;background:linear-gradient(#fffdf7 75%,rgba(255,253,247,0));scrollbar-width:none}
.schede::-webkit-scrollbar{display:none}
.schede button{flex:none;border:0;border-radius:99px;padding:12px 18px;font:600 16px Inter,system-ui,sans-serif;background:#fff;color:var(--vs);box-shadow:0 4px 14px -6px rgba(15,77,37,.25);cursor:pointer;display:flex;gap:8px;align-items:center;min-height:48px}
.schede button.on{background:linear-gradient(135deg,var(--vv),var(--v));color:#fff}
.schede button .n{background:rgba(0,0,0,.08);border-radius:99px;padding:1px 8px;font-size:13px}.schede button.on .n{background:rgba(255,255,255,.25)}
.pann{display:none;animation:entra .35s ease}.pann.on{display:block}@keyframes entra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* barra in basso sul telefono */
.app-nav{display:none}
@media(max-width:760px){
 .schede{display:none}
 .app-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:65;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--bd);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px -18px rgba(15,77,37,.4)}
 .app-nav button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font:600 12.5px Inter,system-ui,sans-serif;color:var(--sl);cursor:pointer;position:relative;min-height:56px;border-radius:14px}
 .app-nav button i{font-size:22px}.app-nav button.on{color:var(--v);background:#EEF6F0}
 .app-nav em{position:absolute;top:2px;left:calc(50% + 6px);background:#C62828;color:#fff;font-style:normal;font-size:11px;font-weight:800;border-radius:99px;min-width:19px;height:19px;display:flex;align-items:center;justify-content:center;padding:0 5px}
 .app-nav em.g{background:#E0A100}
 body .bar-mob,body .wa-fisso{display:none!important}
 body .ai-btn{bottom:86px}
 .ar{padding-bottom:120px}
}
/* cambio CAA */
.cc-box{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:linear-gradient(135deg,#FFF4D6,#EAF6EC);border:2px solid var(--oro);border-radius:20px;padding:16px 18px;margin:0 0 18px;box-shadow:var(--sh)}
.cc-box>i{font-size:26px;color:var(--v);flex:0 0 auto}.cc-box>div{flex:1 1 260px}.cc-box b{display:block;color:var(--vs);font-size:17.5px}.cc-box small{color:var(--sl);font-size:15px}
.cc-box .btn{flex:0 0 auto}.cc-barra{height:8px;border-radius:8px;background:#fff;margin-top:8px;overflow:hidden}.cc-barra span{display:block;height:100%;background:linear-gradient(90deg,var(--oro),var(--vv))}
@media(max-width:600px){.cc-box .btn{flex:1 1 100%;justify-content:center}}
/* ricerca */
.cerca-box{position:relative;display:flex;align-items:center;gap:10px;background:#fff;border:2px solid var(--v);border-radius:18px;padding:6px 8px 6px 16px;margin-bottom:16px;box-shadow:var(--sh)}
.cerca-box[hidden]{display:none}.cerca-box>i{color:var(--v)}
.cerca-box input{flex:1;border:0;font:17px Inter,system-ui,sans-serif;padding:12px 0;background:none;min-width:0}.cerca-box input:focus{outline:0}
.cerca-box>button{border:0;background:#EEF6F0;color:var(--vs);width:44px;height:44px;border-radius:12px;font-size:24px;cursor:pointer}
.cerca-ris{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border-radius:18px;box-shadow:0 24px 60px -20px rgba(10,40,20,.45);max-height:60vh;overflow-y:auto;z-index:40}
.cerca-ris:empty{display:none}
.cr{display:block;width:100%;text-align:left;border:0;border-top:1px solid var(--bd);background:#fff;padding:12px 16px;cursor:pointer;font:16px Inter,system-ui,sans-serif;color:var(--vs)}.cr:first-child{border-top:0}.cr:hover{background:#f7fcf8}
.cr small{display:block;color:var(--v);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.03em}
.lampo{animation:lampo 2.2s ease}@keyframes lampo{0%,60%{background:#FFF1C2;border-radius:12px}100%{background:transparent}}
/* semaforo */
.semaforo{display:flex;gap:18px;align-items:center;border-radius:24px;padding:20px 22px;margin-bottom:16px;box-shadow:var(--sh);cursor:default}
.semaforo[role=button]{cursor:pointer}
.semaforo.verde{background:linear-gradient(135deg,#E8F5E9,#fff)}.semaforo.giallo{background:linear-gradient(135deg,#FFF6DD,#fff)}.semaforo.rosso{background:linear-gradient(135deg,#FDECEA,#fff)}
.luci{flex:none;display:flex;flex-direction:column;gap:6px;background:#1d2b22;padding:8px;border-radius:18px}
.luci .l{width:20px;height:20px;border-radius:50%;opacity:.18}.luci .r{background:#E53935}.luci .g{background:#FFB300}.luci .v{background:#43A047}
.semaforo.rosso .l.r,.semaforo.giallo .l.g,.semaforo.verde .l.v{opacity:1;box-shadow:0 0 14px 2px currentColor}
.semaforo.rosso .l.r{color:#E53935}.semaforo.giallo .l.g{color:#FFB300}.semaforo.verde .l.v{color:#43A047}
.sem-t small{display:block;color:var(--sl);font-size:15px}.sem-t b{display:block;font:700 clamp(22px,4vw,28px) Fraunces,serif;color:var(--vs);margin:2px 0 4px}.sem-t span{color:#3d4a41;font-size:16px}
.sem-t u{color:var(--v);font-weight:700;text-decoration:none;white-space:nowrap}
/* tre azioni grandi */
.tre{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
.big{border:0;cursor:pointer;text-decoration:none;background:#fff;border-radius:22px;box-shadow:var(--sh);padding:20px 14px;text-align:center;color:var(--vs);font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:132px;justify-content:center;transition:transform .15s}
.big i{font-size:32px;color:var(--v);margin-bottom:6px}.big b{font-size:17px}.big small{color:var(--sl);font-size:14.5px}
.big.oro{background:linear-gradient(135deg,#FFF4D6,#fff);border:2px solid var(--oro)}.big:active{transform:scale(.97)}
@media(max-width:600px){.tre{grid-template-columns:1fr}.big{flex-direction:row;min-height:0;text-align:left;padding:16px 18px;gap:14px;justify-content:flex-start}.big i{margin:0;width:40px;flex:none}.big b{display:block}.big small{display:block}.big>b,.big>small{width:auto}}
@media(max-width:600px){.big{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:14px}.big i{grid-row:1/3}.big b,.big small{text-align:left}}
.griglia{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}
.griglia.piccola{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.tasto{background:#fff;border-radius:20px;box-shadow:var(--sh);padding:16px 10px;text-align:center;text-decoration:none;color:var(--vs);font-weight:600;border:0;cursor:pointer;font-family:inherit;font-size:16px;display:block;min-height:88px}
.tasto i{display:block;font-size:26px;margin-bottom:8px;color:var(--v)}.tasto:active{transform:scale(.97)}
/* traguardi */
.badge-riga{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.badge{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,#0F4D25,#1F7A3A);color:#fff;border-radius:99px;padding:8px 14px;font:700 14.5px Inter,system-ui,sans-serif}.badge i{color:#F6D77A}
/* cifre e blocchi */
.cifre{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:20px}
.cifra{background:linear-gradient(160deg,#fff,#f3faf5);border-radius:20px;padding:18px;box-shadow:var(--sh)}.cifra b{display:block;font:700 30px Fraunces,serif;color:var(--vs);margin:2px 0 4px}.cifra b.pic{font-size:20px;line-height:1.25}.cifra small{color:var(--sl);font-size:15px;display:block}
.cifra .barra{margin:6px 0}
.blocco{background:#fff;border-radius:24px;box-shadow:var(--sh);padding:22px;margin-bottom:18px}
.blocco h2{font-size:23px;color:var(--vs);margin-bottom:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.blocco h2 i{color:var(--v)}
.blocco h3{font-size:18px;color:var(--vs);margin:20px 0 8px}
.voce{display:flex;gap:14px;align-items:center;padding:14px 4px;border-top:1px solid var(--bd);text-decoration:none;color:inherit}.voce:first-of-type{border-top:0}
a.voce:hover{background:#f7fcf8;border-radius:14px}
.voce .ic{flex:none;width:46px;height:46px;border-radius:14px;background:#EEF6F0;color:var(--v);display:flex;align-items:center;justify-content:center;font-size:19px}
.voce>div:not(.ic){flex:1;min-width:0}
.voce b{display:block}.voce small{color:var(--sl);font-size:15px;display:block}.voce .fr{margin-left:auto;color:var(--sl)}
.stato{flex:none;padding:5px 11px;border-radius:99px;font-size:14px;font-weight:700;white-space:nowrap}.stato.v{background:#E8F5E9;color:#1B5E20}.stato.g{background:#FFF6DD;color:#8a5a00}.stato.r{background:#FDECEA;color:#B71C1C}.stato.n{background:#F1F3F2;color:#55615a}
.vuoto{color:var(--sl);padding:6px 0}.vuoto i{color:var(--v);margin-right:6px}
.dati{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.dati div{background:#f7fcf8;border-radius:14px;padding:12px 14px}.dati small{display:block;color:var(--sl);font-size:14px}.dati b{font-size:17px;color:var(--vs);word-break:break-word}
.avviso{background:#FFF6DD;border-radius:16px;padding:14px 16px;margin-bottom:12px;display:flex;gap:12px;align-items:center}.avviso>div{flex:1}.avviso i{color:#c78a00;font-size:20px}
.avviso.verde{background:#E8F5E9}.avviso.verde i{color:var(--v)}
.tabella{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:14px;border:1px solid var(--bd)}
table.t{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}table.t td,table.t th{padding:10px 10px;border-top:1px solid var(--bd);text-align:left;vertical-align:top}table.t th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--sl);border-top:0;background:#f7fcf8;white-space:nowrap}
table.t tr:nth-child(even) td{background:#fcfefc}
details.sez{border:1px solid var(--bd);border-radius:16px;margin-bottom:10px;background:#fff;overflow:hidden}
details.sez summary{cursor:pointer;padding:15px 16px;font-weight:700;color:var(--vs);list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:52px}
details.sez summary::-webkit-details-marker{display:none}details.sez summary:after{content:'\f078';font-family:'Font Awesome 6 Free';font-weight:900;color:var(--v);transition:.2s}details.sez[open] summary:after{transform:rotate(180deg)}
details.sez summary .n{margin-left:auto;background:#EEF6F0;color:var(--v);border-radius:99px;padding:2px 10px;font-size:13px}
details.sez .dentro{padding:0 14px 14px}
.carica{display:grid;gap:12px}.carica select,.carica input[type=file],.carica textarea{width:100%;padding:15px;font-size:17px;border:2px solid var(--bd);border-radius:14px;font-family:inherit;background:#fff}
.carica textarea:focus,.carica select:focus{outline:0;border-color:var(--vv)}
.msg{border-radius:14px;padding:14px;font-weight:600;display:none;margin-top:8px}.msg.ko{background:#FDECEA;color:#B71C1C}.msg.ok{background:#E8F5E9;color:#1B5E20}
.barra{height:12px;border-radius:99px;background:#EEF6F0;overflow:hidden}.barra i{display:block;height:100%;background:linear-gradient(90deg,var(--vv),var(--oro))}
.nascosto{filter:blur(6px);user-select:none;cursor:pointer}
.indietro-link{display:inline-flex;gap:8px;align-items:center;margin-bottom:14px;font-weight:600;color:var(--v);text-decoration:none}
.az2{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
/* grafico a barre */
.barre{display:grid;gap:10px}
.barra-r{display:grid;grid-template-columns:minmax(110px,30%) 1fr auto;gap:12px;align-items:center}
.barra-r .bn{font-weight:600;color:var(--vs);font-size:16px;overflow-wrap:anywhere}.barra-r .bn small{display:block;font-weight:400;color:var(--sl);font-size:13.5px}
.barra-r .bb{height:16px;background:#EEF6F0;border-radius:99px;overflow:hidden}.barra-r .bb i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--vv),var(--v));animation:cresci .9s ease}
.barra-r .bv{font-weight:700;color:var(--vs);white-space:nowrap;font-size:15.5px}
@keyframes cresci{from{width:0!important}}
@media(max-width:560px){.barra-r{grid-template-columns:1fr auto}.barra-r .bb{grid-column:1/-1;grid-row:2}}
/* linea del tempo (fasi domanda) */
ol.tl{list-style:none;margin:6px 0 16px;padding:0;position:relative}
ol.tl li{position:relative;padding:4px 0 16px 40px}ol.tl li:before{content:'';position:absolute;left:13px;top:28px;bottom:-2px;width:3px;background:var(--bd)}ol.tl li:last-child:before{display:none}
ol.tl li:after{content:'';position:absolute;left:4px;top:5px;width:21px;height:21px;border-radius:50%;background:#fff;border:3px solid var(--bd)}
ol.tl li.fatto:after{background:var(--v);border-color:var(--v);content:'\f00c';font-family:'Font Awesome 6 Free';font-weight:900;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center}ol.tl li.fatto:before{background:var(--v)}
ol.tl li.qui:after{border-color:var(--oro);box-shadow:0 0 0 5px rgba(233,185,73,.25)}
ol.tl b{display:block;color:var(--vs)}ol.tl small{color:var(--sl);font-size:15px}
.tl-p .voce{position:relative}
/* richieste con un tocco */
.rq-gr{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.rq{border:2px solid var(--bd);background:#fff;border-radius:18px;padding:16px;text-align:left;cursor:pointer;font-family:inherit;color:var(--vs);text-decoration:none;display:grid;grid-template-columns:40px 1fr;column-gap:12px;align-items:center;min-height:84px;transition:.15s}
.rq i{grid-row:1/3;font-size:24px;color:var(--v);text-align:center}.rq b{font-size:16.5px}.rq small{color:var(--sl);font-size:14.5px}
.rq:hover{border-color:var(--vv);background:#f7fcf8}.rq:active{transform:scale(.98)}.rq.oro{border-color:var(--oro);background:#FFFBEF}
/* documenti del fascicolo */
.leg{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.voce.slot{flex-wrap:wrap}.slot-az{display:flex;gap:6px;margin-left:auto}
.voce.slot.s-g .ic{background:#FFF6DD;color:#c78a00}.voce.slot.s-r .ic{background:#FDECEA;color:#C62828}.voce.slot.s-n .ic{background:#F1F3F2;color:#7a857f}
em.obb{font-style:normal;font-size:12px;font-weight:700;color:#8a5a00;background:#FFF6DD;border-radius:99px;padding:1px 8px;margin-left:6px;vertical-align:middle}
.voce.carico{opacity:.55;pointer-events:none;background:linear-gradient(90deg,#f3f7f4 25%,#e8efe9 50%,#f3f7f4 75%);background-size:200% 100%;animation:sk 1.1s linear infinite;border-radius:14px}
@keyframes sk{to{background-position:-200% 0}}
/* glossario */
.gl{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid var(--v);background:#fff;color:var(--v);font:800 14px Inter,system-ui,sans-serif;cursor:pointer;vertical-align:middle;padding:0;margin-left:2px;line-height:1}
.gl:hover{background:var(--v);color:#fff}
.gl-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.gl-voce{border:1px solid var(--bd);border-radius:14px;padding:0 14px;background:#fcfefc}.gl-voce summary{cursor:pointer;padding:13px 0;font-weight:700;color:var(--vs);min-height:48px}.gl-voce p{padding:0 0 14px;color:#3d4a41;font-size:16px}
/* foglio a comparsa */
.foglio{position:fixed;inset:0;z-index:90;display:flex;align-items:flex-end;justify-content:center}.foglio[hidden]{display:none}
.f-fondo{position:absolute;inset:0;background:rgba(10,30,18,.5);backdrop-filter:blur(2px)}
.f-box{position:relative;background:#fff;width:min(520px,100%);border-radius:26px 26px 0 0;padding:26px 22px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px -20px rgba(0,0,0,.4);animation:su .25s cubic-bezier(.2,.8,.2,1);text-align:center}
@media(min-width:761px){.foglio{align-items:center}.f-box{border-radius:26px}}
@keyframes su{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
.f-x{position:absolute;right:12px;top:10px;border:0;background:#EEF6F0;width:44px;height:44px;border-radius:12px;font-size:24px;cursor:pointer;color:var(--vs)}
.f-ic{font-size:34px;color:var(--v);margin-bottom:8px;display:block}.f-box h3{font:700 23px Fraunces,serif;color:var(--vs);margin-bottom:6px}.f-box p{color:#3d4a41;margin-bottom:14px}
.f-box textarea{width:100%;padding:14px;font:17px Inter,system-ui,sans-serif;border:2px solid var(--bd);border-radius:14px;margin-bottom:6px;text-align:left}
/* messaggi */
.chat{display:flex;flex-direction:column;gap:8px}
.bolla{max-width:82%;padding:12px 15px;border-radius:18px;border:1px solid var(--bd);font-size:16.5px}.bolla small{display:block;color:var(--sl);margin-bottom:4px;font-size:13.5px}
.bolla.io{align-self:flex-end;background:#E8F5E9;border-bottom-right-radius:6px}.bolla.noi{align-self:flex-start;background:#fff;border-bottom-left-radius:6px}
/* documenti: filtri */
.filtri{display:flex;gap:8px;overflow-x:auto;margin-bottom:8px;scrollbar-width:none}.filtri button{flex:none;border:2px solid var(--bd);background:#fff;border-radius:99px;padding:8px 14px;font:600 15px Inter,system-ui,sans-serif;color:var(--vs);cursor:pointer;min-height:44px}.filtri button.on{border-color:var(--v);background:#EEF6F0}
/* tessera */
.tessera{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#0F4D25,#1F7A3A 60%,#2FA35A);color:#fff;border-radius:24px;padding:22px;margin-bottom:16px;box-shadow:0 20px 50px -20px rgba(15,77,37,.6)}
.t-sx{display:flex;gap:14px;align-items:center}.t-sx small{display:block;opacity:.85;font-size:13px;text-transform:uppercase;letter-spacing:.05em}.t-sx b{display:block;font:700 22px Fraunces,serif;color:#F6D77A}.t-sx span{display:block;font-size:16px}
.t-qr{background:#fff;padding:8px;border-radius:14px;line-height:0}.t-qr:empty{display:none}
/* invito al CAA */
.invito{text-align:center}.inv-ic{width:84px;height:84px;margin:0 auto 10px;border-radius:26px;background:linear-gradient(135deg,#FFF4D6,#EAF6EC);display:flex;align-items:center;justify-content:center;font-size:40px;color:var(--v)}
.invito p{max-width:600px;margin:0 auto 12px}.spunte{list-style:none;padding:0;margin:0 auto 14px;max-width:460px;text-align:left}.spunte li{padding:6px 0;font-weight:600;color:var(--vs)}.spunte i{color:var(--v);margin-right:8px}
.inv-scad{background:#FFF6DD;border-radius:14px;padding:10px 14px;display:inline-block}.inv-az{display:grid;gap:10px;max-width:460px;margin:8px auto 12px}
@media(max-width:560px){.blocco{padding:16px}.voce{flex-wrap:wrap}.semaforo{padding:16px}.luci .l{width:16px;height:16px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
