/* ==========================================================================
   CONFIGURATORE FATTURAZIONE ELETTRONICA - CV STUDIO
   skin/frontend/digithera/respdigithera/css/configuratore_0001.css

   Stile della pagina configuratore di CV Studio. Deriva dal design fatto per
   Digithera nel settembre 2026, ma e' volutamente DIVERSO: scope, palette,
   raggi e tipografia cambiano, cosi' le due installazioni restano
   riconoscibili a colpo d'occhio.

     Digithera                      CV Studio
     -------------------------      ------------------------------
     #dgt-catalogo                  #cvs-catalogo   <- lo scope
     indigo/violetto #4338ca        navy/teal #1a2c6b + #2dbdba
     raggio 22px                    raggio 16px
     Source Sans 3 (Google Fonts)   Segoe UI, nessun font esterno
     6 aree: cremisi/verde/ambra/   6 aree tutte in famiglia fredda:
     smeraldo/viola/indaco          teal/navy/ciano/verde mare/ardesia/acciaio

   La palette navy/teal e' quella gia' scelta per il configuratore di CV Studio
   nella pagina statica precedente (variabili --navy / --teal): qui viene
   ripresa per non introdurre una terza identita'.

   Il CSS e' scritto contro il markup del widget categorytabs reso da
   configuratore.phtml + config_prodotti_block.phtml + fixed_prodotti_block.phtml.
   Senza quel markup non rende niente; senza questo CSS il markup esce nudo.

   Caricato dal Custom Layout Update XML della pagina CMS:
     <reference name="head">
       <action method="addCss"><stylesheet>css/configuratore_0001.css</stylesheet></action>
     </reference>
   [GC]
   ========================================================================== */

/* ============ BASE ============ */
#cvs-catalogo{
  --navy:#1a2c6b; --navy-dark:#0f1a45; --teal:#2dbdba; --teal-dark:#178a87; --teal-light:#3dd4d1;
  --blue:#1a2c6b; --blue-400:#6f86d6; --blue-dark:#0f1a45; --blue-soft:#e4e9f7;
  --ink:#2a3554; --muted:#6b7a9e; --line:#e3e8f2;
  --acc:#178a87; --acc-soft:#d6f5f3; --acc-dark:#0f1a45; --acc-400:#3dd4d1;
  --acc-mid:#0f6664; --acc-line:#bfe7e5; --dot:rgba(45,189,186,.34); --glow:rgba(45,189,186,.45);
  --heading:#1a2c6b; --acc-tint:#f4f6fb;
  /* --stripe e' il fondo delle righe pari. Volutamente NON e' ridefinito dalle .pnN
     come gli altri accenti: la zebra deve restare neutra in tutte le aree, altrimenti
     compete con var(--acc-soft), che e' il fondo della riga selezionata. [GC] */
  --stripe:#f6f8fc;
  --radius:16px; --shadow:0 10px 34px rgba(26,44,107,.14); --shadow-sm:0 2px 12px rgba(26,44,107,.08);
  font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink); line-height:1.55; background:#fff; -webkit-font-smoothing:antialiased;
}
#cvs-catalogo *{box-sizing:border-box;margin:0;padding:0}
#cvs-catalogo a{text-decoration:none;color:inherit}
#cvs-catalogo a,#cvs-catalogo a[class],#cvs-catalogo .btn,#cvs-catalogo .hm-cta,#cvs-catalogo .chip,#cvs-catalogo .more{box-shadow:none!important;text-shadow:none!important;outline:none!important}
#cvs-catalogo .wrap{max-width:1760px;margin:0 auto;padding:0 clamp(16px,2vw,40px)}
#cvs-catalogo section{padding:80px 0;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
#cvs-catalogo h1,#cvs-catalogo h2,#cvs-catalogo h3{color:var(--heading);letter-spacing:-.02em;line-height:1.12}
#cvs-catalogo .eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);background:var(--acc-soft);padding:6px 14px;border-radius:999px}
#cvs-catalogo .on-dark .eyebrow{background:rgba(255,255,255,.14);color:var(--acc-soft)}
#cvs-catalogo .center{text-align:center;max-width:760px;margin:0 auto 50px}
#cvs-catalogo .center h2{font-size:36px;font-weight:800;margin:14px 0 12px}
#cvs-catalogo .center p{color:var(--muted);font-size:17px}
#cvs-catalogo .soft{background:var(--acc-soft)}


/* ================= TEMA PER AREA (solo il pannello prodotti) =================
   La pagina resta Blu banqup: il colore dell'area si applica SOLO al pannello
   della tab attiva (.pane), cioe' intestazione colonne, titoli di gruppo, righe,
   pill degli scaglioni e barra totale. Tutto il resto (intestazione, come funziona,
   banda Canone 0, FAQ, CTA, bottoni) resta blu. */

/* intestazione di pagina (l'hero e' stato rimosso) */
#cvs-catalogo section:first-of-type{padding-top:64px}
#cvs-catalogo .center h1{font-size:clamp(32px,3vw,46px);font-weight:900;margin:16px 0 14px}
#cvs-catalogo .center .lead{color:var(--muted);font-size:18px}
#cvs-catalogo .center.small{max-width:680px;margin:0 auto 34px}
#cvs-catalogo .center.small h2{font-size:28px}
#cvs-catalogo .trustrow{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1180px;margin:0 auto 56px;padding:26px 30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--acc-soft)}
#cvs-catalogo .trustrow div{font-size:13.5px;color:var(--muted)}
#cvs-catalogo .trustrow b{display:block;font-size:20px;font-weight:800;color:var(--acc-dark);margin-bottom:2px}

/* ============ BOTTONI ============ */
#cvs-catalogo .btns{display:flex;gap:14px;flex-wrap:wrap}
#cvs-catalogo .btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;padding:13px 26px;border-radius:999px;border:1.5px solid transparent!important;position:relative;overflow:hidden;cursor:pointer;transition:.2s}
#cvs-catalogo .btn .bl{position:relative;z-index:2}
#cvs-catalogo .btn .cwipe{position:absolute;pointer-events:none;top:-100%;bottom:-100%;width:90px;left:-120px;opacity:0;clip-path:polygon(0 0,100% 50%,0 100%);transition:left .5s cubic-bezier(0,0,.2,1),opacity .25s ease}
#cvs-catalogo .btn:hover .cwipe,#cvs-catalogo .btn:focus .cwipe{left:calc(50% - 62px);opacity:1}
#cvs-catalogo .btn-primary .cwipe{background:linear-gradient(to right,transparent,var(--acc-dark))}
#cvs-catalogo .on-dark .btn-primary .cwipe{background:linear-gradient(to right,transparent,var(--acc-soft))}
#cvs-catalogo .btn-ghost .cwipe{background:linear-gradient(to right,transparent,var(--acc-soft))}
#cvs-catalogo .on-dark .btn-ghost .cwipe{background:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,.28))}
#cvs-catalogo .arr{display:inline-block;transition:transform .25s ease}
#cvs-catalogo .more{color:var(--acc);font-weight:700;font-size:14px}
#cvs-catalogo .more:hover .arr,#cvs-catalogo .hm-cta:hover .arr{transform:translateX(5px)}


/* ============ CONFIGURATORE (markup reale del widget categorytabs) ============
   Struttura su cui si appoggiano queste regole (NON modificabile: la usa js/cvs/js_0001.js):
     .dgt-cfg                        wrapper del widget
       ul.tabs.tabs-sogei.tabbar     le tab, li.tb + li.active
       .tab_container.panes
         .tab_content_sogei.pane.pnN un pannello per tab (show/hide via jQuery)
           .config-block             = il "board", contenuto del blocco CMS della tab
             p.head.left / p.head.center   intestazione colonne
             ul#stc                  la lista delle righe (id = stc|sdc|ptc|sdi|scm|pef)
               li.bckor              titolo di gruppo
               li.one / li.two       riga prodotto (contiene .prow dal template di riga)
               li.active_block       riga con quantita' inserita -> evidenziata
             .price_config           il totale (classe stc/sdc/... + price_config)
   ============================================================================= */

/* ---- palette per area: sta sul pannello, non sulla pagina ---- */
/* I sei colori d'area di CV Studio. Su Digithera sono caldi e molto distanti fra loro
   (cremisi, verde, ambra, smeraldo, viola, indaco); qui restano tutti nella famiglia
   fredda navy/teal del marchio, distinti per tinta ma non per temperatura. [GC]
     pn1 teal        pn2 navy        pn3 ciano
     pn4 verde mare  pn5 ardesia     pn6 acciaio */
#cvs-catalogo .pn1{--acc:#178a87;--acc-soft:#d6f5f3;--acc-dark:#07403f;--acc-400:#3dd4d1;--acc-mid:#0f6664;--acc-line:#bfe7e5;--heading:#07403f}
#cvs-catalogo .pn2{--acc:#1a2c6b;--acc-soft:#e4e9f7;--acc-dark:#0f1a45;--acc-400:#6f86d6;--acc-mid:#16245a;--acc-line:#c8d2ec;--heading:#0f1a45}
#cvs-catalogo .pn3{--acc:#0a6ea8;--acc-soft:#d9eefb;--acc-dark:#063a58;--acc-400:#4db4e8;--acc-mid:#085887;--acc-line:#c0e0f2;--heading:#063a58}
#cvs-catalogo .pn4{--acc:#0e8a5f;--acc-soft:#d7f4e7;--acc-dark:#043b28;--acc-400:#4ed4a0;--acc-mid:#0a6b4a;--acc-line:#c2e8d7;--heading:#043b28}
#cvs-catalogo .pn5{--acc:#5b4ba8;--acc-soft:#e8e4f8;--acc-dark:#241c52;--acc-400:#9a8de0;--acc-mid:#453a85;--acc-line:#d3cbee;--heading:#241c52}
#cvs-catalogo .pn6{--acc:#2f5d7c;--acc-soft:#dfeaf2;--acc-dark:#12293a;--acc-400:#7fb0cd;--acc-mid:#244a63;--acc-line:#c6dbe8;--heading:#12293a}

