:root{
  --paper:#F5F4F0;
  --card:#FFFFFF;
  --ink:#1E2621;
  --muted:#6B7169;
  --line:#E4E2DA;
  --brand:#2E5E4E;
  --brand-ink:#22483C;

  /* firma: quattro colori costanti per i macro, ovunque */
  --carbo:#D99A2B;
  --prot:#CB5A45;
  --lip:#7A6BB0;
  --kcal:#374752;

  --radius:14px;
  --tab-h:62px;
  font-size:16px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  -webkit-text-size-adjust:100%;
  font-variant-numeric:tabular-nums;
}
b{font-weight:700}
.wrap{
  max-width:560px;margin:0 auto;
  padding:12px 14px calc(var(--tab-h) + 22px);
}
a{color:inherit;text-decoration:none}

/* ---------- barra giorno ---------- */
.daybar{display:flex;align-items:center;gap:10px;padding:6px 0 12px}
.daybar-mid{flex:1;text-align:center}
.daybar-date{font-size:1.05rem;font-weight:700}
.daybar-today{font-size:.8rem;color:var(--brand);font-weight:600}
.nav-arrow{
  width:40px;height:40px;display:grid;place-items:center;
  font-size:1.6rem;color:var(--brand);
  background:var(--card);border:1px solid var(--line);border-radius:12px;
}

/* ---------- totale giornata ---------- */
.daytotal{
  background:var(--brand);color:#fff;border-radius:var(--radius);
  padding:14px 16px;margin-bottom:16px;
  box-shadow:0 2px 10px rgba(34,72,60,.18);
}
.daytotal-label{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;opacity:.85}

/* ---------- macro row (riassunti) ---------- */
.macros{display:flex;gap:8px;margin-top:6px}
.macros .m{
  flex:1;display:flex;flex-direction:column;align-items:center;
  background:rgba(255,255,255,.14);border-radius:10px;padding:6px 2px;
}
.pasto-head .macros .m,.daytotal .macros .m{}
.macros .m b{font-size:1.02rem;line-height:1}
.macros .m i{font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;opacity:.85;font-style:normal;margin-top:3px}
.macros-lg .m b{font-size:1.5rem}
/* colore del pallino nel riassunto quando su fondo chiaro */
.pasto-head .macros{margin-top:0}
.pasto-head .m-carbo b{color:var(--carbo)}
.pasto-head .m-prot b{color:var(--prot)}
.pasto-head .m-lip  b{color:var(--lip)}
.pasto-head .m-kcal b{color:var(--kcal)}
.pasto-head .macros .m{background:#F1EFE8}

/* ---------- pasti ---------- */
.pasto{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  margin-bottom:14px;overflow:hidden}
.pasto-head{display:flex;align-items:center;gap:10px;padding:12px 14px 10px;border-bottom:1px solid var(--line)}
.pasto-head h2{margin:0;font-size:1.05rem;flex:0 0 auto;min-width:92px}
.pasto-head .macros{flex:1}

.voci{list-style:none;margin:0;padding:0}
.voce{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line)}
.voce-main{flex:1;min-width:0}
.voce-nome{display:block;font-weight:600}
.voce-porz{display:block;font-size:.78rem;color:var(--muted)}
.voce-macros{display:flex;gap:4px}
.voce-del{border:none;background:none;color:var(--muted);font-size:1.4rem;line-height:1;padding:0 2px;width:30px}
.voce-vuota{padding:14px;color:var(--muted);font-size:.9rem}

/* chip macro colorati */
.chip{
  display:inline-grid;place-items:center;min-width:34px;height:26px;
  padding:0 6px;border-radius:8px;font-size:.82rem;font-weight:700;color:#fff;
}
.c-carbo{background:var(--carbo)} .c-prot{background:var(--prot)}
.c-lip{background:var(--lip)} .c-kcal{background:var(--kcal)}

.pasto-actions{display:flex;gap:8px;padding:10px 14px}
.day-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}

