/**
 * Creativa Account — foglio di stile dell'area account.
 *
 * Questo file è STATICO e non cambia mai. Tutte le decisioni visive vivono
 * nelle custom properties,che CRVACC_CSS_Generator emette leggendo lo
 * schema. È questa separazione a rendere l'anteprima dal vivo quasi
 * gratuita: riscrivere una variabile aggiorna tutta la pagina.
 *
 * Le regole qui sotto sono state estratte dai mockup approvati,quindi il
 * risultato a schermo è esattamente quello già validato.
 *
 * @package Creativa_Account
 */

/**
 * RESET DI CONVIVENZA
 *
 * I nostri contenitori portano anche le classi originali di WooCommerce,
 * volutamente: molti temi e plugin le usano come aggancio. Il prezzo e' che
 * si portano dietro anche il layout a float di woocommerce.css, che qui
 * romperebbe la griglia. Si neutralizza solo cio' che riguarda la
 * disposizione, lasciando intatto il resto.
 *
 * La specificita' e' volutamente alta: queste regole devono vincere su
 * .woocommerce-account .woocommerce-MyAccount-navigation, che ha due classi.
 */
.crvacc .crvacc-side.woocommerce-MyAccount-navigation,
.crvacc .crvacc-content.woocommerce-MyAccount-content{
  float:none;width:auto;max-width:none;margin:0}

/* Le voci di menu sono una lista: senza reset arrivano pallini e rientri
   dal foglio del tema, che WooCommerce da solo non sempre azzera. */
.crvacc .crvacc-nav ul,
.crvacc .crvacc-nav__sep ul{list-style:none;margin:0;padding:0;
  display:flex;flex-direction:column;gap:var(--crvacc-sidebar-item-gap,4px)}
.crvacc .crvacc-nav li,
.crvacc .crvacc-nav__sep li{margin:0;padding:0;list-style:none}
.crvacc .crvacc-nav li::before,
.crvacc .crvacc-nav li::marker{content:none;display:none}

/* Il trigger del menu e' un <button>: i temi lo colorano come i propri
   pulsanti. Va riportato al nostro aspetto e nascosto su schermo largo. */
.crvacc .crvacc-navtrigger{display:none;color:var(--crvacc-color-text-heading);
  background:var(--crvacc-color-bg-card);text-transform:none;letter-spacing:normal;
  line-height:1.2;width:100%}