/* ---- tab come card ---- */
#cvs-catalogo .dgt-cfg{position:relative}
/* Le colonne si contano da sole. Prima erano sei fisse, che e' il numero di aree di
   Digithera: su CV Studio le tab sono quattro, quindi restavano due colonne vuote a
   destra e il gruppo sembrava spinto a sinistra. Con auto-fit le card occupano tutta la
   riga in parti uguali qualunque sia il loro numero, e justify-content:center tiene il
   gruppo centrato nel caso restasse spazio. [GC] */
#cvs-catalogo ul.tabbar{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));justify-content:center;gap:12px;margin:0 0 26px!important;padding:0!important;list-style:none!important;background:none!important;border:0!important}
#cvs-catalogo ul.tabbar li.tb{position:relative;display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:6px;width:auto!important;height:auto!important;float:none!important;background:#fff!important;border:1.5px solid var(--line)!important;border-radius:18px!important;padding:20px 18px 16px!important;margin:0!important;cursor:pointer;transition:.2s;min-height:112px;text-align:left!important;font-size:inherit!important;color:inherit!important;box-shadow:none!important}
#cvs-catalogo ul.tabbar li.tb .tbi{font-style:normal;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:14px;font-weight:900;background:var(--tb-soft);color:var(--tb-acc)}
#cvs-catalogo ul.tabbar li.tb .tbn{font-size:15px;font-weight:800;color:var(--heading);line-height:1.2;margin-top:auto}
#cvs-catalogo ul.tabbar li.tb .tbi-info{position:absolute!important;top:16px;right:16px;left:auto!important;font-size:14px!important;color:var(--tb-acc)!important;opacity:.85;cursor:help}
#cvs-catalogo ul.tabbar li.tb:hover{border-color:var(--tb-acc)!important}
#cvs-catalogo ul.tabbar li.tb1{--tb-acc:#178a87;--tb-soft:#d6f5f3}
#cvs-catalogo ul.tabbar li.tb2{--tb-acc:#1a2c6b;--tb-soft:#e4e9f7}
#cvs-catalogo ul.tabbar li.tb3{--tb-acc:#0a6ea8;--tb-soft:#d9eefb}
#cvs-catalogo ul.tabbar li.tb4{--tb-acc:#0e8a5f;--tb-soft:#d7f4e7}
#cvs-catalogo ul.tabbar li.tb5{--tb-acc:#5b4ba8;--tb-soft:#e8e4f8}
#cvs-catalogo ul.tabbar li.tb6{--tb-acc:#2f5d7c;--tb-soft:#dfeaf2}
#cvs-catalogo ul.tabbar li.tb.active{background:var(--tb-soft)!important;border-color:var(--tb-acc)!important;box-shadow:0 10px 26px rgba(30,27,75,.10)!important}
#cvs-catalogo ul.tabbar li.tb.active .tbi{background:var(--tb-acc);color:#fff}
#cvs-catalogo .dgt-cfg .bg_container{display:none}

/* ---- il pannello: il blocco CMS diventa il "board" ---- */
#cvs-catalogo .pane .config-block{display:block!important;width:auto!important;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
#cvs-catalogo .pane .config-block>p.head{margin:0!important;padding:17px 28px!important;background:var(--acc-soft);font-size:12px!important;font-weight:800!important;letter-spacing:.07em;text-transform:uppercase;color:var(--acc)!important;border-bottom:1px solid var(--line)}
#cvs-catalogo .pane .config-block>p.head.left{float:left!important;width:52%!important;text-align:left!important}
#cvs-catalogo .pane .config-block>p.head.center{float:left!important;width:48%!important;text-align:center!important}
#cvs-catalogo .pane .config-block>ul{clear:both;list-style:none!important;margin:0!important;padding:0!important}
#cvs-catalogo .pane .config-block>ul>li{list-style:none!important;margin:0!important;padding:0!important;background:none!important;border:0!important;border-top:1px solid #f1f3f9!important;float:none!important;width:auto!important}
#cvs-catalogo .pane .config-block>ul>li:first-child{border-top:0!important}

/* ---- righe a zebra ----
   I blocchi CMS alternano gia' le classi one/two sui <li>, ed e' esattamente la
   coppia che serve: si colora la seconda e si lascia bianca la prima. Non si usa
   :nth-child perche' fra le righe prodotto ci sono i titoli di gruppo (li.bckor),
   che entrerebbero nel conteggio e sfaserebbero la striatura a ogni gruppo.
   La tinta va sul <li>, non sulla .prow: la .prow resta trasparente e ci si dipinge
   sopra da sola quando la riga e' sorvolata, selezionata o disabilitata, cosi' quei
   tre stati continuano a vincere senza dover alzare la specificita' di nessuno.
   L'!important serve solo a battere il background:none!important che questo stesso
   foglio mette poche righe sopra su tutti i <li> per spegnere i colori del tema
   vecchio (dgt_configuratore_0001.css:814/819, azzurrino e verdino). [GC] */
#cvs-catalogo .pane .config-block>ul>li.two{background:var(--stripe)!important}

/* titoli di gruppo (li.bckor) */
#cvs-catalogo .pane .config-block>ul>li.bckor{padding:18px 28px 12px!important;background:#fff!important}
#cvs-catalogo .pane .config-block>ul>li.bckor span,#cvs-catalogo .pane .config-block>ul>li.bckor>*{font-size:16.5px!important;font-weight:800!important;color:var(--acc-dark)!important;text-align:left!important;background:none!important;display:block}
#cvs-catalogo .pane .config-block>ul>li.new.bckor span:before{content:"Nuovo";display:inline-block;vertical-align:middle;margin-right:10px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--acc);padding:4px 10px;border-radius:999px}

/* ---- riga prodotto ---- */
#cvs-catalogo .prow{display:grid;grid-template-columns:1.65fr 175px 225px 185px;gap:16px;align-items:center;padding:16px 28px;margin:0;transition:background .18s ease}
#cvs-catalogo .prow:hover{background:#fbfcff}
#cvs-catalogo .pane .config-block>ul>li.active_block>.prow{background:var(--acc-soft);box-shadow:inset 3px 0 0 var(--acc)}
#cvs-catalogo .pane .config-block>ul>li.active_block .pname{color:var(--acc-dark)}
#cvs-catalogo .pane .config-block>ul>li.active_block .qty input[type=number]{border-color:var(--acc);background:#fff}
#cvs-catalogo .pane .config-block>ul>li.active_block .price{color:var(--acc)!important}
#cvs-catalogo .prow.cartLineDisabled{background:#fafbfe!important;box-shadow:none!important;opacity:.6}

#cvs-catalogo .prow .pinfo{display:flex;gap:16px;align-items:flex-start;min-width:0}
/* Logo prodotto: e' lo sprite verticale a 2 stati definito in dgt_configuratore_0001.css
   (background-size:auto 200%; center top = spento, center bottom = acceso su li.active_block).
   Qui si cambiano SOLO le misure: background-position e background-size restano quelli
   originali, altrimenti si perde l'accensione dell'icona quando la riga viene selezionata. */
#cvs-catalogo .prow .plogo{flex:none;width:66px;height:54px;border-radius:13px;background:var(--acc-soft);display:grid;place-items:center;overflow:hidden;padding:4px}
#cvs-catalogo .prow .plogo .image{display:block;width:100%;height:44px;margin:0;line-height:0;text-indent:-9999px;overflow:hidden}
#cvs-catalogo .prow .pname{display:block;font-size:15.5px;font-weight:800;color:var(--heading);margin-bottom:3px}
#cvs-catalogo .prow .pdesc{font-size:13.5px;color:var(--muted);margin:0 0 5px}
#cvs-catalogo .prow .more{color:var(--acc);font-weight:700;font-size:14px}

#cvs-catalogo .prow .qty{display:flex;align-items:center;gap:8px;justify-content:center;position:relative}
#cvs-catalogo .prow .qty .qlab{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;font-weight:400!important;color:inherit!important}
#cvs-catalogo .prow .qty .qlbl{font-size:12px;font-weight:700;color:var(--muted)}
#cvs-catalogo .prow .qty input[type=number]{width:104px;height:44px;border:1.5px solid var(--line)!important;border-radius:12px!important;background:#fff!important;text-align:center;font-family:inherit;font-size:16px;font-weight:700;color:var(--heading);box-shadow:none!important;padding:0!important;margin:0!important}
#cvs-catalogo .prow .qty input[type=number]:focus{outline:none;border-color:var(--acc)!important;box-shadow:0 0 0 3px var(--acc-soft)!important}
#cvs-catalogo .prow .pinfo-i{font-size:15px!important;color:var(--acc)!important;cursor:help}