/* ---------- bottoni ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;
  border-radius:11px;padding:11px 14px;font-size:.92rem;font-weight:600;
  border:1px solid transparent;cursor:pointer;min-height:44px}
.btn-add{background:var(--brand);color:#fff;flex:1}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink);flex:1}
.btn-add:active,.btn-ghost:active{transform:translateY(1px)}

/* ---------- sfoglia ---------- */
.sfoglia-head{display:flex;align-items:center;gap:12px;padding:4px 0 10px}
.nav-back{color:var(--brand);font-weight:600}
.sfoglia-title{font-size:1.05rem}
.tabs-cat{display:flex;gap:8px;overflow-x:auto;padding:2px 0 10px;-webkit-overflow-scrolling:touch}
.cat{white-space:nowrap;padding:8px 13px;border-radius:999px;background:#fff;
  border:1px solid var(--line);font-size:.86rem;font-weight:600;color:var(--muted)}
.cat-on{background:var(--brand);border-color:var(--brand);color:#fff}

.combo-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px}
.combo-box summary{padding:12px 14px;font-weight:600;cursor:pointer;color:var(--brand-ink)}
.combo-list{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 14px}
.combo-chip{display:flex;flex-direction:column;align-items:flex-start;gap:2px;
  background:#F1EFE8;border:1px solid var(--line);border-radius:11px;padding:9px 12px;cursor:pointer}
.combo-nome{font-weight:700;font-size:.9rem}
.combo-kcal{font-size:.74rem;color:var(--muted)}

.alimenti{list-style:none;margin:0;padding:0}
.alimento{background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:11px 13px;margin-bottom:10px}
.alimento-nome{font-weight:700;margin-bottom:9px;display:flex;align-items:center;gap:8px}
.ig{font-size:.68rem;font-weight:700;color:var(--muted);background:#F1EFE8;border-radius:6px;padding:2px 6px}
.porzioni{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.porz{background:#F7F6F2;border:1px solid var(--line);border-radius:11px;
  padding:9px 6px;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:3px;min-height:70px}
.porz:active{background:#ECEAE2}
.porz-taglia{font-weight:800;color:var(--brand)}
.porz-g{font-size:.74rem;color:var(--muted)}
.porz-macros{font-size:.72rem;color:var(--ink);display:flex;flex-wrap:wrap;gap:3px;justify-content:center;align-items:center}
.porz-macros b{font-weight:800}
.d{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:1px}
.d-carbo{background:var(--carbo)} .d-prot{background:var(--prot)} .d-lip{background:var(--lip)}

/* running total su sfoglia */
.running{position:fixed;left:0;right:0;bottom:var(--tab-h);
  max-width:560px;margin:0 auto;display:flex;align-items:center;gap:8px;
  background:#fff;border-top:1px solid var(--line);padding:9px 14px}
.running>span:first-child{font-size:.82rem;color:var(--muted)}
.run-macros{display:flex;gap:4px;flex:1}
.running .btn-add{flex:0 0 auto;padding:9px 16px;min-height:40px}

/* ---------- pagine combo / giornate ---------- */
.page-head{padding:6px 2px 12px}
.page-head h1{margin:0 0 4px;font-size:1.4rem}
.page-sub{margin:0;color:var(--muted);font-size:.9rem}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:13px 14px;margin-bottom:12px}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.card-head h2{margin:0;font-size:1.08rem}
.link-del{background:none;border:none;color:var(--prot);font-size:.84rem;font-weight:600;cursor:pointer}
.mini{list-style:none;margin:10px 0;padding:0}
.mini li{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px dashed var(--line);font-size:.9rem}
.mini-porz{color:var(--muted);font-size:.8rem}
.card-tot{display:flex;gap:5px;margin-top:8px}
.applica{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.applica label{display:flex;flex-direction:column;font-size:.76rem;color:var(--muted);gap:3px}
.applica input[type=date]{border:1px solid var(--line);border-radius:9px;padding:8px;font-size:.9rem;background:#fff}
.applica .btn-add{flex:1;min-width:110px}
.empty{background:#fff;border:1px dashed var(--line);border-radius:var(--radius);padding:20px;text-align:center;color:var(--muted)}

/* ---------- tab bar ---------- */
.tabbar{position:fixed;left:0;right:0;bottom:0;height:var(--tab-h);
  display:flex;background:#fff;border-top:1px solid var(--line);
  padding-bottom:env(safe-area-inset-bottom)}
.tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  color:var(--muted);font-size:.72rem;font-weight:600}
.tab-ico{font-size:1.15rem;line-height:1}
.tab.is-active{color:var(--brand)}

/* ---------- toast ---------- */
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--tab-h) + 16px);
  background:var(--ink);color:#fff;padding:11px 16px;border-radius:11px;font-size:.9rem;
  z-index:50;box-shadow:0 4px 16px rgba(0,0,0,.2);max-width:90%}
.toast.show{animation:pop .2s ease}
@keyframes pop{from{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%,0)}}

:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- pagine di accesso ---------- */
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px 16px}
.auth-card{background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:26px 22px;max-width:380px;width:100%;text-align:center;
  box-shadow:0 6px 24px rgba(34,72,60,.08)}
.auth-logo{width:64px;height:64px;margin-bottom:8px}
.auth-card h1{margin:0 0 4px;font-size:1.5rem}
.auth-sub{margin:0 0 18px;color:var(--muted);font-size:.92rem}
.auth-note{color:var(--muted);font-size:.9rem;line-height:1.5;text-align:left}
.auth-note code,.auth-key code{background:#F1EFE8;border-radius:6px;padding:2px 6px;font-size:.85em}
.auth-form{display:flex;flex-direction:column;gap:12px;text-align:left}
.auth-form label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;color:var(--muted);font-weight:600}
.auth-form input{border:1px solid var(--line);border-radius:11px;padding:12px;font-size:1rem;background:#fff}
.auth-form input[name=code]{text-align:center;letter-spacing:.4em;font-size:1.3rem;font-weight:700}
.auth-form .btn-add{margin-top:4px}
.auth-err{background:#FBECE8;color:#A23A28;border-radius:10px;padding:10px 12px;font-size:.88rem;margin-bottom:14px}
.auth-qr{margin:6px auto 12px;border:8px solid #fff;border-radius:12px;background:#fff}
.auth-key{display:flex;flex-direction:column;gap:4px;align-items:center;margin:0 0 18px;font-size:.78rem;color:var(--muted)}
.auth-key code{font-size:1rem;letter-spacing:.08em;color:var(--ink)}
.auth-back{display:inline-block;margin-top:14px;color:var(--muted);font-size:.85rem}

/* voce logout nella tab bar */
.tab-logout{color:var(--muted)}

/* ---------- biometrico ---------- */
.btn-bio{margin-bottom:6px}
.bio-sep{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.8rem;margin:8px 0}
.bio-sep::before,.bio-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.bio-status{border-radius:10px;padding:9px 12px;font-size:.86rem;margin:10px 0;text-align:left}
.bio-status.ok{background:#E8F1EC;color:#255c46}
.bio-status.err{background:#FBECE8;color:#A23A28}
.sic-stato{font-size:.92rem;margin:4px 0 12px}
.sic-on{color:var(--brand);font-weight:600}
.sic-nota{color:var(--muted);font-size:.82rem;margin-top:12px;line-height:1.5}

/* ================= REVISIONE UI (obiettivo, sticky, piatto libero) ================= */

/* riquadro giorno fisso in alto, il resto scorre sotto */
.dayhead-sticky{position:fixed;top:0;left:50%;transform:translateX(-50%);width:100%;max-width:560px;z-index:30;background:var(--paper);padding:12px 14px 8px}

/* titoli pasti piu' evidenti (diversi dai nomi dei piatti) */
.pasto-head h2{color:var(--brand);text-transform:uppercase;letter-spacing:.03em;
  font-size:.95rem;font-weight:800}

/* totale giornata: celle macro contornate col colore-firma */
.daytotal .macros .m{border:1.5px solid transparent}
.daytotal .m-carbo{border-color:var(--carbo)}
.daytotal .m-prot{border-color:var(--prot)}
.daytotal .m-lip{border-color:var(--lip)}
.daytotal .m-kcal{border-color:#9fb4bf}

/* obiettivo calorico */
.goal{margin-top:12px}
.goal-line{display:flex;justify-content:space-between;align-items:baseline;
  font-size:.82rem;margin-bottom:6px}
.goal-restante{font-weight:800}
.goal-restante.over{color:#FFD3C9}
.goal-frac{opacity:.9}
.goal-bar{height:8px;border-radius:99px;background:rgba(255,255,255,.22);overflow:hidden}
.goal-bar-fill{height:100%;background:#FFD98A;border-radius:99px;transition:width .3s}
.goal-bar-fill.over{background:#F08A72}
.goal-set{display:inline-block;margin-top:10px;font-size:.86rem;font-weight:700;
  color:#fff;background:rgba(255,255,255,.16);border-radius:10px;padding:8px 12px}

/* pulsante grande "aggiungi un piatto" */
.btn-addbig{width:100%;margin:0 0 16px;font-size:1rem}

/* strumenti del giorno in griglia ordinata */
.day-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.tool{display:flex;align-items:center;gap:9px;justify-content:flex-start;
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;
  font-size:.9rem;font-weight:600;color:var(--ink);cursor:pointer;min-height:50px;text-align:left}
.tool-ico{font-size:1.15rem;color:var(--brand);flex:0 0 auto}
.tool:active{transform:translateY(1px)}

/* foglio scelta pasto */
.meal-pick{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:60;
  display:flex;align-items:flex-end}
.meal-pick[hidden]{display:none}
.meal-pick-sheet{background:var(--paper);width:100%;max-width:560px;margin:0 auto;
  border-radius:18px 18px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));
  display:flex;flex-direction:column;gap:8px;box-shadow:0 -6px 24px rgba(0,0,0,.18)}
.meal-pick-title{font-weight:700;text-align:center;margin-bottom:4px}
.meal-pick-sheet .btn{width:100%}
.meal-pick-close{margin-top:4px}

/* sfoglia: scan + crea affiancati */
.sfoglia-crea{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}
.sfoglia-crea .btn{width:100%}

/* punto colore kcal (mancava) */
.d-kcal{background:var(--kcal)}

/* form piatto libero */
.piatto-form{display:flex;flex-direction:column;gap:16px}
.pf-field{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--muted);font-weight:600}
.pf-field input{border:1px solid var(--line);border-radius:11px;padding:12px;font-size:1rem;background:#fff;color:var(--ink)}
.pf-foto-row{display:flex;align-items:center;gap:14px}
.pf-anteprima{width:74px;height:74px;border-radius:14px;border:1px solid var(--line);
  background:#EDEBE4 center/cover no-repeat;display:grid;place-items:center;
  color:var(--brand);font-size:1.4rem;flex:0 0 auto}
.pf-anteprima.has-img{color:transparent}
.pf-foto-btns{display:flex;flex-direction:column;gap:5px}
.pf-foto-pick{align-self:flex-start;cursor:pointer;margin:0}
.pf-foto-hint{font-size:.76rem;color:var(--muted)}
.pf-macros-title,.pf-porz-title{font-size:.82rem;color:var(--muted);font-weight:700;margin-bottom:8px}
.pf-porz-title span{font-weight:500}
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pf-m{display:flex;align-items:center;gap:6px;font-size:.86rem;font-weight:600;
  background:#F7F6F2;border:1px solid var(--line);border-radius:11px;padding:8px 10px}
.pf-m .d{flex:0 0 auto}
.pf-m input{width:60px;margin-left:auto;border:1px solid var(--line);border-radius:8px;
  padding:6px;font-size:.95rem;text-align:right;background:#fff}
.pf-porz-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.pf-porz-grid label{display:flex;flex-direction:column;font-size:.78rem;color:var(--muted);gap:4px;align-items:center}
.pf-porz-grid input{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px;
  font-size:.95rem;text-align:center;background:#fff}

/* form impostazioni */
.imp-form{display:flex;flex-direction:column;gap:14px}
.imp-h{margin:0;font-size:1.1rem}
.imp-note{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}
.imp-field{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--muted);font-weight:600}
.imp-field input{border:1px solid var(--line);border-radius:11px;padding:12px;font-size:1.1rem;background:#fff;color:var(--ink)}

/* ============ MOSSA 1: pulizia diario ============ */
/* ingranaggio nell'angolo del riquadro verde */
.daytotal{position:relative}
.daytotal-gear{position:absolute;top:12px;right:14px;color:#fff;font-size:1.35rem;
  opacity:.9;line-height:1;text-decoration:none}

/* obiettivo su due righe leggibili */
.goal{margin-top:14px}
.goal-restante{font-size:1.15rem;font-weight:800;line-height:1.15}
.goal-restante.over{color:#FFD3C9}
.goal-sub{display:flex;align-items:center;gap:10px;margin-top:8px}
.goal-sub .goal-bar{flex:1}
.goal-frac{font-size:.82rem;opacity:.9;white-space:nowrap}

/* strumenti del giorno: due pulsantini discreti, non piu' il muro grigio */
.day-tools{display:flex;gap:8px;margin-top:10px}
.daytool{flex:1;background:#fff;border:1px solid var(--line);border-radius:11px;
  padding:10px 12px;font-size:.85rem;font-weight:600;color:var(--muted);
  cursor:pointer;min-height:44px}
.daytool:active{transform:translateY(1px)}

/* riga Sicurezza dentro Impostazioni */
.imp-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-top:12px}
.imp-link-ico{font-size:1.4rem;color:var(--brand);flex:0 0 auto}
.imp-link-txt{flex:1;display:flex;flex-direction:column}
.imp-link-txt small{color:var(--muted);font-size:.8rem;margin-top:2px}
.imp-link-arr{color:var(--muted);font-size:1.3rem;flex:0 0 auto}

/* ============ MOSSA 2: pagina "Crea un piatto" rifatta pulita ============ */
.piatto-form{display:flex;flex-direction:column;gap:18px}
.field{display:flex;flex-direction:column;gap:8px}
.field-lab{font-size:.82rem;font-weight:700;color:var(--muted)}
.field-lab small{font-weight:500}
.piatto-form input[type=text],
.piatto-form input[type=number]{
  width:100%;border:1px solid var(--line);border-radius:11px;padding:12px;
  font-size:1rem;background:#fff;color:var(--ink)}
.foto-row{display:flex;align-items:center;gap:14px}
.foto-prev{width:70px;height:70px;border-radius:14px;border:1px solid var(--line);
  background:#EDEBE4 center/cover no-repeat;display:grid;place-items:center;
  color:var(--brand);font-size:1.4rem;flex:0 0 auto}
.foto-prev.has-img{color:transparent}
.foto-pick{margin:0;cursor:pointer;white-space:nowrap;flex:0 0 auto}
.macro-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.macro-cell{display:flex;flex-direction:column;gap:7px;font-size:.85rem;font-weight:600;color:var(--ink)}
.macro-name{display:flex;align-items:center;gap:6px}
.macro-in{display:flex;align-items:center;gap:6px;color:var(--muted);font-weight:600}
.macro-in input{flex:1;text-align:right}
.porz-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.porz-grid label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;
  color:var(--muted);font-weight:600;text-align:center}
.porz-grid input{width:100%;text-align:center}


/* ===== totali giornata: cassetti pieni col colore-firma (ben visibili) ===== */
.daytotal .macros .m{border:none}
.daytotal .m-carbo{background:var(--carbo)}
.daytotal .m-prot{background:var(--prot)}
.daytotal .m-lip{background:var(--lip)}
.daytotal .m-kcal{background:#4b5c68}
.daytotal .macros-lg .m b{color:#fff}
.daytotal .macros .m i{color:rgba(255,255,255,.9)}

/* ===== pulsanti giorno grandi, stile PulixIO ===== */
.day-tools{display:flex;gap:12px;margin-top:16px}
.daybtn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;
  border:none;border-radius:12px;padding:12px 14px;min-height:50px;cursor:pointer;
  color:#fff;font-size:.9rem;font-weight:700;text-align:center;line-height:1.15;
  box-shadow:0 2px 8px rgba(0,0,0,.10)}
.daybtn:active{transform:translateY(1px)}
.daybtn-ico{font-size:1.15rem;line-height:1;flex:0 0 auto}
.daybtn-salva{background:linear-gradient(135deg,#2E5E4E,#3f8168)}
.daybtn-copia{background:linear-gradient(135deg,#1a73e8,#0891b2)}


/* ===== Scansiona (verde, grande) + Crea a mano (ambra, piu' piccolo) ===== */
.btn-scan-big{background:var(--brand);color:#fff;min-height:58px;font-size:1.02rem;border-radius:14px}
.btn-scan-big .scan-ico{margin-right:6px;letter-spacing:2px}
.btn-crea-mano{background:#CE7D14;border:none;color:#fff;min-height:48px;font-size:.92rem;font-weight:700;border-radius:12px}
.btn-crea-mano:active{background:#b56d0f}

/* ===== pagina "Crea piatto": colorata, non tutta bianca ===== */
.piatto-form .field-lab{color:var(--brand)}
.piatto-form .macro-cell{border:1px solid var(--line);border-radius:12px;padding:10px 11px}
.piatto-form .macro-grid .macro-cell:nth-child(1){background:#FBF3E4;border-left:4px solid var(--carbo)}
.piatto-form .macro-grid .macro-cell:nth-child(2){background:#FBEDEA;border-left:4px solid var(--prot)}
.piatto-form .macro-grid .macro-cell:nth-child(3){background:#F0EDF7;border-left:4px solid var(--lip)}
.piatto-form .macro-grid .macro-cell:nth-child(4){background:#EDF1F3;border-left:4px solid var(--kcal)}
.piatto-form .porz-grid label{background:#EEF4F0;border:1px solid var(--line);border-radius:11px;padding:8px}
.piatto-form .foto-prev{background:#EAF1EC center/cover no-repeat;color:var(--brand)}


/* ===== tab bar in basso: voci contornate, sembrano pulsanti ===== */
.tabbar{gap:6px;padding-left:8px;padding-right:8px}
.tab{margin:7px 0;border:1px solid var(--line);border-radius:13px;background:#F6F5F1;
  justify-content:center;padding:4px 2px}
.tab.is-active{background:#E9F1EC;border-color:#cfe0d6;color:var(--brand)}
.tab-logout{background:#FBF1EF;border-color:#F0D9D4;color:#B14B39}

/* ===== pagina "Crea piatto": un filo piu' di colore ===== */
.piatto-form.card{border-top:4px solid var(--brand);background:#FCFDFB}

/* spaziatore che riserva l'altezza dell'header fisso (annulla il padding-top del wrap) */
#dayhead-spacer{margin:-12px -14px 0;height:200px}

/* login migliorato: icona+titolo piu' grandi, biometrico centrato */
.auth-logo{width:88px;height:88px;margin-bottom:10px}
.auth-card h1{font-size:1.9rem}
.btn-bio{width:100%;justify-content:center;margin-bottom:6px}
