/* ============================================================
   VIVO — la "pelle" del gestionale (stile dashboard morbida).
   Cambia SOLO l'aspetto: colori, caratteri, angoli, ombre, effetti.
   Non sposta niente: ogni tasto e riquadro resta dove sta.
   Si carica in fondo alla pagina (da menu_pannello) e vince sugli stili
   della pagina. Toglierlo = tutto torna come prima.

   Due temi: html[data-tema="notte"] (di base) e html[data-tema="giorno"].
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Urbanist:wght@400;500;600;700;800;900&display=swap');

/* ---------- colori: notte ---------- */
html[data-tema] body{
  --v-fondo:radial-gradient(1200px 700px at 10% -10%,rgba(139,124,246,.16),transparent 60%),radial-gradient(1000px 700px at 110% 110%,rgba(242,102,43,.14),transparent 60%),#15141B;
  --v-card:#1F1E27; --v-card2:#292833; --v-linea:#34323F; --v-txt:#F3F2F7; --v-mut:#9491A3;
  --v-acc:#F2662B; --v-acc2:#FF8A4C; --v-ombra:0 10px 28px rgba(0,0,0,.35);
  /* nomi usati dalle pagine (cassa, cucina, contabilita, centrale…) */
  --bg:#15141B; --card:var(--v-card); --card2:var(--v-card2); --linea:var(--v-linea); --txt:var(--v-txt); --mut:var(--v-mut);
  --acc:var(--v-acc); --acc2:var(--v-acc2);
  /* style.css (palmare) */
  --surface:var(--v-card); --surface2:var(--v-card2); --border:var(--v-linea); --text:var(--v-txt); --muted:var(--v-mut); --amber:var(--v-acc);
  /* tema.css / varianti */
  --cenere:#15141B; --carbone:var(--v-card); --carbone2:var(--v-card2); --riga:var(--v-linea); --panna:var(--v-txt); --fumo:var(--v-mut); --brace:var(--v-acc); --brace2:var(--v-acc2);
  --font:'Urbanist',system-ui,sans-serif; --font-ui:'Urbanist',system-ui,sans-serif; --testo:'Urbanist',system-ui,sans-serif;
}
/* ---------- colori: giorno (come il video: lilla, pesca, bianco) ---------- */
html[data-tema="giorno"] body{
  --v-fondo:linear-gradient(135deg,#EEF0FF 0%,#F6EEFB 45%,#FFEFEA 100%);
  --v-card:#FFFFFF; --v-card2:#F2F2F7; --v-linea:#E5E5EE; --v-txt:#15161C; --v-mut:#7D8090;
  --v-ombra:0 10px 28px rgba(40,30,80,.08);
  --bg:#F3F1FA; --cenere:#F3F1FA;
}

html[data-tema] body{background:var(--v-fondo)!important;background-attachment:fixed!important;color:var(--v-txt)!important;font-family:'Urbanist',system-ui,sans-serif!important;-webkit-font-smoothing:antialiased}
html[data-tema] body :is(button,input,select,textarea){font-family:inherit}

/* ---------- forme: riquadri morbidi, ombre leggere ---------- */
html[data-tema] :is(.card,.stat,.ticket,.modal,.t-btn,.gm-prod,.tq-prod,.tq-cat,.g,.gc,.ed,.s,.cat,.com,.riquadro,.col,.box-v){border-radius:20px!important}
html[data-tema] :is(.card,.stat,.ticket,.modal,.gc,.ed,.s){box-shadow:var(--v-ombra)!important}
html[data-tema] :is(input,select,textarea):not([type=checkbox]):not([type=radio]){border-radius:12px!important}
html[data-tema] :is(.btn,.tb-btn,.tb,.nav-btn,.btn-av,.btn-t,.mi-btn,.az){border-radius:99px!important}
html[data-tema] :is(.modal,.sheet){border-radius:26px!important}

/* il tasto principale: arancione sfumato come nel video */
html[data-tema] :is(.btn:not(.ghost):not(.small),.btn-full.btn-acc,.btn-acc,.salva,.b-sal){background:linear-gradient(160deg,var(--v-acc2),var(--v-acc))!important;color:#fff!important;border-color:transparent!important}

/* tutto quello che si tocca si "schiaccia" un poco */
html[data-tema] :is(button,.t-btn,.gm-prod,.tq-prod,.tq-cat,[data-act]){transition:transform .12s ease,background-color .2s,box-shadow .2s}
html[data-tema] :is(button,.t-btn,.gm-prod,.tq-prod,.tq-cat,[data-act]):active{transform:scale(.96)}
html[data-tema] :is(.card,.t-btn,.gc){transition:transform .2s ease,box-shadow .2s ease}
@media (hover:hover){html[data-tema] :is(.t-btn,.gc,.gm-prod,.tq-prod,.tq-cat):hover{transform:translateY(-2px)}}

/* ---------- giorno: correggo i colori scuri scritti dentro le pagine ---------- */
html[data-tema="giorno"] :is(.app-header,.topbar,.top,.testa,.m-nav,.hud,.barra){background:rgba(255,255,255,.72)!important;backdrop-filter:blur(14px);border-color:var(--v-linea)!important;color:var(--v-txt)!important}
html[data-tema="giorno"] .lx-apri{background:#fff!important;color:var(--v-txt)!important;border-color:var(--v-linea)!important}
html[data-tema="giorno"] :is(input,select,textarea){background:#fff!important;color:var(--v-txt)!important;border-color:var(--v-linea)!important}
html[data-tema="giorno"] :is(.card,.ticket,.modal,.t-btn,.gm-prod,.tq-prod){color:var(--v-txt)}

/* ---------- effetti (scelta B) ---------- */
.v-onda{position:absolute;border-radius:50%;background:rgba(255,255,255,.45);transform:scale(0);animation:v-onda .5s ease-out forwards;pointer-events:none;z-index:2}
html[data-tema="giorno"] .v-onda{background:rgba(242,102,43,.18)}
@keyframes v-onda{to{transform:scale(4);opacity:0}}
.v-nuova{animation:v-entra .45s cubic-bezier(.2,.9,.3,1.3)}
@keyframes v-entra{from{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:none}}
.v-pop{animation:v-pop .35s ease}
@keyframes v-pop{0%{transform:scale(.6)}70%{transform:scale(1.15)}100%{transform:scale(1)}}
/* comande in ritardo: pulsano (cucina e reparti) */
html[data-tema] :is(.ticket.urg,.tardi,.msg-ritardo){animation:v-pulsa 1.4s ease-in-out infinite}
@keyframes v-pulsa{0%,100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}50%{box-shadow:0 0 0 5px rgba(229,72,77,.25)}}

/* tasto giorno/notte (nel menu laterale) */
.v-tema{display:flex;align-items:center;gap:13px;width:100%;padding:11px 10px;border-radius:13px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left}
.v-tema:hover{background:rgba(255,255,255,.06)}

@media (prefers-reduced-motion:reduce){html[data-tema] *{animation:none!important;transition:none!important}}

/* giorno: riquadri colorati scritti con colori da sfondo scuro (palmare, cucina) */
html[data-tema="giorno"] .msg-arrivo{background:#FFF6DB!important;border-color:#F5C451!important;color:#5C4300!important}
html[data-tema="giorno"] .msg-arrivo.da-cliente{background:#E8F1FF!important;border-color:#8DB8F7!important;color:#123B7A!important}
html[data-tema="giorno"] .msg-ritardo{background:#FFE9E7!important;border-color:#F3A29B!important;color:#9F1C12!important}
html[data-tema="giorno"] .msg-attesa{color:var(--v-mut)!important}
html[data-tema="giorno"] .tq-cliente{background:#E8F1FF!important;border-color:#8DB8F7!important}
html[data-tema="giorno"] .tq-cliente-t{color:#1D4ED8!important}
html[data-tema="giorno"] [style*="background:#2a2418"]{background:#FFF4D6!important;color:#8A6100!important}
html[data-tema="giorno"] [style*="background:#1f2a20"]{background:#E3F6EA!important;color:#1E7A43!important}
html[data-tema="giorno"] .avviso-breve{background:#15161C!important;color:#fff!important;border-color:#15161C!important}

/* ---------- menu laterale (bento): pannello che galleggia, voci a pillola ---------- */
html[data-tema] .lx-apri{background:var(--v-card)!important;color:var(--v-txt)!important;border:none!important;box-shadow:var(--v-ombra);border-radius:99px!important;padding:9px 15px}
html[data-tema] .lx-velo{background:rgba(20,18,30,.35);backdrop-filter:blur(6px)}
html[data-tema] .lx-menu{top:12px;right:12px;bottom:12px;width:min(380px,calc(100vw - 24px));border-radius:30px;border:none;background:var(--v-card);color:var(--v-txt);font-family:'Urbanist',system-ui,sans-serif;box-shadow:0 30px 80px rgba(20,18,40,.28)}
html[data-tema] .lx-sfondo{display:none}
html[data-tema] .lx-testa{margin:10px 10px 4px;padding:14px;border-radius:22px;background:linear-gradient(160deg,var(--v-acc2),var(--v-acc));color:#fff}
html[data-tema] .lx-avatar{background:rgba(255,255,255,.25);color:#fff;border-radius:50%}
html[data-tema] .lx-chi span{color:rgba(255,255,255,.85)}
html[data-tema] .lx-x{border:none;border-radius:50%;background:rgba(255,255,255,.22);color:#fff}
html[data-tema] .lx-gr{text-transform:none;letter-spacing:0;font-size:13px;font-weight:700;color:var(--v-mut);padding:16px 12px 6px}
html[data-tema] .lx-voce{color:var(--v-txt);border-radius:18px;padding:9px 10px}
html[data-tema] .lx-voce:hover,html[data-tema] .lx-voce:focus-visible{background:var(--v-card2)}
html[data-tema] .lx-voce.qui{background:var(--v-txt)}
html[data-tema] .lx-voce.qui :is(.lx-t,.lx-s,.lx-fr){color:var(--v-card)!important}
html[data-tema] .lx-ic{border:none;border-radius:50%;background:var(--v-card2)}
html[data-tema] .lx-voce.qui .lx-ic{background:rgba(255,255,255,.14)}
html[data-tema="giorno"] .lx-voce.qui .lx-ic{background:rgba(255,255,255,.18)}
html[data-tema] .lx-s{color:var(--v-mut)}
html[data-tema] .lx-fr{color:var(--v-mut);opacity:.5}
html[data-tema] .lx-bdg{background:var(--v-acc);color:#fff;font-family:inherit}
html[data-tema] .lx-piede{border-top:none;background:var(--v-card)}
html[data-tema] .lx-esci{border:none;border-radius:99px;background:rgba(229,72,77,.10);color:#E5484D;font-family:inherit}
html[data-tema] .v-tema:hover{background:var(--v-card2)}
@media (max-width:520px){html[data-tema] .lx-menu{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px)}}