/* switch per i servizi On/Off (checkbox reale nascosta dentro il label) */
#cvs-catalogo .prow .qty.sw .swlab{display:inline-flex!important;align-items:center;gap:10px;height:44px;padding:0 16px 0 10px;border:1.5px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;font-size:13.5px;font-weight:700;color:var(--muted);transition:.18s;margin:0!important;width:auto!important;text-align:left!important}
#cvs-catalogo .prow .qty.sw .swlab input[type=checkbox]{position:absolute;opacity:0;width:0!important;height:0!important;margin:0!important;pointer-events:none}
#cvs-catalogo .prow .qty.sw .knob{position:relative;flex:none;width:38px;height:22px;border-radius:999px;background:#e2e6f1;transition:background .18s}
#cvs-catalogo .prow .qty.sw .knob:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(30,27,75,.3);transition:left .18s}
#cvs-catalogo .prow .qty.sw .swlab:hover{border-color:var(--acc)}
#cvs-catalogo .prow .qty.sw input[type=checkbox]:checked~.knob{background:var(--acc)}
#cvs-catalogo .prow .qty.sw input[type=checkbox]:checked~.knob:after{left:19px}
#cvs-catalogo .prow .qty.sw input[type=checkbox]:checked~.swtxt{color:var(--acc)}

/* prezzo unitario: #unpr_<sku> resta una sola stringa, la riscrive il JS con gli scaglioni */
#cvs-catalogo .prow .uprice{text-align:center}
#cvs-catalogo .prow .uprice .price{display:block;padding:0!important;font-size:18px;font-weight:900;color:var(--heading)!important;line-height:1.15}

/* opzioni: Digilink + set-up */
#cvs-catalogo .prow .pextra{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
#cvs-catalogo .prow .opt{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--acc);background:var(--acc-soft);border-radius:999px;padding:6px 12px}
#cvs-catalogo .prow .opt.opt-off{display:none}
#cvs-catalogo .prow .opt input.dglk,#cvs-catalogo .prow .opt input.dglk_ob{position:absolute;opacity:0;width:0!important;height:0!important;margin:0!important}
#cvs-catalogo .prow .opt label{display:inline-flex!important;align-items:center;margin:0!important;cursor:pointer}
#cvs-catalogo .prow .opt label i{font-style:normal;width:15px;height:15px;border-radius:4px;background:#fff;border:1.5px solid var(--acc);display:inline-block;position:relative}
#cvs-catalogo .prow .opt input:checked+label i{background:var(--acc)}
#cvs-catalogo .prow .opt input:checked+label i:after{content:"";position:absolute;left:3.5px;top:.5px;width:4px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(40deg)}
#cvs-catalogo .prow .opt input:disabled+label i{opacity:.55}
#cvs-catalogo .prow .opt a{color:var(--acc)!important;font-weight:600}
#cvs-catalogo .prow .note,#cvs-catalogo .prow .stptxt{font-size:12px;color:var(--muted)}
#cvs-catalogo .prow .stptxt{font-weight:800;color:var(--heading)}

/* assistito */
#cvs-catalogo .assegnaAssistito{margin-top:10px;padding:12px 14px;border-radius:14px;background:#fff8e8;border:1px solid #f3e2bc}
#cvs-catalogo .warningAssistito{font-size:12.5px;color:#6b5312;margin-bottom:8px}
#cvs-catalogo .cartWarningAskVat{font-size:12.5px;color:#a00936;padding:0 28px 14px}

/* ---- barra totale (dentro il blocco CMS della tab) ---- */
/* La barra del totale. La classe .totbar non sta nel blocco CMS: la mette
   configuratore.phtml sull'HTML gia' reso (vedi il commento li'). Dentro ci sono tre
   fratelli piatti, quindi vanno collocati a mano nella griglia:
     p.head.left            l'etichetta + span.price_config con la cifra
     p.blwprice.left        "di cui N € in attivazioni", scritta dal JS (js/cvs/js_0001.js:893)
     div.cheked_block       i due bottoni, che qui sono IMMAGINI (gotocart/emptycart)
   Su Digithera i bottoni sono <a class="btn"> veri e le immagini si nascondono; qui no,
   le immagini sono l'unico bottone che c'e' e vanno tenute. [GC] */
#cvs-catalogo .pane .totbar{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;
  gap:4px 24px;align-items:center;padding:26px 28px;background:var(--acc-dark);color:#fff;
  border-radius:0 0 var(--radius) var(--radius);margin-top:14px}
#cvs-catalogo .pane .totbar>p.head{grid-column:1;grid-row:1;margin:0!important;padding:0!important;
  background:none!important;border:0!important;float:none!important;width:auto!important;
  text-align:left!important;font-size:12.5px!important;font-weight:800!important;
  letter-spacing:.08em!important;text-transform:uppercase;color:var(--acc-400)!important}
#cvs-catalogo .pane .totbar>p.head br{display:none}
#cvs-catalogo .pane .totbar .price_config{display:block;font-size:clamp(34px,3vw,46px);font-weight:900;
  color:#fff;line-height:1.05;margin-top:4px;letter-spacing:-.01em;text-transform:none}
#cvs-catalogo .pane .totbar>p.blwprice{grid-column:1;grid-row:2;margin:0!important;padding:0!important;
  float:none!important;width:auto!important;font-size:12.5px;color:rgba(255,255,255,.72)}
#cvs-catalogo .pane .totbar .cheked_block{grid-column:2;grid-row:1/span 2;justify-self:end;text-align:right}
#cvs-catalogo .pane .totbar .cheked_block br{display:none}
#cvs-catalogo .pane .totbar .cheked_block a{display:inline-block;margin:0 0 0 10px;vertical-align:middle}
#cvs-catalogo .pane .totbar .cheked_block img.bottone_acquisto{display:inline-block!important;
  height:44px;width:auto!important;max-width:100%;border-radius:10px}

/* Il messaggio "RISPARMIA SCEGLIENDO LA STAMPANTE VIRTUALE INDIGITA!" sta scritto nel
   blocco CMS di stc, dentro div#warnig_compreso.waring_block.relative_info. Nel design
   precedente non si vede MAI: il tema lo tiene a display:none
   (dgt_configuratore_0001.css: "#configuratore .relative_info{display:none}") e nel JS
   non c'e' nessuno che lo riaccenda - js/cvs/js_0001.js:657 gli riscrive solo il testo e alza
   una variabile "activi" che poi nessuno legge. Compariva qui soltanto perche' quella
   regola e' agganciata a #configuratore, che e' il wrapper della pagina vecchia, mentre
   questa usa #cvs-catalogo. Si rimette la stessa condizione iniziale: nascosto. [GC] */
#cvs-catalogo .waring_block.relative_info{display:none!important}
#cvs-catalogo .warn{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:16px 20px;border-radius:16px;background:#fff8e8;border:1px solid #f3e2bc}
#cvs-catalogo .warn i{font-style:normal;flex:none;width:22px;height:22px;border-radius:50%;background:#a8720d;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900}
#cvs-catalogo .warn p{font-size:13.5px;color:#6b5312;margin:0}

/* pill di stato: restano verdi/gialle in ogni tema */
#cvs-catalogo .pill{flex:none;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px}
#cvs-catalogo .pill.ok{background:#dff7ef;color:#0a8f6f}
#cvs-catalogo .pill.wait{background:#fff1d6;color:#a9700a}

/* elementi legacy da nascondere */
#cvs-catalogo .pane .config-block .point,#cvs-catalogo .pane .config-block .inputblock,
#cvs-catalogo .pane .config-block .digilog,#cvs-catalogo .pane .config-block .prodotti_info{display:none!important}


/* ============ RESPONSIVE ============ */
@media(max-width:1200px){
  #cvs-catalogo .tabbar{grid-template-columns:repeat(3,1fr)}
  #cvs-catalogo .bhead{display:none}
  #cvs-catalogo .prow{grid-template-columns:1fr 170px 150px;row-gap:12px}
  #cvs-catalogo .pextra{grid-column:1 / -1}
}
@media(max-width:900px){
  #cvs-catalogo .trustrow{grid-template-columns:1fr 1fr}
  #cvs-catalogo .hero .wrap{grid-template-columns:1fr}
  #cvs-catalogo .grid3,#cvs-catalogo .grid4{grid-template-columns:1fr 1fr}
  #cvs-catalogo section{padding:56px 0}
  #cvs-catalogo .hero-bg i{opacity:.3}
  #cvs-catalogo .pane .totbar{grid-template-columns:1fr;padding:20px 18px}
  #cvs-catalogo .pane .totbar .cheked_block{grid-column:1;grid-row:auto;justify-self:start;
    text-align:left;margin-top:14px}
  #cvs-catalogo .pane .totbar .cheked_block a{margin:0 10px 0 0}
}
@media(max-width:560px){
  #cvs-catalogo .trustrow{grid-template-columns:1fr}
  #cvs-catalogo .tabbar{grid-template-columns:1fr 1fr}
  #cvs-catalogo .grid3,#cvs-catalogo .grid4{grid-template-columns:1fr}
  #cvs-catalogo .prow{grid-template-columns:1fr;text-align:left}
  #cvs-catalogo .qty,#cvs-catalogo .uprice{justify-content:flex-start;text-align:left}
}