/* La card utente deve restare su una riga anche in colonne strette. */
.crvacc .crvacc-user{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}
.crvacc .crvacc-user > div{min-width:0}
.crvacc .crvacc-user__name,
.crvacc .crvacc-user__meta{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Titoli e paragrafi dentro i nostri blocchi non devono ereditare i
   margini del tema, che qui creano sovrapposizioni. */
.crvacc .crvacc-empty h3{margin:0 0 6px}
.crvacc .crvacc-empty p{margin:0 0 var(--crvacc-space-md,16px)}
.crvacc .crvacc-panel h2,
.crvacc .crvacc-panel h3{margin-top:0}
.crvacc .crvacc-btn{text-transform:none;letter-spacing:normal;text-decoration:none;
  line-height:1.2;height:auto;min-height:0}

/**
 * box-sizing su tutto cio' che sta dentro l'area account.
 *
 * Senza, padding e bordi si SOMMANO alla larghezza dichiarata: un pulsante
 * a width:100% dentro una colonna da 220px ne occupa 254, e l'eccedenza si
 * propaga a ogni contenitore sopra fino alla barra di scorrimento.
 *
 * La regola c'era nei mockup ma e' andata persa nell'estrazione, perche' il
 * selettore universale era fra quelli scartati insieme alla grafica di prova.
 * E' la causa comune di quasi tutti i difetti di allineamento.
 */
.crvacc,
.crvacc *,
.crvacc *::before,
.crvacc *::after{box-sizing:border-box}

.crvacc{font-family:var(--crvacc-font-body);font-size:var(--crvacc-font-size-body); line-height:var(--crvacc-line-height-base);color:var(--crvacc-color-text-base); background:var(--crvacc-color-bg-page);padding:var(--crvacc-space-xl,32px);border-radius:10px}
.crvacc :focus-visible{outline:none;box-shadow:0 0 0 2px var(--crvacc-color-focus-ring), 0 0 0 4px color-mix(in srgb,var(--crvacc-color-focus-ring) 45%,transparent);border-radius:4px}
.crvacc h1,.crvacc h2,.crvacc h3{margin:0;color:var(--crvacc-color-text-heading);line-height:1.25}
.crvacc h1{font-size:var(--crvacc-font-size-h1);font-weight:700;letter-spacing:-.02em}
.crvacc h3{font-size:var(--crvacc-font-size-h3);font-weight:700;letter-spacing:-.01em}
.crvacc p{margin:0}
.crvacc a{color:var(--crvacc-color-link);text-decoration:none}
.crvacc a:hover{color:var(--crvacc-color-link-hover);text-decoration:underline}
.crvacc .crvacc-mono{font-family:var(--crvacc-font-mono);font-size:.94em;letter-spacing:-.02em}
.crvacc .crvacc-head{margin-bottom:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-crumb{font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted);margin-bottom:6px}
.crvacc .crvacc-crumb a{color:inherit}
.crvacc .crvacc-crumb a:hover{color:var(--crvacc-color-link-hover)}
.crvacc .crvacc-head__row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.crvacc .crvacc-head__count{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-layout{display:grid;grid-template-columns:var(--crvacc-sidebar-width,262px) 1fr;gap:var(--crvacc-content-gap,32px);align-items:start}
.crvacc .crvacc-layout>*{min-width:0}
.crvacc .crvacc-side{background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-space-sm,8px);position:sticky;top:var(--crvacc-space-lg,22px)}
.crvacc .crvacc-user{display:flex;align-items:center;gap:10px;padding:var(--crvacc-space-sm,8px) var(--crvacc-space-sm,8px) var(--crvacc-space-md,16px)}
.crvacc .crvacc-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:var(--crvacc-radius-pill); background:var(--crvacc-color-primary);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:600}
.crvacc .crvacc-user__name{font-weight:700;color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-user__meta{font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-nav{display:flex;flex-direction:column;gap:var(--crvacc-sidebar-item-gap,4px); border-top:1px solid var(--crvacc-color-border);padding-top:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-nav a{display:flex;align-items:center;gap:10px;padding:var(--crvacc-sidebar-item-padding); border-radius:var(--crvacc-sidebar-item-radius);color:var(--crvacc-color-text-base);font-weight:500; transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-nav a:hover{background:var(--crvacc-color-bg-hover);text-decoration:none}
.crvacc .crvacc-nav a:hover svg{stroke:var(--crvacc-color-link)}
.crvacc .crvacc-nav a[aria-current="page"]{background:var(--crvacc-color-primary);color:#fff;font-weight:700}
.crvacc .crvacc-nav a[aria-current="page"]:hover{background:var(--crvacc-color-primary-hover);color:#fff}
.crvacc .crvacc-nav a[aria-current="page"] svg,.crvacc .crvacc-nav a[aria-current="page"]:hover svg{stroke:#fff}
.crvacc .crvacc-nav svg{width:17px;height:17px;flex:0 0 17px;stroke:var(--crvacc-color-text-muted);fill:none; stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:stroke var(--crvacc-duration)}
.crvacc .crvacc-nav__badge{margin-left:auto;background:var(--crvacc-color-link);color:#fff;font-size:11px; font-weight:700;padding:1px 7px;border-radius:var(--crvacc-radius-pill)}
.crvacc .crvacc-nav a[aria-current="page"] .crvacc-nav__badge{background:#fff;color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-nav__sep{margin-top:var(--crvacc-space-sm,8px);padding-top:var(--crvacc-space-sm,8px);border-top:1px solid var(--crvacc-color-border)}
.crvacc .crvacc-nav__sep a{color:var(--crvacc-color-danger)}
.crvacc .crvacc-nav__sep a:hover{background:#fdf3f2;color:var(--crvacc-color-danger)}
.crvacc .crvacc-nav__sep svg,.crvacc .crvacc-nav__sep a:hover svg{stroke:var(--crvacc-color-danger)}
.crvacc .crvacc-navtrigger{display:none;width:100%;align-items:center;gap:10px;padding:12px 14px; background:var(--crvacc-color-bg-card);border:1px solid var(--crvacc-color-border); border-radius:var(--crvacc-radius-md);box-shadow:var(--crvacc-shadow-btn); font:700 var(--crvacc-font-size-body)/1 var(--crvacc-font-body);color:var(--crvacc-color-text-heading); cursor:pointer;margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-navtrigger:hover{background:var(--crvacc-color-bg-hover)}
.crvacc .crvacc-navtrigger svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round}
.crvacc .crvacc-filters{display:flex;gap:var(--crvacc-space-sm,8px);margin-bottom:var(--crvacc-card-gap,18px);flex-wrap:wrap}
.crvacc .crvacc-search{position:relative;flex:1 1 240px;min-width:0}
.crvacc .crvacc-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px; stroke:var(--crvacc-color-text-muted);fill:none;stroke-width:1.75;stroke-linecap:round;pointer-events:none}
.crvacc .crvacc-search input{width:100%;height:40px;padding:0 12px 0 36px;font:400 var(--crvacc-font-size-body)/1 var(--crvacc-font-body); color:var(--crvacc-color-text-heading);background:var(--crvacc-color-bg-card); border:1px solid var(--crvacc-color-border-strong);border-radius:var(--crvacc-radius-md); box-shadow:inset 0 1px 2px rgba(15,17,17,.08);transition:.15s}
.crvacc .crvacc-search input::placeholder{color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-search input:focus{border-color:var(--crvacc-color-focus-ring);outline:none; box-shadow:0 0 3px 2px color-mix(in srgb,var(--crvacc-color-focus-ring) 45%,transparent)}
.crvacc .crvacc-select{height:40px;padding:0 32px 0 13px;font:500 var(--crvacc-font-size-small)/1 var(--crvacc-font-body); color:var(--crvacc-color-text-heading);background:var(--crvacc-color-bg-muted) no-repeat right 11px center; background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230f1111' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); border:1px solid var(--crvacc-color-border);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-btn);appearance:none;cursor:pointer;transition:.15s}
.crvacc .crvacc-select:hover{background-color:#e3e6e6}
.crvacc .crvacc-orders{display:flex;flex-direction:column;gap:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-order{background:var(--crvacc-color-bg-card);border:var(--crvacc-card-border-width) solid var(--crvacc-color-border); border-radius:var(--crvacc-radius-md);box-shadow:var(--crvacc-shadow-card); position:relative;z-index:1; transition:box-shadow var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-order:hover,.crvacc .crvacc-order:focus-within{z-index:5}
.crvacc .crvacc-meta{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-lg,22px);align-items:flex-start; background:var(--crvacc-meta-strip-bg);padding:var(--crvacc-meta-strip-padding); border-radius:var(--crvacc-radius-md) var(--crvacc-radius-md) 0 0; transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-meta__item{display:flex;flex-direction:column;gap:1px;min-width:0}
.crvacc .crvacc-meta__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase; color:var(--crvacc-color-text-muted);white-space:nowrap}
.crvacc .crvacc-meta__value{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-heading);font-weight:500}
.crvacc .crvacc-meta__value--addr{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crvacc .crvacc-meta__end{margin-left:auto;display:flex;gap:var(--crvacc-space-md,16px);align-items:flex-start;flex-wrap:wrap}
.crvacc .crvacc-body{padding:var(--crvacc-card-padding,20px)}
.crvacc .crvacc-status{margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-status__sub{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:2px}
.crvacc .crvacc-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--crvacc-radius-pill); font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.5}
.crvacc .crvacc-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.crvacc .crvacc-badge--pending{background:var(--crvacc-badge-pending-bg);color:var(--crvacc-badge-pending-color)}
.crvacc .crvacc-badge--processing{background:var(--crvacc-badge-processing-bg);color:var(--crvacc-badge-processing-color)}
.crvacc .crvacc-badge--on-hold{background:var(--crvacc-badge-on-hold-bg);color:var(--crvacc-badge-on-hold-color)}
.crvacc .crvacc-badge--completed{background:var(--crvacc-badge-completed-bg);color:var(--crvacc-badge-completed-color)}
.crvacc .crvacc-badge--cancelled{background:var(--crvacc-badge-cancelled-bg);color:var(--crvacc-badge-cancelled-color)}
.crvacc .crvacc-badge--refunded{background:var(--crvacc-badge-refunded-bg);color:var(--crvacc-badge-refunded-color)}
.crvacc .crvacc-badge--failed{background:var(--crvacc-badge-failed-bg);color:var(--crvacc-badge-failed-color)}
.crvacc .crvacc-badge--default{background:var(--crvacc-badge-default-bg);color:var(--crvacc-badge-default-color)}
.crvacc .crvacc-step{display:flex;margin:var(--crvacc-space-md,16px) 0 0;list-style:none;padding:0}
.crvacc .crvacc-step li{flex:1;position:relative;padding-top:20px;font-size:var(--crvacc-font-size-tiny); color:var(--crvacc-color-text-muted);text-align:center}
.crvacc .crvacc-step li::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%); width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--crvacc-color-border);z-index:2}
.crvacc .crvacc-step li::after{content:"";position:absolute;top:5px;left:-50%;width:100%;height:2px; background:var(--crvacc-color-border);z-index:1}
.crvacc .crvacc-step li:first-child::after{display:none}
.crvacc .crvacc-step li.is-done{color:var(--crvacc-color-text-base)}
.crvacc .crvacc-step li.is-done::before{background:var(--crvacc-color-success);border-color:var(--crvacc-color-success)}
.crvacc .crvacc-step li.is-done::after{background:var(--crvacc-color-success)}
.crvacc .crvacc-step li.is-now{color:var(--crvacc-color-text-heading);font-weight:700}
.crvacc .crvacc-step li.is-now::before{background:#fff;border-color:var(--crvacc-color-success); box-shadow:0 0 0 3px color-mix(in srgb,var(--crvacc-color-success) 18%,transparent)}
.crvacc .crvacc-step li.is-now::after{background:var(--crvacc-color-success)}
.crvacc .crvacc-grid{display:grid;grid-template-columns:1fr var(--crvacc-rail-width,220px);gap:var(--crvacc-space-lg,22px); margin-top:var(--crvacc-space-md,16px);align-items:start}
.crvacc .crvacc-items{display:flex;flex-direction:column;gap:var(--crvacc-space-md,16px);min-width:0}
.crvacc .crvacc-item{display:flex;gap:var(--crvacc-space-md,16px);padding:var(--crvacc-space-md,16px) 0; border-top:1px solid var(--crvacc-color-border);min-width:0}
.crvacc .crvacc-thumb{width:var(--crvacc-order-thumb-size,64px);height:var(--crvacc-order-thumb-size,64px); flex:0 0 var(--crvacc-order-thumb-size,64px);border-radius:var(--crvacc-order-thumb-radius,8px); background:var(--crvacc-color-bg-muted);border:1px solid var(--crvacc-color-border); display:flex;align-items:center;justify-content:center;overflow:hidden;min-width:0}
.crvacc .crvacc-thumb svg{width:56%;height:56%;stroke:var(--crvacc-color-text-muted);fill:none;stroke-width:1.2;opacity:.7}
.crvacc .crvacc-item__body{min-width:0;flex:1}
.crvacc .crvacc-item__title{font-weight:500;display:block;margin-bottom:2px}
.crvacc .crvacc-item__meta{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-item__links{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-md,16px);margin-top:6px;font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-rail{display:flex;flex-direction:column;gap:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%; padding:var(--crvacc-btn-padding);border-radius:var(--crvacc-btn-radius); font:700 var(--crvacc-btn-font-size)/1.2 var(--crvacc-font-body);cursor:pointer;border:1px solid transparent; box-shadow:var(--crvacc-shadow-btn);text-decoration:none;transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-btn:hover{text-decoration:none}
.crvacc .crvacc-btn svg{width:15px;height:15px;flex:0 0 15px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.crvacc .crvacc-btn--primary{background:var(--crvacc-btn-primary-bg);border-color:var(--crvacc-btn-primary-border-color);color:var(--crvacc-btn-primary-color)}
.crvacc .crvacc-btn--primary:hover{background:var(--crvacc-btn-primary-bg-hover);border-color:var(--crvacc-btn-primary-bg-hover);color:var(--crvacc-btn-primary-color)}
.crvacc .crvacc-btn--secondary{background:#fff;border-color:var(--crvacc-color-border);color:var(--crvacc-color-text-heading);font-weight:500}
.crvacc .crvacc-btn--secondary:hover{background:var(--crvacc-color-bg-hover);color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-btn--wa{background:#fff;border-color:var(--crvacc-color-border);color:var(--crvacc-color-whatsapp);font-weight:500}
.crvacc .crvacc-btn--wa:hover{background:#f2faf8;border-color:var(--crvacc-color-whatsapp);color:#0d6b60}
.crvacc .crvacc-btn--ghost{background:transparent;border-color:transparent;color:var(--crvacc-color-link); font-weight:400;box-shadow:none;font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-btn--ghost:hover{background:transparent;color:var(--crvacc-color-link-hover);text-decoration:underline}
.crvacc .crvacc-wa{position:relative}
.crvacc .crvacc-wa__preview{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20; background:var(--crvacc-color-text-heading);color:#eef1f2;font-size:var(--crvacc-font-size-tiny); line-height:1.45;padding:10px 12px;border-radius:var(--crvacc-radius-md); opacity:0;visibility:hidden;transform:translateY(-3px);pointer-events:none; transition:all var(--crvacc-duration) var(--crvacc-easing);box-shadow:0 6px 20px rgba(15,17,17,.25)}
.crvacc .crvacc-wa__preview::before{content:"";position:absolute;top:-4px;left:18px;width:8px;height:8px; background:inherit;transform:rotate(45deg)}
.crvacc .crvacc-wa__preview b{color:#fff;font-family:var(--crvacc-font-mono);font-weight:500}
.crvacc .crvacc-wa__preview em{display:block;font-style:normal;color:#9aa3a3;font-size:10px; text-transform:uppercase;letter-spacing:.07em;margin-bottom:3px}
.crvacc .crvacc-wa:hover .crvacc-wa__preview,.crvacc .crvacc-wa:focus-within .crvacc-wa__preview{opacity:1;visibility:visible;transform:translateY(0)}
.crvacc .crvacc-wa--up .crvacc-wa__preview{top:auto;bottom:calc(100% + 6px);transform:translateY(3px)}
.crvacc .crvacc-wa--up .crvacc-wa__preview::before{top:auto;bottom:-4px}
.crvacc .crvacc-scrim{display:none;position:fixed;inset:0;background:rgba(15,17,17,.5);z-index:60;opacity:0;transition:opacity .15s}
.crvacc .crvacc-scrim.is-open{display:block;opacity:1}
.crvacc h2{font-size:var(--crvacc-font-size-h2);font-weight:700;letter-spacing:-.02em}
.crvacc .crvacc-back{display:inline-flex;align-items:center;gap:6px;font-size:var(--crvacc-font-size-small); font-weight:500;margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-back svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.crvacc .crvacc-dhead{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-md,16px);align-items:flex-start; margin-bottom:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-dhead__title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.crvacc .crvacc-dhead__meta{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:2px}
.crvacc .crvacc-dhead__actions{margin-left:auto;display:flex;gap:var(--crvacc-space-sm,8px);flex-wrap:wrap}
.crvacc .crvacc-panel{background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-card-padding,20px);margin-bottom:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-panel__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-panel__title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-track__eta{font-size:var(--crvacc-font-size-h2);font-weight:700;letter-spacing:-.02em; color:var(--crvacc-color-text-heading);line-height:1.25}
.crvacc .crvacc-track__sub{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:3px}
.crvacc .crvacc-track__code{display:inline-flex;align-items:center;gap:8px;margin-top:var(--crvacc-space-md,16px); padding:7px 8px 7px 12px;background:var(--crvacc-color-bg-muted);border-radius:var(--crvacc-radius-md); font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-track__code b{font-family:var(--crvacc-font-mono);font-weight:500;letter-spacing:-.02em}
.crvacc .crvacc-copy{appearance:none;border:1px solid var(--crvacc-color-border);background:#fff; border-radius:6px;padding:4px 9px;font:600 11px/1.4 var(--crvacc-font-body); color:var(--crvacc-color-text-heading);cursor:pointer;transition:all var(--crvacc-duration)}
.crvacc .crvacc-copy:hover{background:var(--crvacc-color-bg-hover)}
.crvacc .crvacc-copy.is-ok{color:var(--crvacc-color-success);border-color:var(--crvacc-color-success)}
.crvacc .crvacc-steps{display:flex;list-style:none;margin:var(--crvacc-space-md,16px) 0 0;padding:0}
.crvacc .crvacc-steps li{flex:1;position:relative;padding-top:22px;text-align:center;min-width:0; font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-steps li::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%); width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--crvacc-color-border);z-index:2}
.crvacc .crvacc-steps li::after{content:"";position:absolute;top:5px;left:-50%;width:100%;height:2px; background:var(--crvacc-color-border);z-index:1}
.crvacc .crvacc-steps li:first-child::after{display:none}
.crvacc .crvacc-steps .lbl{display:block;font-size:var(--crvacc-font-size-small);font-weight:500; color:var(--crvacc-color-text-muted);line-height:1.35}
.crvacc .crvacc-steps .dt{display:block;font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted); opacity:.8;margin-top:1px}
.crvacc .crvacc-steps li.is-done::before{background:var(--crvacc-color-success);border-color:var(--crvacc-color-success)}
.crvacc .crvacc-steps li.is-done::after{background:var(--crvacc-color-success)}
.crvacc .crvacc-steps li.is-done .lbl{color:var(--crvacc-color-text-base)}
.crvacc .crvacc-steps li.is-now::before{background:#fff;border-color:var(--crvacc-color-success); box-shadow:0 0 0 4px color-mix(in srgb,var(--crvacc-color-success) 16%,transparent)}
.crvacc .crvacc-steps li.is-now::after{background:var(--crvacc-color-success)}
.crvacc .crvacc-steps li.is-now .lbl{color:var(--crvacc-color-text-heading);font-weight:700}
.crvacc .crvacc-updates{list-style:none;margin:var(--crvacc-space-lg,22px) 0 0;padding:var(--crvacc-space-md,16px) 0 0; border-top:1px solid var(--crvacc-color-border)}
.crvacc .crvacc-updates li{display:flex;gap:var(--crvacc-space-md,16px);font-size:var(--crvacc-font-size-small); padding:5px 0;color:var(--crvacc-color-text-base)}
.crvacc .crvacc-updates time{flex:0 0 78px;color:var(--crvacc-color-text-muted);font-variant-numeric:tabular-nums}
.crvacc .crvacc-cols{display:grid;grid-template-columns:minmax(0,1fr) var(--crvacc-aside-width,330px);gap:var(--crvacc-card-gap,18px);grid-template-areas:"items aside" "info info";align-items:start}
.crvacc .crvacc-area-items{grid-area:items}
.crvacc .crvacc-area-info{grid-area:info}
.crvacc .crvacc-area-aside{grid-area:aside;position:sticky;top:var(--crvacc-space-lg,22px);align-self:start}
.crvacc .crvacc-item:first-of-type{border-top:0;padding-top:0}
.crvacc .crvacc-item:last-of-type{padding-bottom:0}
.crvacc .crvacc-item__price{flex:0 0 auto;text-align:right;font-weight:700;white-space:nowrap}
.crvacc .crvacc-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-info .crvacc-panel{margin-bottom:0;height:100%}
.crvacc .crvacc-info address{font-style:normal;font-size:var(--crvacc-font-size-small);line-height:1.65}
.crvacc .crvacc-info__name{font-weight:700;color:var(--crvacc-color-text-heading);display:block}
.crvacc .crvacc-pay{display:flex;align-items:center;gap:10px;font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-pay__icon{width:38px;height:26px;flex:0 0 38px;border-radius:5px;background:var(--crvacc-color-bg-muted); border:1px solid var(--crvacc-color-border);display:grid;place-items:center}
.crvacc .crvacc-pay__icon svg{width:18px;height:18px;stroke:var(--crvacc-color-text-muted);fill:none;stroke-width:1.6}
.crvacc .crvacc-sum{list-style:none;margin:0;padding:0;font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-sum li{display:flex;justify-content:space-between;gap:var(--crvacc-space-md,16px);padding:4px 0}
.crvacc .crvacc-sum li span:last-child{font-variant-numeric:tabular-nums}
.crvacc .crvacc-sum .is-free{color:var(--crvacc-color-success);font-weight:600}
.crvacc .crvacc-sum .is-total{border-top:1px solid var(--crvacc-color-border);margin-top:var(--crvacc-space-sm,8px); padding-top:var(--crvacc-space-sm,8px);font-size:var(--crvacc-font-size-h3);font-weight:700; color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-sum__vat{font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted);text-align:right;margin-top:2px}
.crvacc .crvacc-help{background:var(--crvacc-color-bg-muted);border-radius:var(--crvacc-radius-md); padding:var(--crvacc-card-padding,20px)}
.crvacc .crvacc-help__lead{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted); margin:-4px 0 var(--crvacc-space-md,16px)}
.crvacc .crvacc-actions{display:flex;flex-direction:column;gap:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-btn--auto{width:auto}
.crvacc .crvacc-head__sub{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:2px}
.crvacc .crvacc-panel__link{margin-left:auto;font-size:var(--crvacc-font-size-small);font-weight:500}
.crvacc .crvacc-badge--soft{background:var(--crvacc-color-bg-muted);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-btn--sm{padding:8px 12px;font-size:var(--crvacc-font-size-tiny)}
.crvacc .crvacc-actions--row{flex-direction:row;flex-wrap:wrap}
.crvacc .crvacc-actions--row .crvacc-btn{width:auto}
.crvacc .crvacc-greet{margin-bottom:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-greet h1{margin-bottom:2px}
.crvacc .crvacc-greet p{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--crvacc-card-gap,18px); margin-bottom:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-stat{background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-space-md,16px) var(--crvacc-space-lg,22px)}
.crvacc .crvacc-stat__label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase; color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-stat__value{font-size:24px;font-weight:700;letter-spacing:-.03em;color:var(--crvacc-color-text-heading); line-height:1.2;margin-top:2px;font-variant-numeric:tabular-nums}
.crvacc .crvacc-stat__value small{font-size:14px;font-weight:600;color:var(--crvacc-color-text-muted);letter-spacing:0}
.crvacc .crvacc-now{display:flex;gap:var(--crvacc-space-lg,22px);align-items:center;flex-wrap:wrap}
.crvacc .crvacc-now__body{flex:1;min-width:220px}
.crvacc .crvacc-now__eta{font-size:var(--crvacc-font-size-h3);font-weight:700;letter-spacing:-.02em}
.crvacc .crvacc-now__meta{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:1px}
.crvacc .crvacc-now__cta{flex:0 0 auto}
.crvacc .crvacc-steps li.is-done{color:var(--crvacc-color-text-base)}
.crvacc .crvacc-steps li.is-now{color:var(--crvacc-color-text-heading);font-weight:700}
.crvacc .crvacc-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--crvacc-card-gap,18px); grid-auto-rows:1fr}
.crvacc .crvacc-tile{display:flex;align-items:center;gap:var(--crvacc-space-md,16px); background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-space-md,16px) var(--crvacc-space-lg,22px); color:var(--crvacc-color-text-base);transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-tile:hover{text-decoration:none;box-shadow:var(--crvacc-shadow-card-hover);transform:translateY(-1px)}
.crvacc .crvacc-tile__icon{width:42px;height:42px;flex:0 0 42px;border-radius:var(--crvacc-radius-md); background:var(--crvacc-color-bg-muted);display:grid;place-items:center}
.crvacc .crvacc-tile__icon svg{width:20px;height:20px;stroke:var(--crvacc-color-text-heading);fill:none; stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.crvacc .crvacc-tile__name{display:block;font-weight:700;color:var(--crvacc-color-text-heading);line-height:1.3}
.crvacc .crvacc-tile__desc{display:block;font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted);line-height:1.4;margin-top:1px}
.crvacc .crvacc-tile--wa .crvacc-tile__icon{background:#e9f6f3}
.crvacc .crvacc-tile--wa .crvacc-tile__icon svg{stroke:var(--crvacc-color-whatsapp)}
.crvacc .crvacc-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);gap:var(--crvacc-space-md,16px); overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.crvacc .crvacc-prod{min-width:0}
.crvacc .crvacc-prod__img{aspect-ratio:1;border-radius:var(--crvacc-radius-md);background:var(--crvacc-color-bg-muted); border:1px solid var(--crvacc-color-border);display:grid;place-items:center;margin-bottom:8px}
.crvacc .crvacc-prod__img svg{width:44%;height:44%;stroke:var(--crvacc-color-text-muted);fill:none;stroke-width:1.2;opacity:.7}
.crvacc .crvacc-prod__name{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical; overflow:hidden;font-size:var(--crvacc-font-size-small);line-height:1.4}
.crvacc .crvacc-prod__price{font-weight:700;font-size:var(--crvacc-font-size-small);margin:2px 0 8px}
.crvacc .crvacc-addrgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--crvacc-card-gap,18px); grid-auto-rows:1fr}
.crvacc .crvacc-addr{background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-card-padding,20px);display:flex;flex-direction:column}
.crvacc .crvacc-addr__badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--crvacc-space-sm,8px);min-height:23px}
.crvacc .crvacc-addr__label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase; color:var(--crvacc-color-text-muted);margin-bottom:2px}
.crvacc .crvacc-addr address{font-style:normal;font-size:var(--crvacc-font-size-small);line-height:1.65;flex:1}
.crvacc .crvacc-addr__name{font-weight:700;color:var(--crvacc-color-text-heading);display:block}
.crvacc .crvacc-addr__links{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-md,16px);margin-top:var(--crvacc-space-md,16px); padding-top:var(--crvacc-space-md,16px);border-top:1px solid var(--crvacc-color-border); font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-addr__links .is-danger{color:var(--crvacc-color-danger)}
.crvacc .crvacc-addr__links .is-danger:hover{color:#8a1e03}
.crvacc .crvacc-addtile{display:flex;flex-direction:column;align-items:center;justify-content:center; text-align:center;gap:8px;min-height:190px;padding:var(--crvacc-card-padding,20px); border:2px dashed var(--crvacc-color-border);border-radius:var(--crvacc-radius-md); background:transparent;box-shadow:none;color:var(--crvacc-color-text-muted); transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-addtile:hover{border-color:var(--crvacc-color-link);background:var(--crvacc-color-bg-hover); color:var(--crvacc-color-link);text-decoration:none}
.crvacc .crvacc-addtile svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round}
.crvacc .crvacc-addtile b{font-size:var(--crvacc-font-size-small);font-weight:700}
.crvacc .crvacc-tabs{display:flex;gap:2px;border-bottom:1px solid var(--crvacc-color-border); margin-bottom:var(--crvacc-card-gap,18px);overflow-x:auto}
.crvacc .crvacc-tab{appearance:none;background:none;border:0;border-bottom:3px solid transparent; padding:10px 16px;font:600 var(--crvacc-font-size-small)/1.4 var(--crvacc-font-body); color:var(--crvacc-color-text-muted);cursor:pointer;white-space:nowrap; transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-tab:hover{color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-tab[aria-selected="true"]{color:var(--crvacc-color-text-heading);border-bottom-color:var(--crvacc-color-link)}
.crvacc .crvacc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--crvacc-card-gap,18px); grid-auto-rows:1fr}
.crvacc .crvacc-pcard{background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-md); box-shadow:var(--crvacc-shadow-card);padding:var(--crvacc-card-padding,20px);display:flex;flex-direction:column}
.crvacc .crvacc-pcard__top{display:flex;align-items:flex-start;gap:var(--crvacc-space-md,16px);margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-pcard__chip{width:52px;height:34px;flex:0 0 52px;border-radius:6px;background:var(--crvacc-color-bg-muted); border:1px solid var(--crvacc-color-border);display:grid;place-items:center; font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-pcard__num{font-family:var(--crvacc-font-mono);font-size:var(--crvacc-font-size-body); font-weight:500;color:var(--crvacc-color-text-heading);letter-spacing:-.02em}
.crvacc .crvacc-pcard__meta{font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-pcard__links{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-md,16px);margin-top:auto; padding-top:var(--crvacc-space-md,16px);border-top:1px solid var(--crvacc-color-border); font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-pcard__links .is-danger{color:var(--crvacc-color-danger)}
.crvacc .crvacc-pcard__links .is-danger:hover{color:#8a1e03}
.crvacc .crvacc-methods{list-style:none;margin:0;padding:0;display:grid; grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--crvacc-space-sm,8px) var(--crvacc-space-lg,22px)}
.crvacc .crvacc-methods li{display:flex;align-items:flex-start;gap:10px;font-size:var(--crvacc-font-size-small); padding:8px 0;border-bottom:1px solid var(--crvacc-color-border)}
.crvacc .crvacc-methods svg{width:18px;height:18px;flex:0 0 18px;margin-top:3px;stroke:var(--crvacc-color-text-muted); fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.crvacc .crvacc-methods b{display:block;color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-methods span{display:block;color:var(--crvacc-color-text-muted);font-size:var(--crvacc-font-size-tiny);line-height:1.45}
.crvacc .crvacc-empty{text-align:center;padding:var(--crvacc-space-xl,32px) var(--crvacc-space-md,16px)}
.crvacc .crvacc-empty__icon{width:56px;height:56px;margin:0 auto var(--crvacc-space-md,16px);border-radius:var(--crvacc-radius-pill); background:var(--crvacc-color-bg-muted);display:grid;place-items:center}
.crvacc .crvacc-empty__icon svg{width:26px;height:26px;stroke:var(--crvacc-color-text-muted);fill:none;stroke-width:1.5}
.crvacc .crvacc-empty p{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted); max-width:34em;margin:4px auto var(--crvacc-space-md,16px)}
.crvacc [data-page][hidden]{display:none}

/* ================= TABLET ================= */
@media (max-width:1024px){
.crvacc .crvacc-meta{gap:var(--crvacc-space-md,16px)}
.crvacc .crvacc-meta__value--addr{max-width:120px}
.crvacc .crvacc-info{grid-template-columns:repeat(2,minmax(0,1fr))}
.crvacc .crvacc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.crvacc .crvacc-tiles,.crvacc .crvacc-addrgrid,.crvacc .crvacc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ================= MOBILE ================= */
@media (max-width:768px){
/* il padding della card su mobile lo decide lo schema,non questo file */
.crvacc{padding:var(--crvacc-space-md,16px)}
.crvacc .crvacc-layout{grid-template-columns:1fr}
.crvacc .crvacc-navtrigger{display:flex}
.crvacc .crvacc-side{position:fixed;top:0;left:0;bottom:0;width:282px;z-index:70;border-radius:0;overflow-y:auto; transform:translateX(-100%);transition:transform .22s var(--crvacc-easing); box-shadow:0 0 40px rgba(15,17,17,.3);padding:var(--crvacc-space-md,16px)}
.crvacc .crvacc-side.is-open{transform:translateX(0)}
.crvacc .crvacc-meta{gap:var(--crvacc-space-sm,8px) var(--crvacc-space-lg,22px)}
.crvacc .crvacc-meta__item:nth-child(3){display:none}
.crvacc .crvacc-meta__end{margin-left:0;width:100%}
.crvacc .crvacc-grid{grid-template-columns:1fr;gap:var(--crvacc-space-md,16px)}
.crvacc .crvacc-rail{border-top:1px solid var(--crvacc-color-border);padding-top:var(--crvacc-space-md,16px)}
.crvacc .crvacc-wa__preview{position:static;opacity:1;visibility:visible;transform:none;margin-top:6px;box-shadow:none}
.crvacc .crvacc-wa__preview::before{display:none}
.crvacc .crvacc-step li{font-size:11px}
.crvacc .crvacc-filters{gap:6px}
.crvacc .crvacc-select{flex:1}
.crvacc .crvacc-cols{grid-template-columns:1fr;grid-template-areas:"items" "aside" "info"}
.crvacc .crvacc-area-aside{position:static}
.crvacc .crvacc-info{grid-template-columns:1fr}
.crvacc .crvacc-dhead__actions{margin-left:0;width:100%}
.crvacc .crvacc-steps li{padding-top:22px}
.crvacc .crvacc-steps .lbl{font-size:var(--crvacc-font-size-tiny)}
.crvacc .crvacc-steps .dt{font-size:11px}
.crvacc .crvacc-item__price{flex-basis:100%;text-align:left;margin-top:4px}
.crvacc .crvacc-item{flex-wrap:wrap}
.crvacc .crvacc-stats{gap:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-stat{padding:var(--crvacc-space-md,16px)}
.crvacc .crvacc-stat__value{font-size:20px}
.crvacc .crvacc-tiles,.crvacc .crvacc-addrgrid,.crvacc .crvacc-cards{grid-template-columns:1fr}
.crvacc .crvacc-addtile{min-height:120px}
.crvacc .crvacc-methods{grid-template-columns:1fr}
.crvacc .crvacc-now__cta{width:100%}
.crvacc .crvacc-now__cta .crvacc-btn{width:100%}
.crvacc .crvacc-strip{grid-auto-columns:minmax(132px,1fr)}}
/* ================= FORM,ACCESSO E DETTAGLI ================= */
/* Sezione scritta dopo i mockup: le pagine con form non c'erano.
   Consuma gli stessi token dello schema,nessun valore fisso. */

.crvacc-content{min-width:0}
.crvacc .crvacc-icon{width:1em;height:1em;flex:0 0 auto}

/* --- form --- */
.crvacc-form{margin:0}
.crvacc .crvacc-fields{display:grid;grid-template-columns:repeat(var(--crvacc-form-columns,2),minmax(0,1fr));
  gap:var(--crvacc-form-gap-y) var(--crvacc-form-gap-x)}
.crvacc .crvacc-field-row{margin:0;display:flex;flex-direction:column;gap:var(--crvacc-form-label-gap);min-width:0}
.crvacc .crvacc-field-row--wide,.crvacc .crvacc-field-row--full{grid-column:1/-1}

.crvacc .crvacc-fields label,.crvacc .crvacc-form .form-row label,.crvacc .crvacc-form .woocommerce-form-row label{
  font-family:var(--crvacc-form-label-font-family,inherit);
  font-size:var(--crvacc-form-label-font-size);
  font-weight:var(--crvacc-form-label-font-weight);
  text-transform:var(--crvacc-form-label-font-transform);
  color:var(--crvacc-form-label-color);margin:0}
.crvacc .crvacc-fields .required,.crvacc .crvacc-form .required{color:var(--crvacc-form-required-color);text-decoration:none;border:0}

.crvacc .crvacc-input,.crvacc .crvacc-form input[type=text],.crvacc .crvacc-form input[type=email],.crvacc .crvacc-form input[type=tel],.crvacc .crvacc-form input[type=password],.crvacc .crvacc-form input[type=search],.crvacc .crvacc-form select,.crvacc .crvacc-form .select2-container--default .select2-selection--single{
  width:100%;height:var(--crvacc-form-input-height,44px);
  padding:0 var(--crvacc-form-input-padding-x);
  font-family:inherit;font-size:var(--crvacc-form-input-font-size);
  color:var(--crvacc-form-input-color);background:var(--crvacc-form-input-bg);
  border-style:var(--crvacc-form-input-border-style);
  border-width:var(--crvacc-form-input-border-width);
  border-color:var(--crvacc-form-input-border-color);
  border-radius:var(--crvacc-form-input-radius);
  transition:border-color var(--crvacc-duration) var(--crvacc-easing),box-shadow var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-form textarea{width:100%;min-height:120px;padding:12px var(--crvacc-form-input-padding-x);
  font-family:inherit;font-size:var(--crvacc-form-input-font-size);
  color:var(--crvacc-form-input-color);background:var(--crvacc-form-input-bg);
  border-style:var(--crvacc-form-input-border-style);border-width:var(--crvacc-form-input-border-width);
  border-color:var(--crvacc-form-input-border-color);border-radius:var(--crvacc-form-input-radius)}
.crvacc .crvacc-input::placeholder,.crvacc .crvacc-form input::placeholder{color:var(--crvacc-form-input-placeholder)}
.crvacc .crvacc-input:focus,.crvacc .crvacc-form input:focus,.crvacc .crvacc-form select:focus,.crvacc .crvacc-form textarea:focus{
  outline:none;border-color:var(--crvacc-form-input-border-focus);
  box-shadow:0 0 0 var(--crvacc-form-focus-ring-width) color-mix(in srgb,var(--crvacc-color-focus-ring) 35%,transparent)}
.crvacc .crvacc-input:disabled,.crvacc .crvacc-form input:disabled{background:var(--crvacc-form-input-disabled-bg);cursor:not-allowed}
.crvacc .crvacc-field-help,.crvacc .crvacc-form .description{display:block;font-size:var(--crvacc-form-help-size);
  color:var(--crvacc-color-text-muted);line-height:1.45}
.crvacc .crvacc-form .woocommerce-invalid input{border-color:var(--crvacc-form-error-color)}

/* Le righe generate da woocommerce_form_field seguono la stessa griglia:
   i campi indirizzo cambiano da paese a paese e non li stampiamo noi. */
.crvacc-form .form-row{margin:0;display:flex;flex-direction:column;gap:var(--crvacc-form-label-gap);min-width:0}
.crvacc .crvacc-form .form-row-wide,.crvacc .crvacc-form .form-row-full{grid-column:1/-1}

.crvacc .crvacc-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  font-size:var(--crvacc-font-size-small)}
.crvacc .crvacc-check__input{width:auto;height:auto;margin:0}

.crvacc .crvacc-intro{margin-bottom:var(--crvacc-card-gap,18px);color:var(--crvacc-color-text-muted);
  font-size:var(--crvacc-font-size-small)}

/* --- accesso e registrazione --- */
.crvacc-login{display:grid;gap:var(--crvacc-card-gap,18px);max-width:520px;margin:0 auto}
.crvacc .crvacc-login--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
.crvacc .crvacc-login__box h2{font-size:var(--crvacc-font-size-h3);margin-bottom:4px}
.crvacc .crvacc-login__sub{color:var(--crvacc-color-text-muted);font-size:var(--crvacc-font-size-small);
  margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-login__box .crvacc-field-row{margin-bottom:var(--crvacc-form-gap-y)}
.crvacc .crvacc-login__row{display:flex;align-items:center;justify-content:space-between;gap:var(--crvacc-space-md,16px);
  flex-wrap:wrap;margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-login__lost{font-size:var(--crvacc-font-size-small)}

/* --- ricerca ordine per ospiti --- */
.crvacc-lookup{margin-top:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-lookup__lead{color:var(--crvacc-color-text-muted);font-size:var(--crvacc-font-size-small);
  margin-bottom:var(--crvacc-space-md,16px)}
.crvacc .crvacc-lookup__form{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--crvacc-space-sm,8px);align-items:end}
.crvacc .crvacc-lookup__error{color:var(--crvacc-form-error-color);font-size:var(--crvacc-font-size-small);
  margin-top:var(--crvacc-space-sm,8px)}

/* --- azioni di contatto --- */
.crvacc-contact{display:flex;flex-direction:column;gap:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-contact__hours{font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted);
  margin-top:var(--crvacc-space-xs,4px);text-align:center}

/* --- dettagli rimasti scoperti --- */
.crvacc-avatar--img img{width:100%;height:100%;border-radius:inherit;display:block}
.crvacc .crvacc-themetoggle{margin-left:auto;background:none;border:0;padding:6px;cursor:pointer;
  color:var(--crvacc-color-text-muted);border-radius:var(--crvacc-radius-md)}
.crvacc .crvacc-themetoggle:hover{background:var(--crvacc-color-bg-hover);color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-nav__label{flex:1;min-width:0}
.crvacc .crvacc-order__body{padding:var(--crvacc-card-padding,20px)}
.crvacc .crvacc-status__title{font-size:var(--crvacc-font-size-h3);font-weight:700;letter-spacing:-.01em}
.crvacc .crvacc-items__more{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);
  margin-top:var(--crvacc-space-sm,8px)}
.crvacc .crvacc-orders--compact .crvacc-order{box-shadow:none;border:1px solid var(--crvacc-color-border)}
.crvacc .crvacc-steps__lbl{display:block}
.crvacc .crvacc-steps__dt{display:block;font-size:var(--crvacc-font-size-tiny);opacity:.8;margin-top:1px}
.crvacc .crvacc-track__eta{font-family:var(--crvacc-track-eta-font-family,inherit);
  font-size:var(--crvacc-track-eta-font-size);font-weight:var(--crvacc-track-eta-font-weight);
  line-height:var(--crvacc-track-eta-font-line-height);color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-panel--bare{background:none;box-shadow:none;padding:0}
.crvacc .crvacc-panel--hooked:empty{display:none}
.crvacc .crvacc-panel__body{min-width:0}
.crvacc .crvacc-pagination ul{display:flex;gap:4px;list-style:none;margin:var(--crvacc-card-gap,18px) 0 0;padding:0;
  justify-content:center;flex-wrap:wrap}
.crvacc .crvacc-pagination a,.crvacc .crvacc-pagination span{display:grid;place-items:center;
  min-width:var(--crvacc-pagination-size,36px);height:var(--crvacc-pagination-size,36px);
  padding:0 10px;border-radius:var(--crvacc-pagination-radius);
  border:1px solid var(--crvacc-color-border);background:var(--crvacc-color-bg-card);
  font-size:var(--crvacc-font-size-small);text-decoration:none}
.crvacc .crvacc-pagination a:hover{background:var(--crvacc-color-bg-hover);text-decoration:none}
.crvacc .crvacc-pagination .current{background:var(--crvacc-color-primary);color:#fff;border-color:var(--crvacc-color-primary)}

@media (max-width:768px){
  .crvacc .crvacc-fields,.crvacc .crvacc-login--two{grid-template-columns:1fr}
  .crvacc .crvacc-lookup__form{grid-template-columns:1fr}
  .crvacc .crvacc-actions--row .crvacc-btn{width:100%}}

/* Varianti dichiarate dai template ma senza regole proprie: esistono come
   aggancio per il CSS personalizzato del cliente. Meglio dichiararle vuote
   che lasciarle sembrare una dimenticanza. */
.crvacc-fields--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.crvacc .crvacc-track{position:relative}

/* --- download --- */
.crvacc-dl{display:flex;flex-direction:column;gap:var(--crvacc-space-md,16px)}
.crvacc .crvacc-dl__item{display:flex;align-items:center;gap:var(--crvacc-space-md,16px);
  padding:var(--crvacc-space-md,16px) 0;border-top:1px solid var(--crvacc-color-border);min-width:0}
.crvacc .crvacc-dl__item:first-child{border-top:0;padding-top:0}
.crvacc .crvacc-dl__body{flex:1;min-width:0}
.crvacc .crvacc-dl__name{display:block;font-weight:600;color:var(--crvacc-color-text-heading);line-height:1.35}
.crvacc .crvacc-dl__meta{font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted);margin-top:2px}
.crvacc .crvacc-dl__cta{flex:0 0 auto}
@media (max-width:768px){
  .crvacc .crvacc-dl__item{flex-wrap:wrap}
  .crvacc .crvacc-dl__cta{flex-basis:100%}
  .crvacc .crvacc-dl__cta .crvacc-btn{width:100%}}

/* La pagina di accesso non passa da my-account.php: WooCommerce la carica
   da sola. Il contenitore esiste ma senza sidebar,quindi il layout a
   griglia non si applica e serve un contenimento proprio. */


/* I campi che le estensioni aggiungono al profilo non seguono la nostra
   griglia a due colonne: occupano tutta la riga, che e' l'unica ipotesi
   sicura non sapendo cosa contengono. */
.crvacc .crvacc-fields--extra{grid-template-columns:1fr}

/* ================= TABELLE DI WOOCOMMERCE ================= */
/* La tabella articoli del dettaglio ordine la stampa WooCommerce, ed e'
   giusto cosi': e' li' che i plugin di fatturazione, spedizione e fedelta'
   aggiungono righe ai totali. Riscriverla darebbe piu' controllo e farebbe
   sparire i loro dati. Si veste, non si sostituisce. */

/* Il titolo di WooCommerce duplicherebbe quello del nostro pannello. */
.crvacc .woocommerce-order-details__title,
.crvacc .woocommerce-column__title{display:none}

.crvacc .shop_table{width:100%;border-collapse:collapse;border:0;margin:0;
  font-size:var(--crvacc-font-size-small)}
.crvacc .shop_table th,
.crvacc .shop_table td{padding:var(--crvacc-space-md,16px) 0;border:0;
  border-bottom:1px solid var(--crvacc-color-border);text-align:left;vertical-align:top}
.crvacc .shop_table td:last-child,
.crvacc .shop_table th:last-child{text-align:right;white-space:nowrap}

.crvacc .shop_table thead th{padding-top:0;font-size:11px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--crvacc-color-text-muted)}

.crvacc .shop_table tbody td{color:var(--crvacc-color-text-base)}
.crvacc .shop_table tbody a{font-weight:500}
.crvacc .shop_table .product-quantity{color:var(--crvacc-color-text-muted);font-weight:400}

.crvacc .shop_table tfoot th{font-weight:500;color:var(--crvacc-color-text-muted)}
.crvacc .shop_table tfoot td{font-variant-numeric:tabular-nums}
/* L'ultima riga dei totali e' il totale vero: e' l'unico numero che merita risalto. */
.crvacc .shop_table tfoot tr:last-child th,
.crvacc .shop_table tfoot tr:last-child td{border-bottom:0;
  font-size:var(--crvacc-font-size-h3);font-weight:700;color:var(--crvacc-color-text-heading);
  padding-bottom:0}
.crvacc .shop_table tfoot tr:last-child th{color:var(--crvacc-color-text-heading)}

/* I pulsanti azione dentro i totali (Pagamento, Annulla) prendono il nostro
   aspetto senza doverli reimplementare. */
.crvacc .shop_table .button,
.crvacc .woocommerce-button{display:inline-flex;align-items:center;justify-content:center;
  gap:var(--crvacc-btn-gap);padding:var(--crvacc-btn-padding);
  border-radius:var(--crvacc-btn-radius);border:1px solid var(--crvacc-btn-secondary-border-color);
  background:var(--crvacc-btn-secondary-bg);color:var(--crvacc-btn-secondary-color);
  font-size:var(--crvacc-btn-font-size);font-weight:var(--crvacc-btn-weight);
  line-height:1.2;text-decoration:none;box-shadow:var(--crvacc-shadow-btn);
  margin:0 0 0 var(--crvacc-space-sm,8px)}
.crvacc .shop_table .button:hover,
.crvacc .woocommerce-button:hover{background:var(--crvacc-color-bg-hover);text-decoration:none}
.crvacc .shop_table .button.pay,
.crvacc .woocommerce-button.pay{background:var(--crvacc-btn-primary-bg);
  border-color:var(--crvacc-btn-primary-border-color);color:var(--crvacc-btn-primary-color)}
.crvacc .shop_table .button.pay:hover{background:var(--crvacc-btn-primary-bg-hover)}

/* Il blocco indirizzi del core resta usato fuori dall'area account: quando
   compare qui dentro va comunque incolonnato come le nostre schede. */
.crvacc .woocommerce-customer-details{margin:0}
.crvacc .woocommerce-customer-details address{font-style:normal;
  font-size:var(--crvacc-font-size-small);line-height:1.65;border:0;padding:0}

@media (max-width:768px){
  .crvacc .shop_table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .crvacc .shop_table tbody td,
  .crvacc .shop_table tfoot th,
  .crvacc .shop_table tfoot td{padding:var(--crvacc-space-sm,8px) 0}
  .crvacc .shop_table .button,
  .crvacc .woocommerce-button{width:100%;margin:var(--crvacc-space-sm,8px) 0 0}
}

/* ================= DETTAGLIO ORDINE ================= */
/* Gli articoli sono card come nell'elenco, non righe di tabella: e' la
   miniatura a rendere riconoscibile un ordine a colpo d'occhio. */
.crvacc .crvacc-items--detail{gap:0}
.crvacc .crvacc-items--detail .crvacc-item{padding:var(--crvacc-space-md,16px) 0;
  border-top:1px solid var(--crvacc-color-border);align-items:flex-start}
.crvacc .crvacc-items--detail .crvacc-item:first-child{border-top:0;padding-top:0}
.crvacc .crvacc-items--detail .crvacc-item:last-child{padding-bottom:0}
.crvacc .crvacc-item__price{flex:0 0 auto;text-align:right;white-space:nowrap;
  font-weight:700;color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-item__note{margin-top:6px;font-size:var(--crvacc-font-size-small);
  color:var(--crvacc-color-text-muted)}
/* wc_display_item_meta stampa le varianti come lista di definizioni. */
.crvacc .crvacc-item__body .wc-item-meta{list-style:none;margin:4px 0 0;padding:0;
  font-size:var(--crvacc-font-size-small);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-item__body .wc-item-meta li{display:flex;gap:6px;margin:0}
.crvacc .crvacc-item__body .wc-item-meta strong{font-weight:600}
.crvacc .crvacc-item__body .wc-item-meta p{margin:0}

/* La miniatura non deve schiacciarsi nelle colonne strette. */
.crvacc .crvacc-thumb img{width:100%;height:100%;max-width:100%;min-width:0;object-fit:cover;display:block;
  border-radius:inherit}

/* Le tre schede in fondo restano leggibili anche strette. */
.crvacc .crvacc-info address{white-space:normal;word-break:normal;hyphens:none}
.crvacc .crvacc-panel__title{white-space:normal}

@media (max-width:768px){
  .crvacc .crvacc-items--detail .crvacc-item{flex-wrap:wrap}
  .crvacc .crvacc-item__price{flex-basis:100%;text-align:left;margin-top:4px}
}

/* Le tre schede in fondo occupano tutta la larghezza, non la sola colonna
   degli articoli: strette a un terzo di mezza pagina il testo andava a capo
   una parola per riga. */
.crvacc .crvacc-area-info{grid-column:1 / -1}
.crvacc .crvacc-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--crvacc-card-gap,18px)}
.crvacc .crvacc-info .crvacc-panel{margin-bottom:0;height:100%}
.crvacc .crvacc-info .crvacc-panel__title{white-space:nowrap}
.crvacc .crvacc-info address{white-space:normal}

@media (max-width:1024px){
  .crvacc .crvacc-cols{grid-template-columns:1fr;grid-template-areas:"items" "aside" "info"}
  .crvacc .crvacc-info{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:768px){
  .crvacc .crvacc-info{grid-template-columns:1fr}
  .crvacc .crvacc-info .crvacc-panel__title{white-space:normal}
}

/* ================= ACCESSO E REGISTRAZIONE ================= */
.crvacc.crvacc--login{max-width:var(--crvacc-container-width,1200px);margin:0 auto}

.crvacc .crvacc-auth{display:grid;
  grid-template-columns:var(--crvacc-login-image-width,50%) minmax(0,1fr);
  min-height:var(--crvacc-login-min-height,660px);background:var(--crvacc-color-bg-card);
  border-radius:var(--crvacc-login-radius,16px);overflow:hidden;box-shadow:var(--crvacc-shadow-card)}
.crvacc .crvacc-auth>*{min-width:0}
/* L'immagine si sposta solo visivamente: nel markup il modulo resta primo,
   cosi' chi naviga da tastiera trova i campi prima della decorazione. */
.crvacc .crvacc-auth[data-image="right"]{grid-template-columns:minmax(0,1fr) var(--crvacc-login-image-width,50%)}
.crvacc .crvacc-auth[data-image="right"] .crvacc-auth__media{order:2}
.crvacc .crvacc-auth--centered{grid-template-columns:minmax(0,1fr);min-height:0;
  max-width:calc(var(--crvacc-login-form-width,400px) + var(--crvacc-space-xl,32px) * 4);margin:0 auto}
.crvacc .crvacc-auth--centered .crvacc-auth__media{display:none}

/* --- meta' immagine --- */
.crvacc .crvacc-auth__media{position:relative;overflow:hidden;display:flex;align-items:flex-end;
  padding:var(--crvacc-space-xl,32px);color:#fff;
  /* Sfondo di riserva quando non c'e' un'immagine caricata: costruito con i
     colori del negozio, cosi' la pagina non e' mai grigia e vuota. */
  background:
    radial-gradient(120% 80% at 20% 10%, color-mix(in srgb,var(--crvacc-color-link) 55%,transparent) 0%, transparent 55%),
    radial-gradient(140% 100% at 60% 110%, rgba(6,20,32,.92) 0%, transparent 62%),
    linear-gradient(160deg, var(--crvacc-color-link) 0%, #0e2b3f 55%, #071c2c 100%)}
.crvacc .crvacc-auth__img{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:var(--crvacc-login-image-focus,center);display:block}
.crvacc .crvacc-auth__media::before{content:"";position:absolute;inset:0;
  background:var(--crvacc-login-overlay)}
.crvacc .crvacc-auth__claim{position:relative;z-index:2;max-width:26em}
.crvacc .crvacc-auth__claim h2{color:#fff;font-size:clamp(19px,2.1vw,26px);font-weight:700;
  line-height:1.25;margin:0 0 8px;letter-spacing:-.02em}
.crvacc .crvacc-auth__claim p{color:rgba(255,255,255,.82);font-size:var(--crvacc-font-size-small);line-height:1.6}
.crvacc .crvacc-auth__badge{display:inline-flex;align-items:center;gap:7px;
  margin-bottom:var(--crvacc-space-md,16px);padding:5px 12px;border-radius:var(--crvacc-radius-pill);
  background:rgba(255,255,255,.16);backdrop-filter:blur(6px);color:#fff;
  font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.crvacc .crvacc-auth__badge .crvacc-icon{width:13px;height:13px}

/* --- meta' modulo --- */
.crvacc .crvacc-auth__form{display:flex;align-items:center;justify-content:center;
  padding:var(--crvacc-space-xl,32px)}
.crvacc .crvacc-auth__inner{width:100%;max-width:var(--crvacc-login-form-width,400px)}
.crvacc .crvacc-auth__head{margin-bottom:var(--crvacc-space-lg,22px)}
.crvacc .crvacc-auth__head h1{font-size:var(--crvacc-font-size-h1);letter-spacing:-.025em}
.crvacc .crvacc-auth__head p{margin-top:6px;color:var(--crvacc-color-text-muted);
  font-size:var(--crvacc-font-size-small)}

.crvacc .crvacc-authtabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;
  background:var(--crvacc-color-bg-muted);border-radius:var(--crvacc-radius-md);
  margin-bottom:var(--crvacc-space-lg,22px)}
.crvacc .crvacc-authtabs button{appearance:none;border:0;background:none;cursor:pointer;
  padding:10px 8px;border-radius:6px;color:var(--crvacc-color-text-muted);
  font:600 var(--crvacc-font-size-small)/1.2 var(--crvacc-font-body);
  transition:all var(--crvacc-duration) var(--crvacc-easing)}
.crvacc .crvacc-authtabs button[aria-selected="true"]{background:var(--crvacc-color-bg-card);
  color:var(--crvacc-color-text-heading);box-shadow:var(--crvacc-shadow-btn)}

.crvacc .crvacc-field{margin-bottom:var(--crvacc-space-md,16px);position:relative}
.crvacc .crvacc-field label{display:block;margin-bottom:var(--crvacc-form-label-gap);
  font-size:var(--crvacc-form-label-font-size);font-weight:var(--crvacc-form-label-font-weight);
  color:var(--crvacc-form-label-color)}
.crvacc .crvacc-field--pass .crvacc-input{padding-right:46px}
.crvacc .crvacc-eye{position:absolute;right:6px;bottom:6px;width:36px;height:36px;
  display:grid;place-items:center;background:none;border:0;cursor:pointer;
  color:var(--crvacc-color-text-muted);border-radius:6px}
.crvacc .crvacc-field--pass:has(.crvacc-help) .crvacc-eye{bottom:auto;
  top:calc(var(--crvacc-form-input-height,44px) - 6px)}
.crvacc .crvacc-eye:hover{background:var(--crvacc-color-bg-muted);color:var(--crvacc-color-text-heading)}
.crvacc .crvacc-eye .crvacc-icon{width:18px;height:18px}
.crvacc .crvacc-help{display:block;margin-top:6px;font-size:var(--crvacc-form-help-size);
  color:var(--crvacc-color-text-muted);line-height:1.5}

.crvacc .crvacc-row{display:flex;align-items:center;justify-content:space-between;
  gap:var(--crvacc-space-md,16px);flex-wrap:wrap;margin-bottom:var(--crvacc-space-lg,22px)}
.crvacc .crvacc-sep{display:flex;align-items:center;gap:12px;margin:var(--crvacc-space-lg,22px) 0;
  color:var(--crvacc-color-text-muted);font-size:var(--crvacc-font-size-tiny)}
.crvacc .crvacc-sep::before,.crvacc .crvacc-sep::after{content:"";flex:1;height:1px;
  background:var(--crvacc-color-border)}
.crvacc .crvacc-legal{margin-top:var(--crvacc-space-md,16px);font-size:var(--crvacc-font-size-tiny);
  color:var(--crvacc-color-text-muted);line-height:1.55}
.crvacc .crvacc-trust{display:flex;flex-wrap:wrap;gap:var(--crvacc-space-md,16px);
  margin-top:var(--crvacc-space-lg,22px);padding-top:var(--crvacc-space-md,16px);
  border-top:1px solid var(--crvacc-color-border)}
.crvacc .crvacc-trust span{display:inline-flex;align-items:center;gap:6px;
  font-size:var(--crvacc-font-size-tiny);color:var(--crvacc-color-text-muted)}
.crvacc .crvacc-trust .crvacc-icon{width:14px;height:14px;color:var(--crvacc-color-success)}

@media (max-width:768px){
  /* Su telefono l'immagine diventa una fascia: meta' schermo di foto
     spingerebbe il modulo sotto la piega, e chi arriva qui vuole entrare. */
  .crvacc .crvacc-auth,
  .crvacc .crvacc-auth[data-image="right"]{grid-template-columns:1fr;min-height:0}
  .crvacc .crvacc-auth__media,
  .crvacc .crvacc-auth[data-image="right"] .crvacc-auth__media{order:0;
    min-height:var(--crvacc-login-mobile-image-height,190px);padding:var(--crvacc-space-md,16px)}
  .crvacc .crvacc-auth__claim p{display:none}
  .crvacc .crvacc-auth__form{padding:var(--crvacc-space-lg,22px) var(--crvacc-space-md,16px)}
}

/* ================= VARIANTI DI STRUTTURA ================= */
/* La classe sul contenitore cambia con l'impostazione "Struttura". Il
   markup resta lo stesso in tutti i casi: cambia solo la disposizione,
   cosi' le voci di menu restano quelle di WooCommerce e nessuna estensione
   si accorge della differenza. */

/* --- sidebar a sinistra: e' la disposizione di base, nessuna regola --- */

/* --- sidebar a destra --- */
.crvacc.crvacc--sidebar-right .crvacc-layout{
  grid-template-columns:minmax(0,1fr) var(--crvacc-sidebar-width,262px)}
/* Lo spostamento e' solo visivo: nel codice la navigazione resta prima del
   contenuto, come si aspetta chi naviga da tastiera o con screen reader. */
.crvacc.crvacc--sidebar-right .crvacc-side{order:2}

/* --- navigazione orizzontale --- */
.crvacc.crvacc--topbar .crvacc-layout{grid-template-columns:minmax(0,1fr)}
.crvacc.crvacc--topbar .crvacc-side{position:static;display:flex;align-items:center;
  gap:var(--crvacc-space-lg,22px);padding:var(--crvacc-space-sm,8px) var(--crvacc-space-md,16px);
  max-height:none;overflow:visible}
.crvacc.crvacc--topbar .crvacc-user{flex:0 0 auto;padding:0;border:0;margin:0}
.crvacc.crvacc--topbar .crvacc-user__meta{display:none}
.crvacc.crvacc--topbar .crvacc-nav{flex:1;min-width:0;border:0;padding:0;margin:0}
.crvacc.crvacc--topbar .crvacc-nav ul{flex-direction:row;gap:2px;
  overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.crvacc.crvacc--topbar .crvacc-nav li{flex:0 0 auto}
.crvacc.crvacc--topbar .crvacc-nav a{white-space:nowrap;
  padding:var(--crvacc-space-sm,8px) var(--crvacc-space-md,16px);border-left:0;
  border-bottom:2px solid transparent}
/* La voce attiva si segna sotto, non a lato: in orizzontale il bordo
   laterale non si legge come "sei qui". */
.crvacc.crvacc--topbar .crvacc-nav a[aria-current="page"]{
  border-left:0;border-bottom-color:var(--crvacc-color-primary);
  background:none}
.crvacc.crvacc--topbar .crvacc-nav__sep{border:0;padding:0;margin-left:auto}
.crvacc.crvacc--topbar .crvacc-nav__sep ul{flex-direction:row}

/* --- griglia a card --- */
/* La navigazione diventa il contenuto: e' la schermata iniziale dei grandi
   marketplace, dove ogni sezione e' un riquadro invece di una voce di elenco. */
.crvacc.crvacc--cards .crvacc-layout{grid-template-columns:minmax(0,1fr)}
.crvacc.crvacc--cards .crvacc-side{position:static;max-height:none;overflow:visible;
  background:none;box-shadow:none;border:0;padding:0}
.crvacc.crvacc--cards .crvacc-user{margin-bottom:var(--crvacc-card-gap,18px);
  background:var(--crvacc-color-bg-card);border-radius:var(--crvacc-radius-lg);
  padding:var(--crvacc-card-padding,20px);box-shadow:var(--crvacc-shadow-card)}
.crvacc.crvacc--cards .crvacc-nav{border:0;padding:0}
.crvacc.crvacc--cards .crvacc-nav ul{display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--crvacc-card-gap,18px)}
.crvacc.crvacc--cards .crvacc-nav a{flex-direction:row;align-items:center;
  gap:var(--crvacc-space-md,16px);padding:var(--crvacc-card-padding,20px);
  background:var(--crvacc-color-bg-card);border:1px solid var(--crvacc-color-border);
  border-left:1px solid var(--crvacc-color-border);
  border-radius:var(--crvacc-radius-lg);box-shadow:var(--crvacc-shadow-card);
  font-weight:600;color:var(--crvacc-color-text-heading)}
.crvacc.crvacc--cards .crvacc-nav a:hover{background:var(--crvacc-color-bg-hover);
  border-color:var(--crvacc-color-border-strong);text-decoration:none}
.crvacc.crvacc--cards .crvacc-nav a[aria-current="page"]{
  border-color:var(--crvacc-color-primary)}
.crvacc.crvacc--cards .crvacc-nav .crvacc-icon{width:26px;height:26px;flex:0 0 auto;
  color:var(--crvacc-color-text-muted)}
.crvacc.crvacc--cards .crvacc-nav__sep{border:0;margin-top:var(--crvacc-card-gap,18px);padding:0}
.crvacc.crvacc--cards .crvacc-nav__sep ul{display:flex}
.crvacc.crvacc--cards .crvacc-nav__sep a{background:none;border:0;box-shadow:none;
  padding:var(--crvacc-space-sm,8px) 0;font-weight:400}

@media (max-width:1024px){
  /* In orizzontale la card utente ruba spazio alle voci: sotto una certa
     larghezza conta piu' poter raggiungere le sezioni. */
  .crvacc.crvacc--topbar .crvacc-user{display:none}
}
@media (max-width:768px){
  /* Le due varianti con sidebar tornano al pannello a scomparsa, che e' il
     comportamento gia' previsto per il telefono. La griglia a card no: li'
     la navigazione E' il contenuto, e nasconderla lascerebbe una pagina vuota. */
  .crvacc.crvacc--cards .crvacc-side{position:static;transform:none;visibility:visible;
    width:auto;box-shadow:none}
  .crvacc.crvacc--cards .crvacc-navtrigger{display:none}
  .crvacc.crvacc--cards .crvacc-nav ul{grid-template-columns:1fr}
  .crvacc.crvacc--topbar .crvacc-side{display:flex;position:static;transform:none;
    visibility:visible;width:auto;box-shadow:none;flex-wrap:wrap}
  .crvacc.crvacc--topbar .crvacc-navtrigger{display:none}
  /* La variante ha piu' classi della regola generale del telefono e le
     vincerebbe contro: va ripetuta qui perche' torni a una colonna. */
  .crvacc.crvacc--sidebar-right .crvacc-layout,
  .crvacc.crvacc--sidebar-left .crvacc-layout{grid-template-columns:1fr}
}

/* ================= CONTENIMENTO ================= */
/* Nelle griglie CSS ogni cella ha `min-width:auto`: un pulsante con
   un'etichetta lunga non puo' restringersi e allarga la colonna oltre lo
   spazio disponibile. L'eccedenza si propaga poi a tutti i contenitori
   sopra, fino a far comparire la barra di scorrimento orizzontale.
   Dichiararlo esplicitamente e' l'unico modo per fermarla. */
.crvacc .crvacc-grid > *,
.crvacc .crvacc-cols > *,
.crvacc .crvacc-layout > *,
.crvacc .crvacc-items > *,
.crvacc .crvacc-item > *{min-width:0}

.crvacc .crvacc-rail{min-width:0}
.crvacc .crvacc-rail .crvacc-btn{width:100%;min-width:0;
  white-space:normal;text-align:center;overflow-wrap:anywhere}
.crvacc .crvacc-wa{min-width:0}

/* Il testo dei pulsanti non deve poter allargare la colonna. */
.crvacc .crvacc-btn span{min-width:0;overflow-wrap:anywhere}

/* L'indirizzo nella striscia meta e' gia' troncato: senza min-width la
   troncatura non basta, perche' la cella si allarga comunque. */
.crvacc .crvacc-meta__item{min-width:0}
.crvacc .crvacc-meta{flex-wrap:wrap}

/* Rete di sicurezza: nulla dentro l'area account puo' produrre
   scorrimento orizzontale della pagina. */
.crvacc{overflow-x:clip}