/* ============ ANTI-TEMA (id ripetuto) ============ */
#cvs-catalogo#cvs-catalogo a,#cvs-catalogo#cvs-catalogo .btn,#cvs-catalogo#cvs-catalogo .hm-cta,#cvs-catalogo#cvs-catalogo .chip,#cvs-catalogo#cvs-catalogo .more,#cvs-catalogo#cvs-catalogo input{box-shadow:none!important;text-shadow:none!important;outline:none!important}
#cvs-catalogo#cvs-catalogo a,#cvs-catalogo#cvs-catalogo .btn,#cvs-catalogo#cvs-catalogo .hm-cta{text-decoration:none!important}
#cvs-catalogo#cvs-catalogo .more:hover{text-decoration:underline!important}
#cvs-catalogo#cvs-catalogo a::before,#cvs-catalogo#cvs-catalogo a::after,#cvs-catalogo#cvs-catalogo .btn::before,#cvs-catalogo#cvs-catalogo .btn::after,#cvs-catalogo#cvs-catalogo .hm-cta::before,#cvs-catalogo#cvs-catalogo .hm-cta::after,#cvs-catalogo#cvs-catalogo .tb::before,#cvs-catalogo#cvs-catalogo .tb::after{display:none!important;content:none!important;box-shadow:none!important;background:none!important}
#cvs-catalogo#cvs-catalogo .btn{position:relative;overflow:hidden;border:1.5px solid transparent!important;background-origin:border-box!important;background-repeat:no-repeat!important}
#cvs-catalogo#cvs-catalogo .btn-primary{background:linear-gradient(135deg,var(--acc-mid),var(--acc-dark)) no-repeat border-box!important;color:#fff!important}
#cvs-catalogo#cvs-catalogo .btn-primary:hover{background:linear-gradient(135deg,var(--acc),var(--acc-mid)) no-repeat border-box!important}
#cvs-catalogo#cvs-catalogo .btn-ghost{background:#fff!important;border-color:var(--acc-line)!important;color:var(--acc)!important}
#cvs-catalogo#cvs-catalogo .btn-ghost:hover{border-color:var(--acc)!important;background:var(--acc-soft)!important;color:var(--acc)!important}
#cvs-catalogo#cvs-catalogo .on-dark .btn-primary,#cvs-catalogo#cvs-catalogo .totbar .btn-primary{background:linear-gradient(90deg,var(--acc-400),var(--acc-soft)) no-repeat border-box!important;color:var(--acc-dark)!important}
#cvs-catalogo#cvs-catalogo .on-dark .btn-ghost,#cvs-catalogo#cvs-catalogo .totbar .btn-ghost{background:transparent!important;border-color:rgba(255,255,255,.45)!important;color:#fff!important}
#cvs-catalogo#cvs-catalogo .on-dark .btn-ghost:hover,#cvs-catalogo#cvs-catalogo .totbar .btn-ghost:hover{border-color:#fff!important;background:rgba(255,255,255,.12)!important;color:#fff!important}
#cvs-catalogo#cvs-catalogo .totbar .btn-primary .cwipe{background:linear-gradient(to right,transparent,var(--acc-soft))}
#cvs-catalogo#cvs-catalogo .hm-cta{background:var(--acc)!important;color:#fff!important}
#cvs-catalogo#cvs-catalogo .hm-cta:hover{background:var(--acc-mid)!important}
#cvs-catalogo#cvs-catalogo .card{box-shadow:none;border:1px solid var(--line)}
#cvs-catalogo#cvs-catalogo .card:hover{transform:none;box-shadow:none;border-color:var(--line)}

/* ================= BARRA STICKY DEL CARRELLO =================
   Markup esistente (non modificabile: lo pilota js/cvs/js_0001.js):
     div.fixed-items-block.config-block      contenitore (lo mostra cartOnReady)
       ul.fixed-items                        la barra (show/hide quando si aggiunge/azzera)
         li.prd#<product_id>                 una voce per prodotto (nascosta se q.ta = 0)
           span.image.<cat_ids>  span.price
         li.subtotale-ordine
           div.cart-title > span.cart-totals   il totale
           a.button-checkout                   (il JS ne riscrive il testo)
           span.blw-subt
   Forma: pillola scura come la barra del mega-menu, centrata in basso.
   Spariscono da sole: se il carrello si svuota il JS nasconde ul.fixed-items.
   ============================================================ */
#cvs-catalogo .fixed-items-block.config-block,
#configuratore .fixed-items-block.config-block{
  position:fixed;left:0;right:0;bottom:18px;z-index:60;
  padding:0 16px;background:none;border:0;pointer-events:none}
#cvs-catalogo ul.fixed-items{
  pointer-events:auto;max-width:1180px;margin:0 auto;
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  min-height:72px;padding:12px 14px;list-style:none;
  background:var(--navy-dark);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.10);border-radius:18px;
  box-shadow:0 18px 50px rgba(8,6,35,.45);
  animation:dgtBarIn .3s cubic-bezier(0,0,.2,1)}
@keyframes dgtBarIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* chip di prodotto */
#cvs-catalogo ul.fixed-items li.prd{
  display:flex;align-items:center;gap:9px;margin:0;padding:7px 13px 7px 9px;
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:999px;
  list-style:none;float:none;width:auto}
/* chip della barra: stesso sprite, riquadro piccolo. Nessun override di
   background-position/size: la chip prende active_block dal JS, quindi mostra l'icona accesa. */
#cvs-catalogo ul.fixed-items li.prd .image{
  display:block;width:34px;height:26px;flex:none;margin:0;line-height:0;border-radius:7px;
  background-color:#fff;text-indent:-9999px;overflow:hidden}
#cvs-catalogo ul.fixed-items li.prd .price{
  font-size:13.5px;font-weight:800;color:#fff;padding:0!important;white-space:nowrap}

/* totale + azioni, spinti a destra */
#cvs-catalogo ul.fixed-items li.subtotale-ordine{
  display:flex;align-items:center;gap:14px;margin:0 0 0 auto;padding:0 4px;
  list-style:none;float:none;width:auto}
#cvs-catalogo ul.fixed-items .cart-title{display:flex;flex-direction:column;line-height:1.1;text-align:right}
#cvs-catalogo ul.fixed-items .cart-title:before{
  content:"Totale del lotto";font-size:10.5px;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;color:var(--teal-light);margin-bottom:3px}
#cvs-catalogo ul.fixed-items .cart-totals{font-size:26px;font-weight:900;color:#fff;white-space:nowrap}
#cvs-catalogo ul.fixed-items .blw-subt,#cvs-catalogo ul.fixed-items .blwprice{display:none}

/* bottoni della barra: pillole con icona (l'icona e' uno sfondo SVG, cosi'
   sopravvive al fatto che il JS riscriva il testo di .button-checkout) */
#cvs-catalogo ul.fixed-items .btn-bar,
#cvs-catalogo ul.fixed-items a.button-checkout{
  display:inline-flex;align-items:center;justify-content:center;
  height:46px;padding:0 22px 0 46px;border-radius:999px;
  font-size:14.5px;font-weight:700;white-space:nowrap;cursor:pointer;
  border:1.5px solid transparent!important;box-shadow:none!important;text-decoration:none!important;
  background-repeat:no-repeat!important;background-position:18px center!important;background-size:18px 18px!important;
  transition:filter .2s,background-color .2s,border-color .2s}
#cvs-catalogo ul.fixed-items a.button-checkout,
#cvs-catalogo ul.fixed-items .btn-bar.primary{
  color:var(--navy-dark)!important;
  background-color:var(--teal)!important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f1a45' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='20' r='1.6'/><circle cx='18' cy='20' r='1.6'/><path d='M2 3h3l2.6 11.2a2 2 0 0 0 2 1.6h7.6a2 2 0 0 0 2-1.55L22 7H6'/></svg>")!important}
#cvs-catalogo ul.fixed-items a.button-checkout:hover,
#cvs-catalogo ul.fixed-items .btn-bar.primary:hover{filter:brightness(1.08)}
#cvs-catalogo ul.fixed-items .btn-bar.ghost{
  color:#fff!important;background-color:transparent!important;
  border-color:rgba(255,255,255,.35)!important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16M9 7V4h6v3M6 7l1 13h10l1-13M10 11v6M14 11v6'/></svg>")!important}
#cvs-catalogo ul.fixed-items .btn-bar.ghost:hover{background-color:rgba(255,255,255,.12)!important;border-color:#fff!important}
/* il tema inietta pseudo-elementi sui link: qui servono spenti ma l'icona e' un background, quindi resta */
#cvs-catalogo#cvs-catalogo ul.fixed-items a::before,#cvs-catalogo#cvs-catalogo ul.fixed-items a::after{display:none!important;content:none!important}

/* icone dentro i bottoni della barra totale di ogni tab */
#cvs-catalogo .totbar .btn .ico-svg{width:17px;height:17px;flex:none;margin-right:9px}
#cvs-catalogo .totbar .btn .bl{display:inline-flex;align-items:center}

/* spazio in fondo alla pagina per non finire sotto la barra */
#cvs-catalogo .cta{padding-bottom:150px}

@media(max-width:900px){
  #cvs-catalogo ul.fixed-items{gap:8px;padding:10px}
  #cvs-catalogo ul.fixed-items li.prd .price{font-size:12.5px}
  #cvs-catalogo ul.fixed-items .cart-totals{font-size:21px}
  #cvs-catalogo ul.fixed-items li.subtotale-ordine{margin-left:auto;gap:8px}
}
@media(max-width:560px){
  #cvs-catalogo .fixed-items-block.config-block{bottom:0;padding:0}
  #cvs-catalogo ul.fixed-items{border-radius:18px 18px 0 0;flex-wrap:nowrap;overflow-x:auto}
  #cvs-catalogo ul.fixed-items .cart-title:before{display:none}
  #cvs-catalogo ul.fixed-items .btn-bar,#cvs-catalogo ul.fixed-items a.button-checkout{padding:0 14px 0 40px;font-size:0}
  #cvs-catalogo ul.fixed-items a.button-checkout{width:46px;padding:0;background-position:center!important}
}

/* ---- costo di attivazione una tantum + Digilink automatico ---- */
#cvs-catalogo .prow .setup-hint{font-size:11.5px;line-height:1.35;color:var(--muted)}
#cvs-catalogo .prow .setup-hint b{color:var(--heading);font-weight:800;white-space:nowrap}
/* variante per il visitatore anonimo: il Set-Up c'e' ma la cifra non si mostra, perche'
   dipende dal gruppo del cliente. Si distingue dall'avviso normale con il corsivo e un
   filetto nel colore dell'area, cosi' si legge come un invito e non come un prezzo. [GC] */
#cvs-catalogo .prow .setup-hint.setup-login{font-style:italic;color:var(--acc-mid);
  border-left:2px solid var(--acc-line);padding-left:8px}
#cvs-catalogo .prow .stptxt{display:inline-block;font-size:11.5px;font-weight:800;color:var(--acc);background:var(--acc-soft);border-radius:999px;padding:3px 9px}
#cvs-catalogo .prow .stptxt:empty{display:none}
/* quando il JS ha scritto "+N € (*)" l'avviso statico e' ridondante (regola isolata: usa :has()) */
#cvs-catalogo .prow .pextra:has(.stptxt:not(:empty)) .setup-hint{display:none}
/* Digilink obbligatorio: incluso d'ufficio, checkbox disattivata */
#cvs-catalogo .prow .opt.auto{background:var(--acc)}
#cvs-catalogo .prow .opt.auto a{color:#fff!important}
#cvs-catalogo .prow .opt.auto label i{background:#fff;border-color:#fff}
#cvs-catalogo .prow .opt.auto input:checked+label i{background:#fff}
#cvs-catalogo .prow .opt.auto input:checked+label i:after{border-color:var(--acc)}
#cvs-catalogo .prow .opt.auto input:disabled+label i{opacity:1;cursor:default}

/* ---- FIX 08/09/2026: regole vecchie che sopravvivono sulla riga banqup ----
   La pagina tiene ancora <div id="configuratore">, quindi due regole di
   dgt_configuratore_0001.css continuano ad applicarsi e il CSS qui sopra non le
   sovrascrive (non dichiara ne' height ne' text-align sugli elementi colpiti). */
/* riga 360: #configuratore .config-block ul li{height:70px} -> la riga banqup e' piu' alta e si accavalla */
#cvs-catalogo .pane .config-block>ul>li{height:auto!important}
/* riga 371: #configuratore .config-block ul li span{text-align:center} -> centra le note della colonna opzioni */
#cvs-catalogo .prow .pextra,#cvs-catalogo .prow .pextra span{text-align:left}
/* cintura: se class="row" tornasse sulla riga, i suoi pseudo-elementi non devono diventare
   grid item (bootstrap.css: .row:before,.row:after{content:" ";display:table}) */
#cvs-catalogo .prow:before,#cvs-catalogo .prow:after{content:none;display:none}
#cvs-catalogo .prow{margin-left:0!important;margin-right:0!important}

/* ---- FIX 08/09/2026 (2): #slider_configuratore ul li p ----
   dgt_configuratore_0001.css:49 dichiara, per i <p> dentro i <li> del vecchio slider,
   line-height:62px + font-size:24px + font-family:'montserratbold' + text-align:center.
   Il contenitore del widget ha ancora id="slider_configuratore" (viene dal parametro
   title= del widget), quindi la regola colpisce tutte le p.pdesc delle righe: .pdesc
   sovrascrive font-size/color/margin ma non line-height, font-family e text-align. */
#cvs-catalogo .prow p{font-family:inherit;line-height:1.5;text-align:left}

/* ---- FIX 08/09/2026 (3): colonna quantita' ----
   (a) la (i) informativa c'e' solo sui prodotti con popup_msg (32 righe su 38) e
   stava nel flusso del flex centrato, quindi il campo delle righe senza (i) non si
   allineava a quello delle altre. Il template ora emette al suo posto uno
   spaziatore: qui le due cose hanno la stessa larghezza fissa. */
#cvs-catalogo .prow .qty .pinfo-i,
#cvs-catalogo .prow .qty .pinfo-slot{flex:none;width:16px;text-align:center}
/* (b) dgt_configuratore_0001.css:720 - .config-block label{background-color:#e8e8e8;
   color:#bfbfbf;padding:0 10px;line-height:32px} - faceva della label un riquadro
   grigio con "q.ta" appiccicato al bordo sinistro: .qlab sovrascriveva solo color e
   margin, non background, padding e line-height. */
#cvs-catalogo .prow .qty .qlab{background:none!important;padding:0!important;line-height:1.2}
#cvs-catalogo .prow .qty .qlbl{flex:none;line-height:1.2}
#cvs-catalogo .prow .qty.sw .swlab{line-height:1.2}

/* ---- FIX 08/09/2026 (4): barra sticky del carrello ----
   Il CSS della barra piu' sopra usa selettori meno specifici della catena
   #configuratore .fixed-items-block.config-block ... (dgt_configuratore_0001.css:1320-1330)
   e quindi perdeva su larghezza, float, position, colori e font-size. Stesse
   intenzioni, id raddoppiato, piu' i reset di cio' che il tema vecchio impone. */
/* contenitore: il vecchio metteva opacity .9, fondo grigio, bottom 1%, padding 10px */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block{left:0;right:0;bottom:18px;width:auto;margin:0;padding:0 16px;
  background:none;opacity:1;border-radius:0;z-index:60;pointer-events:none}
/* la barra: il vecchio la inchiodava a width:1140px (pagina larga fino a 1760px) */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items{width:auto;max-width:1180px;margin:0 auto!important}
/* chip prodotto: il vecchio le faceva float:left, 85px fisse, fondo bianco */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd{float:none;width:auto;height:auto;
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.price{width:auto;margin-top:0;padding:0;color:#fff}
/* totale e carrello a destra: il vecchio li floattava a width:5% con
   margin-right:220px!important, e mandava .cart-title e il bottone in position:fixed */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine{float:none!important;width:auto!important;
  margin:0 0 0 auto!important;padding:0 4px;
  color:inherit;font-size:inherit;text-transform:none;line-height:normal;text-align:right}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine .cart-title{position:static;float:none;padding:0}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine span.cart-totals{float:none;width:auto;margin-top:0;padding:0;
  color:#fff;font-size:26px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine a.button-checkout{position:static;float:none;width:auto;
  height:46px;opacity:1;font-size:14.5px}

/* ---- FIX 08/09/2026 (5): barra sticky, pannello prodotti e leggibilita' ----
   La barra scura resta disegnata su ul.fixed-items, perche' e' l'elemento che
   js/cvs/js_0001.js:242 nasconde quando il carrello si svuota. Dentro:
     li.prdwrap > ul.prdlist   il contenitore delle sole chip, inset rispetto alla barra
     li.subtotale-ordine       totale e carrello, fuori dal pannello, a destra
   Il wrapper lo inietta configuratore-banqup.phtml: nel blocco CMS non c'e'. */
/* la barra */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items{position:relative;flex-wrap:nowrap;gap:12px;padding:10px}
/* il pannello delle chip: cresce fino a riempire la barra meno il totale.
   width/overflow/margin servono a scavalcare #configuratore ... ul{width:1140px;
   overflow:hidden;margin:0 auto!important} (dgt_configuratore_0001.css:1321). */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap{flex:1 1 auto;min-width:0;display:flex;align-items:center;
  float:none;width:auto;height:auto;margin:0;padding:0;background:none;border:0}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap ul.prdlist{flex:1 1 auto;min-width:0;width:auto;margin:0!important;
  display:flex;align-items:center;gap:10px;padding:8px 10px;list-style:none;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);
  border-radius:14px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap ul.prdlist::-webkit-scrollbar{height:6px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap ul.prdlist::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:99px}
/* chip: piu' grandi e leggibili, con il nome del prodotto */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd{flex:none;float:none;width:auto;height:auto;margin:0;
  display:flex;align-items:center;gap:11px;padding:8px 16px 8px 10px;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);
  border-radius:999px}
/* il riquadro dell'icona: niente override di background-position/size, sono
   !important nel tema vecchio e servono allo sprite a 2 stati (.active_block) */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.image{display:block;flex:none;width:42px;height:32px;margin:0;
  padding:0;line-height:0;border-radius:9px;background-color:#fff;
  text-indent:-9999px;overflow:hidden}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.pnm{flex:none;width:auto;max-width:190px;margin:0;padding:0;
  font-size:13px;font-weight:700;line-height:1.2;color:rgba(255,255,255,.92);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.price{flex:none;width:auto;margin:0;padding:0;
  font-size:15.5px;font-weight:900;line-height:1.2;color:#fff;white-space:nowrap}
/* totale e carrello: via il fondo bianco che arriva da
   dgt_configuratore_0001.css:1322 - ul li{background:#FFF} - che vale per OGNI li,
   non solo per le chip. Separati dal pannello da un filetto. */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine{flex:none;background:none;border:0;
  border-left:1px solid rgba(255,255,255,.16);
  margin:0 0 0 14px!important;padding:2px 6px 2px 18px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine .cart-title{background:none}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine span.cart-totals{background:none}

/* ---- FIX 08/09/2026 (6): chip leggibili ----
   I <li> della barra hanno classe "one prd" / "two prd", e
   dgt_configuratore_0001.css:813-822 dice
     .config-block ul li.one{background-color:#ebf4f9!important}
     .config-block ul li.two{background-color:#e8f6ec!important}
   Con !important non basta la specificita': le chip restavano azzurrino/verdino
   quasi bianco e il testo bianco sopra era illeggibile. Serve !important anche qui.
   Il nome del prodotto e' span.price::before da data-nm: NON puo' essere un nodo
   di testo, perche' js/cvs/js_0001.js:939 somma parseFloat(children().text().slice(0,-2))
   e un secondo testo nella chip manda il totale a NaN. */
/* chip: fondo scuro traslucido, piu' grande */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd{background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;
  height:auto!important;padding:9px 18px 9px 11px;gap:12px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd:hover{background:rgba(255,255,255,.18)!important}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd.active_block{background:rgba(129,141,248,.26)!important;
  border-color:rgba(129,141,248,.55)!important}
/* riquadro icona un po' piu' grande (background-position/size restano quelli del
   tema vecchio: sono !important e servono allo sprite a 2 stati) */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.image{width:44px;height:34px;border-radius:10px}
/* prezzo: due righe, nome sopra (contenuto generato) e cifra sotto */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.price{display:flex!important;flex-direction:column;align-items:flex-start;
  justify-content:center;text-align:left!important;gap:1px;
  font-size:16px;font-weight:900;line-height:1.15;color:#fff!important}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.price:before{content:attr(data-nm);display:block;max-width:200px;
  font-size:11.5px;font-weight:700;line-height:1.2;letter-spacing:.01em;
  color:rgba(255,255,255,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* il vecchio span.pnm non serve piu': se resta in giro non deve occupare spazio */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd span.pnm{display:none!important}
/* il totale: anche qui height:auto, il tema vecchio impone 70px su ogni li */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine{height:auto!important;background:none!important}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap{height:auto!important;background:none!important}

/* ---- FIX 08/09/2026 (7): respiro nel pannello e bottone carrello solo icona ---- */
/* la barra distribuisce in altezza: il pannello si allunga quanto la barra meno
   il suo padding, il totale resta centrato */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items{align-items:stretch;gap:14px;padding:12px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap{align-self:stretch;align-items:stretch;padding:0;margin:0}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap ul.prdlist{align-items:center;min-height:64px;
  padding:12px 14px!important;gap:12px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd{padding:10px 18px 10px 12px}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine{align-self:center}
/* Il "0" dentro il bottone del carrello NON e' il totale: e' l'accumulatore
   serviziPrice, che js/cvs/js_0001.js:455 rilegge con
     parseInt(jQuery('.button-checkout').text())
   e usa nel controllo del lotto minimo. Il nodo di testo deve restare nel DOM,
   quindi lo si nasconde con font-size:0 invece di rimuoverlo. Il totale e' gia'
   in .cart-totals, qui basta l'icona del carrello. */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine a.button-checkout{width:52px;min-width:52px;padding:0;
  font-size:0;line-height:0;
  background-position:center center!important;background-size:20px 20px!important}

/* ---- FIX 08/09/2026 (8): il padding delle chip ----
   dgt_configuratore_0001.css:360 -> #configuratore .config-block ul li{padding:0
   !important;margin:0!important}. Vale per OGNI li dentro .config-block, quindi
   anche per le chip della barra: senza !important il loro padding non ha mai avuto
   effetto, ed e' per questo che il contenuto restava appiccicato ai bordi. */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prd{padding:11px 20px 11px 13px!important}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.prdwrap{padding:0!important}

/* ---- FIX 08/09/2026 (9): gli ultimi padding che perdevano ----
   dgt_configuratore_0001.css:358 -> #configuratore .config-block ul{padding:0!important}
   dgt_configuratore_0001.css:364 -> #configuratore .config-block ul li{padding:0!important}
   Colpiscono anche la barra e il blocco totale, non solo le chip: senza !important
   il pannello toccava i bordi della barra e il filetto del totale toccava la cifra.
   Elenco completo degli !important del tema vecchio che arrivano sulla barra:
     :357-358 ul{margin,padding}      :364-365 ul li{padding,margin}
     :814/819 li.one/li.two{background-color}
     :1321 ul{margin}                 :1325 li.subtotale-ordine{margin-top,margin-right}
     :708-709 e :1016 .image{background-position,background-size}  <- questi si TENGONO,
     sono lo sprite a 2 stati che il JS accende con .active_block. */
   Sul lato destro un po' piu' di respiro, per staccare il carrello dal bordo:
   16px di padding della barra + 10px del blocco totale. */
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items{padding:12px 16px 12px 12px!important}
#cvs-catalogo#cvs-catalogo .fixed-items-block.config-block ul.fixed-items li.subtotale-ordine{padding:2px 10px 2px 20px!important}

/* ---- FIX 08/09/2026 (10): popup del checkout ----
   Il contenuto del popup NON e' in pagina: lo inietta cartajax in #item-cart
   (Webquali_CartAjax, AjaxController::digicartAction riga 566, che rende
   checkout/cart.phtml) e con esso arrivano #discount-codes, #totals e
   #buttons-cart, riempiti subito dopo da populate_checkout_dialog().
   Due cose lo rompevano, entrambe per colpa di #cvs-catalogo *{margin:0;padding:0},
   che vale anche sull'HTML iniettato:
    - .chktpopup e' position:fixed con left:5px;right:5px;width:70% e margin:0 auto:
      azzerate le auto, il box e' sovravincolato e resta incollato a SINISTRA;
    - i padding delle colonne bootstrap dentro il carrello sparivano, da cui il
      testo appiccicato.
   Qui il popup viene ridisegnato nel linguaggio del design nuovo. Tutto e'
   scoped su #cvs-catalogo: lo stesso #chkt esiste anche sulle pagine 33 e 111,
   che non hanno questo CSS e non devono cambiare, e checkout/cart.phtml e'
   condiviso quindi non si tocca. [GC] */
/* il pannello */
#cvs-catalogo #chkt.chktpopup{position:fixed;top:7vh;left:0;right:0;
  width:min(1120px,calc(100vw - 40px));min-width:0!important;
  max-height:86vh;overflow-y:auto;
  margin:0 auto!important;padding:26px 28px 22px!important;
  background:#fff!important;background-image:none!important;
  border:1px solid var(--line)!important;border-radius:var(--radius)!important;
  box-shadow:0 30px 80px rgba(8,6,35,.45)!important;z-index:1000}
#cvs-catalogo #chkt .ttl{margin:0 0 18px!important;padding:0 0 16px!important;
  border-bottom:1px solid var(--line);text-align:left;
  font-size:19px;font-weight:800;line-height:1.3;color:var(--heading)!important}
#cvs-catalogo #chkt #msg-setup{margin:0 0 16px!important;padding:12px 14px!important;
  border:1px solid var(--acc-line);border-radius:12px;background:var(--acc-soft);
  text-align:left;font-size:13px;line-height:1.45;color:var(--acc-dark)!important;
  width:auto!important}
/* la griglia interna: .row > .container > .col-*, annidamento non standard che
   arriva da cart.phtml. Il .container diventa la griglia; i suoi pseudo-elementi
   di clearfix vanno spenti, altrimenti su un grid container diventano grid item
   e slittano le colonne - la stessa trappola della riga prodotto. */
#cvs-catalogo #chkt .cart>.row{margin:0!important}
#cvs-catalogo #chkt .cart>.row>.container{width:auto!important;max-width:none!important;
  margin:0!important;padding:0!important;
  display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;align-items:start}
#cvs-catalogo #chkt .cart>.row>.container:before,#cvs-catalogo #chkt .cart>.row>.container:after{content:none!important;display:none!important}
#cvs-catalogo #chkt .cart>.row>.container>[class*="col-"]{width:auto!important;float:none!important;
  padding:0!important;min-width:0}
#cvs-catalogo #chkt .cart>.row+.row>.container{margin-top:18px!important;padding-top:16px!important;
  border-top:1px solid var(--line)}
#cvs-catalogo #chkt .page-title{display:none}
/* l'area scorrevole: il tema vecchio la inchioda a height:215px */
#cvs-catalogo #chkt #cart-items.cart-scroll{height:auto!important;max-height:min(46vh,420px);
  overflow-y:auto;padding-right:4px!important}
/* la tabella */
#cvs-catalogo #chkt #shopping-cart-table{width:100%;border-collapse:collapse;font-size:14px}
#cvs-catalogo #chkt #shopping-cart-table thead th{padding:0 12px 10px!important;text-align:left;
  border-bottom:1px solid var(--line);font-size:11.5px;font-weight:800;
  letter-spacing:.07em;text-transform:uppercase;color:var(--muted)!important;white-space:nowrap}
#cvs-catalogo #chkt #shopping-cart-table thead th.a-center{text-align:center}
#cvs-catalogo #chkt #shopping-cart-table tbody td{padding:12px!important;vertical-align:middle;
  border-bottom:1px solid #f1f3f9}
#cvs-catalogo #chkt #shopping-cart-table tbody tr:last-child td{border-bottom:0}
#cvs-catalogo #chkt #shopping-cart-table td.a-center{text-align:center}
#cvs-catalogo #chkt #shopping-cart-table td.a-right{text-align:right}
#cvs-catalogo #chkt #shopping-cart-table .product-name{margin:0!important;font-size:14.5px;
  font-weight:700;line-height:1.3;color:var(--heading)!important}
#cvs-catalogo #chkt #shopping-cart-table .short_product_description{display:block!important;
  width:auto!important;padding:3px 0 0!important;text-align:left!important;
  font-size:12.5px;font-weight:400;line-height:1.45;color:var(--muted)!important}
#cvs-catalogo #chkt #shopping-cart-table .cart-price{font-weight:800;white-space:nowrap;color:var(--heading)!important}
#cvs-catalogo #chkt #shopping-cart-table .item-options{margin:6px 0 0!important;font-size:12.5px;color:var(--muted)}
#cvs-catalogo #chkt #shopping-cart-table .item-msg{margin:6px 0 0!important;font-size:12px;color:#c0392b}
#cvs-catalogo #chkt #shopping-cart-table input[type=text],#cvs-catalogo #chkt #shopping-cart-table input[type=number]{
  width:64px;height:38px;padding:0!important;text-align:center;
  border:1.5px solid var(--line)!important;border-radius:10px!important;
  background:#fff!important;box-shadow:none!important;font:inherit;font-weight:700}
/* codice sconto e totali */
#cvs-catalogo #chkt .discount-codes{padding:14px!important;border:1px solid var(--line);
  border-radius:14px;background:var(--acc-tint);text-align:left;font-size:13.5px}
#cvs-catalogo #chkt #totals table{width:100%;border-collapse:collapse;font-size:14px}
#cvs-catalogo #chkt #totals td{padding:6px 12px!important}
#cvs-catalogo #chkt #totals td:last-child,#cvs-catalogo #chkt #totals .a-right{text-align:right;white-space:nowrap}
#cvs-catalogo #chkt #totals strong{font-weight:800;color:var(--heading)}
#cvs-catalogo #chkt #totals tr:last-child td{padding-top:10px!important;font-size:17px;
  border-top:1px solid var(--line)}
/* i bottoni: #buttons-cart nasce con le classi btn btn-info del tema, che il JS
   toglie appena lo riempie; #checkoutback e' un <img> con onmouseover inline che
   lo porta al 100%, qui bloccato con !important */
#cvs-catalogo #chkt #buttons-cart{margin:0!important;padding:0!important;background:none!important;
  border:0!important;box-shadow:none!important}
#cvs-catalogo #chkt #buttons-cart button,#cvs-catalogo #chkt #buttons-cart .button{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:100%;height:48px;padding:0 20px!important;border:0!important;border-radius:999px!important;
  background:var(--acc)!important;color:#fff!important;
  font:inherit;font-size:15px;font-weight:700;text-decoration:none!important;
  cursor:pointer;box-shadow:none!important}
#cvs-catalogo #chkt #buttons-cart button:hover,#cvs-catalogo #chkt #buttons-cart .button:hover{background:var(--acc-mid)!important}
#cvs-catalogo #chkt #checkoutback{display:inline-block;margin-top:12px!important}
#cvs-catalogo #chkt #checkoutback img{width:auto!important;height:40px!important;max-width:100%}
@media(max-width:900px){
  #cvs-catalogo #chkt.chktpopup{top:3vh;max-height:94vh;padding:20px 18px!important}
  #cvs-catalogo #chkt .cart>.row>.container{grid-template-columns:minmax(0,1fr)}
  #cvs-catalogo #chkt #shopping-cart-table{font-size:13px}
}

/* ---- FIX 08/09/2026 (11): bottoni del popup e codice sconto ----
   onepage/link.phtml rende il checkout come <a> con dentro <img buynow.png>, e
   cart.phtml rende #checkoutback come <a> con <img backtoshop.png>: sono immagini,
   non testo, quindi non vanno trasformate in pastiglie - si normalizza solo la
   dimensione. Entrambe hanno un onmouseover inline che le porta al 100%: bloccato
   con !important, che vince sullo style inline.
   Il campo del codice sconto ha uno style inline (fondo azzurro, bordo inset):
   anche qui serve !important. [GC] */
#cvs-catalogo #chkt #buttons-cart a,#cvs-catalogo #chkt #checkoutback{display:inline-block!important;
  width:auto!important;height:auto!important;padding:0!important;
  background:none!important;border:0!important;box-shadow:none!important}
#cvs-catalogo #chkt #buttons-cart a img,#cvs-catalogo #chkt #checkoutback img{width:auto!important;height:42px!important;
  max-width:100%;display:block}
#cvs-catalogo #chkt #buttons-cart{text-align:center}
#cvs-catalogo #chkt #checkoutback{margin-top:14px!important}
#cvs-catalogo #chkt .discount-codes .discount-form{margin:0!important;padding:0!important}
#cvs-catalogo #chkt .discount-codes label{display:block;margin:0 0 6px!important;
  font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted)!important}
#cvs-catalogo #chkt .discount-codes .input-box{margin:0!important;padding:0!important}
#cvs-catalogo #chkt .discount-codes #coupon_code{width:100%!important;height:42px!important;
  padding:0 12px!important;margin:0!important;text-align:left!important;
  background:#fff!important;color:var(--ink)!important;
  border:1.5px solid var(--line)!important;border-style:solid!important;
  border-radius:10px!important;box-shadow:none!important;
  font:inherit!important;font-weight:600!important}
#cvs-catalogo #chkt .discount-codes #coupon_code:focus{outline:none;border-color:var(--acc)!important;
  box-shadow:0 0 0 3px var(--acc-soft)!important}
#cvs-catalogo #chkt .discount-codes .buttons-set{margin:10px 0 0!important;padding:0!important;
  border:0!important;text-align:left}
#cvs-catalogo #chkt .discount-codes button.button{display:inline-flex!important;align-items:center;
  justify-content:center;height:38px;padding:0 16px!important;margin:0 6px 0 0!important;
  border:1.5px solid var(--acc)!important;border-radius:999px!important;
  background:#fff!important;color:var(--acc)!important;
  font:inherit!important;font-size:13px!important;font-weight:700!important;
  cursor:pointer;box-shadow:none!important}
#cvs-catalogo #chkt .discount-codes button.button:hover{background:var(--acc-soft)!important}
#cvs-catalogo #chkt .discount-codes button.button span{background:none!important;padding:0!important}

/* ---- FIX 09/09/2026 (12): icona di categoria in risalto ----
   Nota: su Digithera questa patch metteva in risalto l'icona E introduceva il marchio
   del prodotto sotto il nome. Su CV Studio i marchi non ci sono, quindi resta la sola
   icona di categoria.
   Il riquadro dell'icona passa da 66x54 a 78x64 e da fondo tinta ad fondo bianco con
   bordo e alone nel colore dell'area, cosi lo sprite si stacca; sulla riga
   selezionata il bordo prende l'accento pieno. background-position e background-size
   NON si toccano: sono !important nel tema vecchio e sono lo sprite a 2 stati. [GC] */
#cvs-catalogo .prow .plogo{width:78px;height:64px;border-radius:15px;padding:5px;
  background:#fff;border:1px solid var(--acc-line);
  box-shadow:0 1px 3px rgba(30,27,75,.10),0 0 0 3px var(--acc-soft)}
#cvs-catalogo .prow .plogo .image{height:52px}
#cvs-catalogo .pane .config-block>ul>li.active_block .plogo{border-color:var(--acc);
  box-shadow:0 2px 9px rgba(30,27,75,.17),0 0 0 3px var(--acc-soft)}
@media(max-width:900px){
  #cvs-catalogo .prow .plogo{width:66px;height:54px;border-radius:13px}
  #cvs-catalogo .prow .plogo .image{height:44px}
}

/* Qui su Digithera c'e' un blocco che ritaglia span.pbrand, il marchio del servizio
   sotto il nome, trattandolo come sprite a due stati. Su CV Studio i marchi di prodotto
   sono stati tolti dalla riga: il template non emette piu' span.pbrand e queste regole
   sono state rimosse con lui, per non lasciare CSS che non aggancia niente. Le rimane
   soltanto l'icona di categoria (.plogo) qui sopra, che e' un'altra cosa. [GC] */

/* ---- FIX 15/09/2026 (14): pannello di assegnazione ai Clienti ----
   Serve ai prodotti nominativi (ask_assisted_vat): scelti i volumi, si indica a
   quali Clienti attivare il servizio. Prima il markup stava dentro la colonna
   della quantita', larga 175px, e il JS impone a chosen una larghezza inline di
   520px: sbordava sulle colonne accanto. Ora e' il quinto elemento della griglia,
   a tutta riga, e la riga si apre verso il basso.
   Due cose da sapere. La prima: #cvs-catalogo *{margin:0;padding:0} azzera anche
   le spaziature interne di chosen, che sono tutte su selettori di classe e quindi
   perdono contro un id - per questo il widget e' ridisegnato pezzo per pezzo e non
   solo posizionato. La seconda: js/cvs/js_0001.js:1194 scrive
   jQuery('.chosen-container').prop('style','float:right;right:121px;width:520px')
   su OGNI chosen della pagina, quindi qui serve !important. Dove invece il JS
   scrive gia' !important inline (.chosen-drop, .search-choice) non si puo' fare
   nulla e quei valori restano. [GC] */
/* il gap di riga della griglia si azzera: lo spazio lo mette il pannello quando si
   apre, altrimenti tutte le righe nominative avrebbero 16px di vuoto inutile */
#cvs-catalogo .prow{row-gap:0;column-gap:16px}
#cvs-catalogo .prow .passist{grid-column:1 / -1;min-width:0;height:auto!important;padding:0!important;margin:0!important}
/* il pannello vero e proprio: e' display:none finche' il JS non lo apre, quindi
   margini e padding qui non pesano sulle righe chiuse */
#cvs-catalogo .prow .passist .assegnaAssistito{width:auto!important;margin:14px 0 2px!important;
  padding:16px 18px!important;line-height:1.5;
  background:var(--acc-tint);border:1px solid var(--acc-line);
  border-left:3px solid var(--acc);border-radius:14px}
/* l'avviso: era rosso e con width:240% e margin-left:-75%, misure pensate per un
   contenitore stretto. Qui e' un'istruzione, non un errore, quindi ha il tono
   dell'area invece del rosso */
#cvs-catalogo .prow .passist .warningAssistito{width:auto!important;margin:0 0 12px!important;padding:0!important;
  color:var(--acc-dark)!important;font-family:inherit!important;
  font-size:13.5px!important;font-weight:600!important;line-height:1.45!important}
/* la select nuda, se chosen non partisse */
#cvs-catalogo .prow .passist .assegnaAssistito > select{float:none!important;width:100%!important;
  max-width:620px!important;margin:0!important;margin-right:0!important;
  font-family:inherit!important;font-weight:400!important;
  border:1.5px solid var(--line)!important;border-style:solid!important;
  border-radius:12px!important;background:#fff!important;padding:8px!important}
/* chosen: contenitore. Il float/right/width inline del JS si batte con !important */
#cvs-catalogo .prow .passist .chosen-container{float:none!important;right:auto!important;left:auto!important;
  width:100%!important;max-width:620px!important;font-family:inherit;font-size:14px}
/* il campo: si comporta come gli altri input del configuratore */
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices{display:flex!important;flex-wrap:wrap;
  align-items:center;gap:6px;min-height:46px;
  padding:7px 10px!important;margin:0!important;
  background:#fff!important;background-image:none!important;
  border:1.5px solid var(--line)!important;border-radius:12px!important;
  box-shadow:none!important;list-style:none!important}
#cvs-catalogo .prow .passist .chosen-container-active .chosen-choices{border-color:var(--acc)!important;
  box-shadow:0 0 0 3px var(--acc-soft)!important}
/* i Clienti scelti, come pastiglie nel colore dell'area */
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice{position:relative;
  display:inline-flex;align-items:center;gap:7px;margin:0!important;
  padding:5px 26px 5px 11px!important;
  background:var(--acc-soft)!important;background-image:none!important;
  border:1px solid var(--acc-line)!important;border-radius:999px!important;
  box-shadow:none!important;color:var(--acc-dark)!important;
  font-size:13px;font-weight:600;line-height:1.3;max-width:100%}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice span{display:block;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{
  position:absolute;right:9px;top:50%;transform:translateY(-50%);
  width:12px;height:12px;background:none!important;opacity:.65}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before,
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:after{
  content:"";position:absolute;left:5px;top:1px;width:1.5px;height:11px;
  background:var(--acc-dark);border-radius:2px}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before{transform:rotate(45deg)}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:after{transform:rotate(-45deg)}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{opacity:1}
/* il campo di ricerca dentro la pastigliera */
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-field{margin:0!important;padding:0!important}
#cvs-catalogo .prow .passist .chosen-container-multi .chosen-choices li.search-field input[type=text]{
  height:30px!important;margin:0!important;padding:0 2px!important;
  font-family:inherit!important;font-size:14px!important;color:var(--ink)!important;
  background:transparent!important;border:0!important;box-shadow:none!important}
/* la tendina dei risultati */
#cvs-catalogo .prow .passist .chosen-container .chosen-drop{width:100%!important;margin-top:6px;
  background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;
  box-shadow:0 16px 40px rgba(30,27,75,.16)!important;overflow:hidden}
#cvs-catalogo .prow .passist .chosen-container .chosen-results{margin:0!important;padding:4px!important;
  max-height:260px;list-style:none!important}
#cvs-catalogo .prow .passist .chosen-container .chosen-results li{margin:0!important;padding:8px 10px!important;
  border-radius:8px;font-size:13.5px;line-height:1.4;color:var(--ink)}
#cvs-catalogo .prow .passist .chosen-container .chosen-results li.highlighted{background:var(--acc)!important;color:#fff!important}
#cvs-catalogo .prow .passist .chosen-container .chosen-results li.no-results{background:none!important;color:var(--muted)!important}
#cvs-catalogo .prow .passist .chosen-container .chosen-results li em{font-style:normal;font-weight:800;text-decoration:none}
/* la riga selezionata tinge il pannello con il colore dell'area */
#cvs-catalogo .pane .config-block>ul>li.active_block .passist .assegnaAssistito{
  background:#fff;border-color:var(--acc-line)}
@media(max-width:900px){
  #cvs-catalogo .prow .passist .assegnaAssistito{padding:13px 14px!important;margin:12px 0 2px!important}
  #cvs-catalogo .prow .passist .chosen-container,#cvs-catalogo .prow .passist .assegnaAssistito > select{max-width:none!important}
}

/* ---- FIX 15/09/2026 (15): la X che toglie un Cliente dalla multiselect ----
   La X di chosen e' un <a class="search-choice-close">, e il CSS di questa pagina
   contiene una regola anti-tema che spegne TUTTI gli pseudo-elementi di OGNI <a>
   dentro #cvs-catalogo, con id raddoppiato e !important. La X disegnata con
   ::before/::after nella patch (14) aveva un solo id e perdeva: spariva del tutto,
   perche' li' le avevo anche tolto lo sprite di chosen con background:none.
   Qui la si ridisegna con lo stesso id raddoppiato e !important su display,
   content e background, cosi' vince. [GC] */
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute!important;display:block!important;right:8px;top:50%;
  width:14px;height:14px;margin:0!important;padding:0!important;
  transform:translateY(-50%);background:none!important;opacity:.6;
  text-indent:-9999px;overflow:hidden;cursor:pointer}
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before,#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:after{display:block!important;content:""!important;
  position:absolute;left:6px;top:1px;width:2px;height:12px;
  background:var(--acc-dark)!important;border-radius:2px}
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before{transform:rotate(45deg)}
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:after{transform:rotate(-45deg)}
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{opacity:1}
/* la pastiglia deve lasciare spazio alla X: il padding a destra e' quello che la
   ospita, e va difeso perche' js/cvs/js_0001.js:1193 scrive padding:3px inline su
   .search-choice - colpisce pero' solo le pastiglie gia' esistenti al momento in
   cui parte, che di norma sono zero */
#cvs-catalogo#cvs-catalogo .passist .chosen-container-multi .chosen-choices li.search-choice{
  position:relative!important;padding:5px 28px 5px 12px!important}

/* ============ HERO DI CV STUDIO ============
   Ripreso dalla pagina statica precedente (le regole .cfg-hero*), riportato qui dentro
   perche' lo stile stia tutto in un file e la pagina CMS resti solo markup. Rispetto
   all'originale cambia solo lo scope (#cvs-catalogo) e il font, che ora viene ereditato
   dal contenitore invece che da var(--font). [GC] */
#cvs-catalogo .cfg-hero{
  position:relative;overflow:hidden;max-width:1200px;margin:0 auto 20px!important;float:none!important;
  background:linear-gradient(120deg,var(--navy-dark) 0%,var(--navy) 60%,#1d4b7a 100%);
  border-radius:12px;padding:16px 24px!important;box-sizing:border-box}
#cvs-catalogo .cfg-hero__inner{position:relative;z-index:1;display:flex!important;flex-direction:column;
  align-items:center!important;justify-content:center!important;gap:6px;margin:0!important;padding:0!important;text-align:center!important}
#cvs-catalogo .cfg-hero__tag{display:inline-flex;align-items:center;gap:6px;background:rgba(45,189,186,.16);
  border:1px solid rgba(45,189,186,.4);color:var(--teal-light);font-size:11px;font-weight:800;
  letter-spacing:1px;text-transform:uppercase;padding:4px 12px;border-radius:100px;margin:0!important}
#cvs-catalogo .cfg-hero__title{font-size:clamp(21px,2.7vw,29px);font-weight:800;line-height:1.2;color:#fff!important;
  margin:0!important;padding:0!important;float:none!important}
#cvs-catalogo .cfg-hero__title br{display:none}
#cvs-catalogo .cfg-hero__title span{color:var(--teal-light)}
#cvs-catalogo .cfg-hero__title span::before{content:' '}
#cvs-catalogo .cfg-hero__sub{display:block!important;margin:2px auto 0!important;padding:0!important;
  font-size:13px!important;font-weight:600!important;color:rgba(255,255,255,.82)!important;
  line-height:1.3!important;float:none!important;text-align:center!important}
@media(max-width:900px){
  #cvs-catalogo .cfg-hero{padding:22px 18px!important}
}
