:root{--ink:#13213b;--muted:#6d7b91;--line:#e4e9f0;--bg:#f4f7fb;--card:#fff;--teal:#0b7f73;--teal2:#10a38f;--orange:#f47721;--danger:#c83a3a;--shadow:0 16px 40px rgba(30,49,78,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4vw;gap:28px;position:sticky;top:0;z-index:20}.brand img{width:220px;height:54px;object-fit:contain}.topbar nav{display:flex;gap:8px;flex:1}.navbtn{border:0;background:transparent;padding:10px 14px;border-radius:10px;color:var(--muted);font-weight:700}.navbtn.active,.navbtn:hover{background:#eaf7f4;color:var(--teal)}.top-actions{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.btn{border:0;background:var(--teal);color:#fff;padding:11px 17px;border-radius:10px;font-weight:800;cursor:pointer}.btn:hover{background:var(--teal2)}.btn.ghost{background:#fff;color:var(--teal);border:1px solid var(--teal)}.btn.full{width:100%}.hidden{display:none!important}main{max-width:1480px;margin:auto;padding:32px 4vw}.view{display:none}.view.active{display:block}.hero{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.hero h1,.section-head h1{font-size:40px;margin:6px 0 8px}.hero p,.section-head p{color:var(--muted);margin:0}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--teal);font-weight:900}.hero-chip{background:linear-gradient(135deg,var(--ink),#29456f);color:#fff;padding:16px 24px;border-radius:18px;min-width:150px;text-align:center}.hero-chip b{font-size:28px;display:block}.hero-chip span{font-size:12px;opacity:.8}.dashboard{display:grid;grid-template-columns:1.08fr .92fr;gap:22px}.column{display:flex;flex-direction:column;gap:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.card-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.card-title span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e3f4f1;color:var(--teal);font-weight:900}.card-title h2{font-size:19px;margin:0}.grid2,.grid3,.grid4{display:grid;gap:14px;margin-bottom:14px}.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800;color:#34425a}input,select,textarea{border:1px solid #d7dee8;background:#fbfcfe;border-radius:10px;padding:11px 12px;color:var(--ink);width:100%}input:focus,select:focus,textarea:focus{outline:2px solid #bde8df;border-color:var(--teal)}textarea{min-height:84px;resize:vertical}.percent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.percent-grid label{background:#f8fafc;padding:15px;border-radius:14px;border:1px solid var(--line)}.percent-grid b{font-size:11px;color:var(--teal)}.percent-grid small{color:var(--muted);font-weight:500}.linkbtn{background:transparent;border:0;color:var(--teal);font-weight:800;cursor:pointer;padding:12px 0 0}.recommendation{background:linear-gradient(135deg,#eef8f6,#f8fbff);padding:18px;border-radius:14px;margin-bottom:16px}.recommendation strong{font-size:22px}.notice{margin-top:12px;padding:12px 14px;background:#f6f8fb;border-radius:10px;color:var(--muted);font-size:13px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbfcfe}.metric span{display:block;color:var(--muted);font-size:12px}.metric b{font-size:21px}.save-box{border-top:1px solid var(--line);margin-top:18px;padding-top:18px;display:grid;gap:10px}.timeline{position:relative;padding-left:26px}.timeline:before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:#cfe7e2}.timeline-item{position:relative;padding:0 0 18px 18px}.timeline-item:before{content:"";position:absolute;left:-23px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--teal);border:3px solid #fff;box-shadow:0 0 0 2px #bfe3dc}.timeline-item b{display:block}.timeline-item small{color:var(--muted)}.search{max-width:520px;margin:20px 0}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.flour-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.flour-card h3{margin:0 0 6px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.chip{font-size:11px;padding:5px 8px;border-radius:999px;background:#eef5fb;color:#4a617d}.recipe-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.recipe-item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.recipe-actions{display:flex;gap:8px;margin-top:14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.stat b{font-size:30px;display:block}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}.align-end{align-self:end}.modal{position:fixed;inset:0;background:rgba(16,31,54,.55);display:grid;place-items:center;z-index:50;padding:20px}.modal-box{width:min(480px,100%);background:#fff;border-radius:20px;padding:28px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-box>img{width:210px;height:52px}.modal-box label{margin-top:11px}.modal-actions{display:flex;gap:10px;margin-top:18px}.check{flex-direction:row;align-items:center}.check input{width:auto}.x{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:26px}.danger{background:#fff0f0;color:var(--danger)}footer{display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;background:#fff;border-top:1px solid var(--line);color:var(--muted);font-size:13px}footer img{width:180px;height:42px}@media(max-width:1000px){.dashboard{grid-template-columns:1fr}.topbar nav{display:none}.grid4,.grid3{grid-template-columns:repeat(2,1fr)}.catalog,.recipe-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar{height:auto;padding:10px 16px;flex-wrap:wrap}.brand img{width:175px}.top-actions span,.top-actions .btn:last-child{display:none}main{padding:22px 14px}.hero h1{font-size:31px}.hero-chip{display:none}.grid2,.grid3,.grid4,.percent-grid,.metrics,.catalog,.recipe-list,.stats{grid-template-columns:1fr}.card{padding:17px}}
@media print{.topbar,.save-box,footer,.navbtn,.btn,.linkbtn,#authModal{display:none!important}body{background:#fff}.view{display:none!important}#planner{display:block!important}.dashboard{grid-template-columns:1fr 1fr;gap:10px}.card{box-shadow:none;break-inside:avoid;padding:14px}.hero{margin-bottom:10px}.hero h1{font-size:28px}}
/* v10.2 — Ricette e diario media */
.muted{color:var(--muted)}.success{background:#e9f8f3;color:#087563}.recipe-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.media-count,.role-hint{background:#eaf7f4;color:var(--teal);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;white-space:nowrap}.recipe-actions{flex-wrap:wrap}.media-modal-box{width:min(980px,96vw);max-height:92vh;overflow:auto}.media-modal-box>img{width:245px}.media-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:10px 0}.media-head h2{margin:4px 0 0}.media-categories{display:grid;gap:18px;margin-top:18px}.media-section{border:1px solid var(--line);border-radius:16px;padding:16px;background:#f9fbfd}.media-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.media-section-title h3{margin:0;color:var(--ink)}.media-section-title small{color:var(--muted)}.media-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:12px}.media-card,.upload-card{position:relative;aspect-ratio:4/3;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.media-card img,.media-card video{width:100%;height:100%;object-fit:cover}.upload-card{display:grid;place-items:center;align-content:center;text-align:center;cursor:pointer;color:var(--teal);gap:5px;border:2px dashed #b7dcd5}.upload-card:hover{background:#eefaf7}.upload-card input{display:none}.upload-card span{font-size:30px;line-height:1}.upload-card b{font-size:12px}.delete-media{position:absolute;right:7px;top:7px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(15,30,52,.78);color:#fff;font-size:20px;cursor:pointer}.btn.full+.btn.full{margin-top:8px}.brand img{width:235px}.hero .eyebrow{color:#e65324}.topbar{box-shadow:0 3px 18px rgba(20,35,61,.04)}
@media(max-width:900px){.media-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.media-grid{grid-template-columns:repeat(2,1fr)}.media-head{align-items:flex-start;flex-direction:column}.role-hint{white-space:normal}}
@media print{#mediaModal{display:none!important}}
.guest-lock-note{background:#fff8e8;border:1px solid #f3d79a;color:#75510b;border-radius:14px;padding:12px 14px;margin-bottom:16px;font-size:.92rem}.schedule-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.rest-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.rest-chip{background:#f4f8fb;border:1px solid #dce6ee;border-radius:14px;padding:13px}.rest-chip span{display:block;color:#60708a;font-size:.78rem;margin-bottom:4px}.rest-chip b{font-size:1.05rem}.locked-field{opacity:.64}.locked-field select,.locked-field input{cursor:not-allowed}.member-only.hidden{display:none!important}@media(max-width:900px){.schedule-fields,.rest-summary{grid-template-columns:1fr 1fr}}@media(max-width:560px){.schedule-fields,.rest-summary{grid-template-columns:1fr}}

.option-field{display:flex;flex-direction:column;gap:7px}.option-title{display:flex;align-items:center;gap:8px;font-weight:800}.option-title input{width:auto}.mix-toggle{display:flex!important;align-items:center;gap:10px;font-weight:800;margin-bottom:8px}.mix-toggle input{width:auto}.mix-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.mix-panel{border:1px solid #dfe6ef;border-radius:16px;padding:16px;background:#f8fbfd}.mix-panel h3{margin:0 0 12px}.mix-panel label{display:block;margin-top:10px}.mix-panel select,.mix-panel input{width:100%;margin-top:6px}.muted{color:#667085}@media(max-width:760px){.mix-grid{grid-template-columns:1fr}}

.diagnosis{border:1px solid var(--line);border-radius:16px;padding:18px;background:#f8fafc}.diagnosis-head{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center}.diagnosis-head>div:first-child{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--line)}.diagnosis-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.diagnosis-head b{font-size:1.9rem}.diagnosis-head p{margin:.35rem 0 0;color:var(--muted)}.diagnosis ul{margin:16px 0 0;padding-left:20px}.diagnosis li{margin:8px 0;line-height:1.45}.diagnosis.success{border-left:5px solid #07856f}.diagnosis.warning{border-left:5px solid #d78b00}.diagnosis.danger{border-left:5px solid #c73535}@media(max-width:620px){.diagnosis-head{grid-template-columns:1fr}.diagnosis-head>div:first-child{border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}}

.yeast-editor{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.yeast-editor-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.yeast-editor-head small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.yeast-editor .grid2{margin-bottom:0}.yeast-editor .notice{margin-bottom:0}.yeast-editor.manual-active{border-color:#e9a35b;background:#fffaf4}@media(max-width:650px){.yeast-editor-head{align-items:flex-start;flex-direction:column}.yeast-editor-head .btn{width:100%}}

.schedule-advice{margin-top:12px}.schedule-advice:empty{display:none}
.schedule-buttons{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.schedule-buttons .btn,.schedule-buttons .linkbtn{margin:0}.optimization-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.optimization-grid div{padding:10px;border:1px solid #dfe6ef;border-radius:12px;background:#fff}.optimization-grid span{display:block;font-size:.78rem;color:#60708a}.optimization-grid b{display:block;margin-top:3px}.optimization-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}@media(max-width:650px){.optimization-grid{grid-template-columns:1fr}}
.ingredient-plan{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.ingredient-plan-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.ingredient-plan-title b{font-size:17px}.ingredient-plan-title small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.ingredient-total-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.ingredient-total-grid .ingredient-row{background:#eef8f6;border-color:#d7ece7}.phase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.phase-card{border:1px solid var(--line);border-radius:14px;background:#fbfcfe;overflow:hidden}.phase-card-head{padding:13px 14px;background:#f3f7fa;border-bottom:1px solid var(--line)}.phase-card-head b{display:block}.phase-card-head small{display:block;color:var(--muted);font-weight:500;margin-top:3px;line-height:1.35}.phase-ingredients{padding:7px 14px}.ingredient-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;margin:6px 0}.ingredient-row span{font-size:12px;font-weight:800;color:#34425a}.ingredient-row small{display:block;color:var(--muted);font-weight:500;margin-top:2px}.ingredient-row b{white-space:nowrap}.phase-warning{margin:0 14px 14px;padding:10px 12px;border-radius:9px;background:#fff0f0;color:var(--danger);font-size:12px;line-height:1.4}@media(max-width:650px){.ingredient-total-grid,.phase-grid{grid-template-columns:1fr}}

.standard-card{margin:14px 0 18px;padding:16px;border:1px solid #cfe7e2;border-radius:14px;background:#f4fbf9}.standard-card>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}.standard-card>div:first-child span{text-transform:uppercase;font-size:10px;letter-spacing:1.2px;color:var(--teal);font-weight:900}.standard-card>div:first-child b{font-size:16px}.standard-card p{margin:9px 0;color:var(--muted);font-size:13px}.standard-facts{display:flex;flex-wrap:wrap;gap:8px}.standard-facts>span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:11px}.standard-card.warning{background:#fff8ec;border-color:#f1cf91}.standard-card.warning>div:first-child span{color:#a96600}


/* === PIZZOOD 12.2 · MENU MOBILE AREA UTENTE === */
.mobile-menu-btn{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:13px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;padding:0}
.mobile-menu-btn span{display:block;width:21px;height:2px;border-radius:2px;background:var(--ink);transition:.2s}
.mobile-menu-backdrop{position:fixed;inset:0;background:rgba(13,27,48,.52);z-index:79;backdrop-filter:blur(2px)}
.mobile-menu{position:fixed;top:0;right:0;width:min(88vw,360px);height:100dvh;background:#fff;z-index:80;box-shadow:-24px 0 60px rgba(16,31,54,.22);transform:translateX(105%);transition:transform .25s ease;display:flex;flex-direction:column;padding:18px;overflow-y:auto}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}
.mobile-menu-head img{width:190px;height:52px;object-fit:contain;object-position:left center}
.mobile-menu-close{width:42px;height:42px;border:0;border-radius:12px;background:#f1f5f9;color:var(--ink);font-size:29px;line-height:1;cursor:pointer}
.mobile-account{margin:17px 0;padding:14px 16px;border-radius:15px;background:linear-gradient(135deg,#edf8f6,#f5f8fd);border:1px solid #d8ece7}
.mobile-account span{display:block;color:var(--teal);font-size:11px;text-transform:uppercase;letter-spacing:1.4px;font-weight:900;margin-bottom:4px}
.mobile-account strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-nav{display:flex;flex-direction:column;gap:7px;flex:1}
.mobile-navbtn{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:14px 15px;border-radius:13px;font-size:15px}
.mobile-navbtn span{width:25px;text-align:center;font-size:18px}
.mobile-menu-actions{display:grid;gap:10px;padding-top:18px;border-top:1px solid var(--line);margin-top:18px}
body.mobile-menu-open{overflow:hidden}
@media(max-width:1000px){
 .topbar{gap:12px;padding-left:18px;padding-right:18px}
 .topbar .desktop-nav{display:none}
 .mobile-menu-btn{display:flex}
 .top-actions{margin-left:auto}
 .top-actions #accountBadge,.top-actions #printBtn{display:none}
}
@media(max-width:650px){
 .topbar{flex-wrap:nowrap;min-height:78px;padding:10px 14px}
 .brand{min-width:0;flex:1}
 .brand img{width:min(205px,58vw);height:52px;object-position:left center}
 .top-actions{gap:8px;flex:0 0 auto}
 .top-actions #loginBtn{padding:10px 14px}
 .mobile-menu-btn{width:44px;height:44px}
}
@media(max-width:390px){
 .brand img{width:172px}
 .top-actions #loginBtn{display:none}
}
@media print{.mobile-menu,.mobile-menu-backdrop,.mobile-menu-btn{display:none!important}}

/* v12.3 — note sincronizzate e navigazione foto */
.recipe-notes{margin:12px 0;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.recipe-notes b{display:block;font-size:12px;color:var(--teal);text-transform:uppercase;letter-spacing:.06em}.recipe-notes p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.media-back{margin:0 0 12px;padding:9px 12px}.save-box #recipePhotoBtn{margin-top:8px}@media(max-width:560px){.media-back{width:calc(100% - 42px);margin-right:42px}}


/* v12.4 — registrazione aperta, impostazioni e assistenza */
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 18px}.auth-tab{border:1px solid var(--line);background:#f5f7fa;border-radius:12px;padding:11px;font-weight:800;cursor:pointer}.auth-tab.active{background:var(--teal);color:#fff;border-color:var(--teal)}.auth-switch{text-align:center;color:var(--muted);margin:14px 0 0}.text-button{border:0;background:none;color:var(--teal);font-weight:900;cursor:pointer;text-decoration:underline}.auth-modal-box small{display:block;color:var(--muted);margin-top:5px}.auth-modal-box .check{margin-top:12px;line-height:1.45}.auth-modal-box .check input{width:auto}.auth-modal-box .check a{color:var(--teal)}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.antibot-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:10px}.antibot-row .btn{margin-bottom:0;white-space:nowrap}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-check{display:flex!important;gap:9px;align-items:flex-start;margin:18px 0}.settings-check input{width:auto;margin-top:3px}.danger-zone{border-color:#efc5c5;background:#fffafa}.danger-zone p{color:#7a3b3b}.danger-btn{background:#b42318!important;border-color:#b42318!important}.help-card{max-width:820px}.help-card textarea{resize:vertical}.top-actions #registerBtn{white-space:nowrap}
@media(max-width:760px){.settings-grid{grid-template-columns:1fr}.antibot-row{grid-template-columns:1fr}.antibot-row .btn{width:100%}}
@media(max-width:650px){.top-actions #registerBtn{display:none}}
@media print{#account,#help,.auth-tabs{display:none!important}}

.password-wrap{display:flex;align-items:center;width:100%;border:1px solid #d7dde7;border-radius:10px;background:#fff;overflow:hidden}.password-wrap input{flex:1;min-width:0;border:0!important;box-shadow:none!important;margin:0!important}.password-toggle{flex:0 0 46px;align-self:stretch;border:0;border-left:1px solid #d7dde7;background:#f7f9fc;cursor:pointer;font-size:18px}.password-toggle:hover{background:#eef2f7}.password-toggle:focus{outline:2px solid #1d4ed8;outline-offset:-2px}.recovery-page{max-width:560px;margin:48px auto;padding:20px}.recovery-card{padding:28px}.recovery-logo{display:block;width:240px;max-width:75%;margin:0 auto 20px}.recovery-card h1{text-align:center}.recovery-card label{display:block;margin:18px 0}.recovery-card input{width:100%}


/* v13.1 — home, guida e selettore lingua */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.language-picker select{width:auto;min-width:72px;padding:10px 9px;border-radius:11px;background:#fff;font-weight:800}.landing-page{padding:0 0 42px}.landing-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:30px;align-items:center;max-width:1220px;margin:34px auto 22px;padding:54px;border-radius:28px;background:linear-gradient(135deg,#f0fbf8 0%,#f8fbff 55%,#fff7ed 100%);border:1px solid var(--line)}.landing-copy h1{font-size:clamp(2.25rem,5vw,4.8rem);line-height:1.02;letter-spacing:-.045em;margin:13px 0 20px;max-width:900px}.landing-lead{font-size:1.16rem;line-height:1.65;color:var(--muted);max-width:780px}.landing-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn-large{padding:14px 20px;font-size:1rem}.landing-score{padding:28px;border-radius:22px;background:#fff;box-shadow:0 22px 60px rgba(28,52,84,.12);border:1px solid #dfe9ef}.landing-score span{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--teal);font-size:.75rem;font-weight:900}.landing-score b{display:block;font-size:3.1rem;margin:10px 0}.landing-score p{color:var(--muted);line-height:1.5}.feature-grid{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-grid article,.method-note{padding:26px;border:1px solid var(--line);border-radius:20px;background:#fff}.feature-grid article>span,.guide-number{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e8f6f2;color:var(--teal);font-weight:900}.feature-grid h2{font-size:1.2rem;margin:16px 0 9px}.feature-grid p,.method-note p{color:var(--muted);line-height:1.6}.method-note{max-width:1220px;margin:18px auto;background:#fffaf1;border-color:#f0dfb7}.guide-page{max-width:1220px;margin:0 auto;padding:28px 0 50px}.guide-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.guide-card{position:relative}.guide-card h2{margin:16px 0 8px}.guide-card p{color:var(--muted);line-height:1.65}.guide-card .btn{margin-top:12px}.guide-wide{grid-column:1/-1}.view{display:none}.view.active{display:block}@media(max-width:900px){.landing-hero{grid-template-columns:1fr;padding:34px}.feature-grid{grid-template-columns:1fr}.guide-layout{grid-template-columns:1fr}.guide-wide{grid-column:auto}}@media(max-width:650px){.landing-hero{margin:16px 12px;padding:26px 20px;border-radius:20px}.feature-grid,.method-note,.guide-page{margin-left:12px;margin-right:12px}.landing-actions .btn{width:100%}.language-picker select{min-width:66px;padding:9px 6px}.top-actions #registerBtn{display:none}}


/* v13.1.1 — landing professionale */
.landing-hero-pro{min-height:610px}.landing-tagline{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:900;color:var(--teal);margin:0 0 14px}.landing-micro{font-size:.9rem;color:var(--muted);margin-top:14px}.landing-section{max-width:1220px;margin:72px auto}.landing-heading{text-align:center;max-width:760px;margin:0 auto 30px}.landing-heading h2,.archive-copy h2,.evidence-section h2,.landing-final-cta h2{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.12;letter-spacing:-.03em;margin:10px 0}.feature-grid-icons article{position:relative;padding:30px}.feature-grid-icons .feature-icon{font-size:2.25rem;margin-bottom:16px}.feature-grid-icons article>span{position:absolute;right:22px;top:22px}.feature-grid-icons h3{font-size:1.35rem;margin:12px 0}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.mode-card{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff}.mode-card-accent{background:linear-gradient(145deg,#effaf7,#f7fbff);border-color:#b9ded5}.mode-icon{font-size:2.4rem}.mode-card h3{font-size:1.6rem;margin:14px 0 10px}.mode-card p{color:var(--muted);line-height:1.65}.mode-card .linkbtn{margin-top:12px}.archive-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center;padding:44px;border-radius:28px;background:#0f2d35;color:#fff}.archive-copy .eyebrow{color:#88d6c5}.archive-copy p{color:#c8dcdf;line-height:1.7}.archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.archive-grid article{padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.07)}.archive-grid b{font-size:1.7rem}.archive-grid h3{margin:10px 0 7px}.archive-grid p{color:#c8dcdf;line-height:1.5;font-size:.92rem}.audience-list{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}.audience-list span{padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:999px;font-weight:800}.audience-list i{font-style:normal}.evidence-section{display:grid;grid-template-columns:90px 1fr;gap:28px;padding:42px;border:1px solid #efddb1;border-radius:26px;background:#fff9ec}.evidence-icon{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#f3dfae;color:#8b5d00;font-size:2.3rem;font-weight:900}.evidence-section p{color:#5e6571;line-height:1.72;margin:10px 0}.landing-final-cta{text-align:center;max-width:1220px;margin:72px auto 36px;padding:52px;border-radius:26px;background:linear-gradient(135deg,#e9f8f4,#f2f7ff)}.landing-final-cta p{color:var(--muted)}.landing-final-cta .landing-actions{justify-content:center}.site-footer{max-width:1220px;margin:0 auto;padding:34px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.site-footer img{width:180px}.site-footer p{color:var(--muted)}.site-footer nav{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.site-footer nav button,.site-footer nav a{border:0;background:none;color:var(--ink);font-weight:800;cursor:pointer;text-decoration:none;padding:5px}.site-footer small{grid-column:1/-1;color:var(--muted)}
@media(max-width:900px){.landing-section{margin:52px 16px}.mode-grid,.archive-section{grid-template-columns:1fr}.archive-section{padding:30px}.site-footer{margin:0 16px}.landing-hero-pro{min-height:auto}}
@media(max-width:650px){.archive-grid{grid-template-columns:1fr}.evidence-section{grid-template-columns:1fr;padding:28px 22px}.landing-final-cta{margin:50px 12px 28px;padding:36px 22px}.site-footer{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start}.landing-copy h1{font-size:2.45rem}}

/* Account registration and password recovery status pages — v13.1.4 */
.account-status-box{max-width:560px;text-align:center;padding:38px 34px}
.account-status-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#e7f7f3;color:#087f6b;font-size:34px;font-weight:800}
.account-status-box h2{margin:0 0 12px;font-size:28px;color:#13294b}
.account-status-box>p{margin:0 auto 16px;max-width:470px;font-size:17px;line-height:1.55;color:#52647f}
.account-status-details{margin:18px 0 22px;padding:16px;border-radius:12px;background:#f5f8fc;color:#40516a;line-height:1.55;text-align:left}
.account-status-box .btn{margin-top:6px}
#resetFields h2{margin-bottom:14px}
#resetFields small{display:block;margin-top:7px;line-height:1.4}
@media(max-width:640px){.account-status-box{padding:30px 22px}.account-status-box h2{font-size:24px}}

/* Patch 13.1.5 */
.welcome-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px;border-radius:24px;background:linear-gradient(135deg,#fff,#f2f8f6);border:1px solid var(--line);margin-bottom:22px}.welcome-hero h1{font-size:clamp(2rem,4vw,3.4rem);margin:.35rem 0}.welcome-mark{font-size:5rem}.dashboard-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}.member-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.member-summary article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.member-summary b{display:block;font-size:1.6rem;color:var(--primary)}.member-summary span{color:var(--muted)}.dashboard-info{max-width:none}.flour-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.flour-guide-grid .card{margin:0}.flour-guide-grid h2{margin-top:0}.admin-user-link{border:0;background:none;padding:0;font:inherit;font-weight:800;color:var(--primary);cursor:pointer;text-align:left}.admin-user-modal-card{max-width:850px}.admin-user-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}.admin-user-head h3{margin:0 0 4px}.status-pill{padding:7px 12px;border-radius:999px;background:#e7f5f1;font-weight:800}.admin-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-user-grid>div{padding:14px;border:1px solid var(--line);border-radius:12px}.admin-user-grid span{display:block;color:var(--muted);font-size:.85rem;margin-bottom:4px}.admin-user-grid b{overflow-wrap:anywhere}@media(max-width:760px){.member-summary,.flour-guide-grid,.admin-user-grid{grid-template-columns:1fr}.welcome-mark{display:none}.welcome-hero{padding:24px}}

/* Pizzood 13.1.6 - scheda utente admin e ricette */
.admin-user-recipes-toolbar{display:flex;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border,#dde5e5)}
.admin-user-recipes{margin-top:1rem;max-height:55vh;overflow:auto;padding-right:.25rem}
.admin-user-recipes-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}
.admin-user-recipes-title h3{margin:0}.admin-user-recipes-title span{font-weight:700;white-space:nowrap}
.admin-recipe-card{border:1px solid var(--border,#dbe5e3);border-radius:16px;padding:1rem;margin-bottom:.9rem;background:#fff}
.admin-recipe-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.admin-recipe-head h4{margin:0 0 .2rem}.admin-recipe-head small{opacity:.72}
.admin-recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.9rem}
.admin-recipe-grid>div{background:#f6faf9;border-radius:10px;padding:.65rem}.admin-recipe-grid span{display:block;font-size:.76rem;opacity:.7;margin-bottom:.15rem}.admin-recipe-grid b{overflow-wrap:anywhere}
.admin-recipe-notes{margin-top:.8rem;padding:.75rem;background:#fff8e8;border-radius:10px}.admin-recipe-notes p{margin:.35rem 0 0;white-space:pre-wrap}
.admin-recipe-card details{margin-top:.8rem}.admin-recipe-card summary{cursor:pointer;font-weight:700}.admin-recipe-card pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#10233f;color:#fff;border-radius:10px;padding:.8rem;max-height:280px;overflow:auto;font-size:.76rem}
.toggle-user:disabled{opacity:.6;cursor:wait}
@media(max-width:760px){.admin-recipe-grid{grid-template-columns:1fr 1fr}.admin-user-recipes-title{align-items:flex-start;flex-direction:column}}

/* Patch 13.1.7 */
body.reset-route header,body.reset-route footer,body.reset-route main>.view:not(#passwordResetPage){display:none!important}
body.reset-route main{min-height:100vh;display:grid;place-items:center;padding:32px}
.standalone-reset-page{display:block!important;width:100%;max-width:620px}
.standalone-reset-card{padding:36px}.standalone-reset-card>img{width:170px;margin-bottom:22px}.standalone-reset-card h1{font-size:clamp(2rem,5vw,3rem);margin:.5rem 0}.standalone-reset-card label{display:block;margin-top:18px}.standalone-reset-card .btn{margin-top:22px}
.flour-guide-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.flour-guide-wide{grid-column:1/-1}.technical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.technical-grid>div{padding:16px;border:1px solid var(--line,#d9e1ea);border-radius:14px}
.admin-account-actions{margin-top:22px;padding:18px;border:1px solid var(--line,#d9e1ea);border-radius:16px}.admin-inline-action{display:flex;align-items:end;padding-bottom:2px}.admin-recipes-workspace{margin-top:24px;scroll-margin-top:100px}.admin-user-recipes-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.admin-user-recipes-title h2{margin:12px 0 0}
@media(max-width:760px){.flour-guide-layout,.technical-grid{grid-template-columns:1fr}.flour-guide-wide{grid-column:auto}.admin-user-recipes-title{align-items:flex-start;flex-direction:column}}

/* Patch 13.1.9 */
.admin-recipe-view-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;margin:0 0 18px;border:1px solid #d6a23c;background:#fff8e8;border-radius:14px}.admin-recipe-view-banner div{display:flex;flex-direction:column;gap:3px}.admin-recipe-view-banner span{font-size:.92rem;color:#5d6574}.admin-recipe-view-banner.hidden{display:none}.standalone-reset-card{max-width:560px;margin:7vh auto}.reset-status{margin-top:14px}@media(max-width:700px){.admin-recipe-view-banner{align-items:stretch;flex-direction:column}}
/* Patch 13.2.0 — logo circa 10% più grande */
.brand img{width:259px;height:59px}
.mobile-menu-head img{width:209px;height:57px}
.modal-box>img{width:231px;height:57px}
.media-modal-box>img{width:270px}
.site-footer img,footer img{width:198px;height:auto}
@media(max-width:650px){.brand img{width:189px;height:auto}}

/* Patch 13.2.1 — farine generiche, ricette e scheda admin */
.recipe-list-toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}
.recipe-list-toolbar span{color:var(--muted);font-weight:700}
.admin-user-modal-card{width:min(900px,96vw);max-height:88vh;overflow-y:auto;overscroll-behavior:contain;padding-right:22px}
.admin-user-modal-card .modal-close{position:sticky;top:0;float:right;z-index:3}
#flourSelection select{min-height:44px}
@media(max-width:650px){.recipe-list-toolbar{align-items:stretch;flex-direction:column}.recipe-list-toolbar .btn{width:100%}.admin-user-modal-card{max-height:94vh;padding:22px 16px}}

/* Patch 13.2.3 — validazione cronologica dei processi */
.date-invalid{border-color:#c83a3a!important;background:#fff4f4!important;box-shadow:0 0 0 2px rgba(200,58,58,.12)!important}
.date-process-error{margin:0 0 16px;border:1px solid #efb2b2;background:#fff1f1;color:#9f2525}
.date-process-error ul{margin:8px 0 0;padding-left:20px}.date-process-error li{margin:5px 0}
.hero-chip.hero-chip-error{background:linear-gradient(135deg,#a32626,#d44747)}
.hero-chip.hero-chip-error b{font-size:20px;letter-spacing:.04em}


/* Pizzood 14.0 — consulente di prodotto */
.result-components{display:grid;gap:8px;margin:16px 0}
.result-component{display:grid;grid-template-columns:120px 1fr 34px;align-items:center;gap:10px;font-size:12px}
.result-component>span{font-weight:800}
.result-component>div{height:8px;border-radius:999px;background:#e7edf2;overflow:hidden}
.result-component i{display:block;height:100%;border-radius:999px;background:currentColor;opacity:.72}
.result-component>b{text-align:right}
.advice-section{margin-top:15px;padding-top:13px;border-top:1px solid rgba(120,130,145,.18)}
.advice-section>b{display:block;margin-bottom:7px}
.advice-section ul{margin:0;padding-left:20px}
.advice-section li{margin:6px 0}
.advice-section.improvements{background:rgba(255,255,255,.48);padding:13px;border-radius:12px;border-top:0}
.advice-warning,.advice-recommendations{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.62)}
.advice-warning ul,.advice-recommendations ul{margin:7px 0 0;padding-left:20px}
.notice.warning{background:#fff7e8;border-left:4px solid #d68b12;color:#6b4508}
@media(max-width:650px){.result-component{grid-template-columns:95px 1fr 30px}}

.engine-credit{font-size:12px;opacity:.72;text-align:center;margin-top:8px}

/* Pizzood 15.1 — contenuti, utilità e note informative */
.nav-dropdown{position:relative}.nav-dropdown>summary{list-style:none;cursor:pointer}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-dropdown>summary::after{content:' ▾';font-size:.72em}.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:30;min-width:250px;padding:8px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 16px 34px rgba(24,38,62,.14)}.nav-dropdown-menu button{display:block;width:100%;border:0;border-radius:9px;background:transparent;padding:10px 12px;text-align:left;font:inherit;color:inherit;cursor:pointer}.nav-dropdown-menu button:hover{background:#f3f7f6}.mobile-nav-group{padding-top:8px;margin-top:8px;border-top:1px solid var(--line)}.mobile-nav-label{display:block;padding:8px 16px 5px;font-size:.72rem;font-weight:800;letter-spacing:.12em;color:var(--muted)}
.legal-note{margin:14px 0 0;padding:12px 14px;border-left:4px solid var(--primary);border-radius:10px;background:#f4f8f7;color:#42536a;font-size:.88rem;line-height:1.55}.result-legal-note{margin-bottom:16px}.flour-disclaimer{margin-bottom:18px;border-left:5px solid var(--primary)}.flour-disclaimer p:last-child{margin-bottom:0}.inline-link{display:inline;padding:0;vertical-align:baseline}.collaboration-card{background:#f6faf9}.footer-disclaimer{max-width:760px;font-size:.78rem;line-height:1.45;color:var(--muted)}
.utility-page{min-height:62vh}.under-construction{max-width:760px;margin:40px auto;text-align:center;padding:48px 28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fff,#f6faf9)}.under-construction-icon{font-size:4.2rem;margin-bottom:12px}.under-construction h1{margin:8px 0 12px}.under-construction>p{max-width:610px;margin:0 auto 24px;color:var(--muted)}.construction-message{display:grid;gap:9px;margin:0 auto 26px;padding:20px;max-width:620px;border-radius:16px;background:#fff;border:1px solid var(--line)}.construction-message span{color:var(--muted)}.news-list{display:grid;gap:16px}.news-item{display:grid;grid-template-columns:130px 1fr;gap:24px;align-items:start}.news-version{display:grid;gap:5px}.news-version b{font-size:1.35rem;color:var(--primary)}.news-version span{font-size:.85rem;color:var(--muted)}.news-item h2{margin-top:0}.app-footer-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.app-footer-links button{border:0;background:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer}.app-footer .footer-disclaimer{margin:8px auto 0;text-align:center}
.legal-page{max-width:920px;margin:0 auto;padding:34px 20px 60px}.legal-page .card{padding:34px}.legal-page h1{margin-top:0}.legal-page h2{margin-top:28px}.legal-page .legal-updated{color:var(--muted);font-size:.9rem}.legal-page .legal-back{display:inline-block;margin-bottom:18px}
@media(max-width:900px){.desktop-nav .nav-dropdown{display:none}.news-item{grid-template-columns:1fr;gap:8px}}
@media(max-width:650px){.under-construction{margin:18px auto;padding:34px 18px}.under-construction-icon{font-size:3.4rem}.legal-page{padding:20px 12px 40px}.legal-page .card{padding:24px 18px}}

/* Patch 15.2 — menu compatto, richiamo guida e gestione novità */
.planner-guide-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:15px 18px;border:1px solid var(--line);border-radius:15px;background:#f7faf9}.planner-guide-callout div{display:grid;gap:3px}.planner-guide-callout span{color:var(--muted);font-size:.92rem}.admin-news-manager{margin-bottom:22px}.admin-news-form{display:grid;grid-template-columns:180px 1fr auto;gap:14px;align-items:end}.admin-news-list{display:grid;gap:10px;margin-top:18px}.admin-news-row{display:grid;grid-template-columns:130px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.admin-news-row p{margin:0;white-space:pre-wrap}.admin-news-row time{font-weight:700}.news-item p{white-space:pre-wrap}.desktop-nav{gap:4px}.desktop-nav>.navbtn,.nav-dropdown>summary{padding-inline:10px}@media(max-width:760px){.planner-guide-callout{align-items:stretch;flex-direction:column}.admin-news-form,.admin-news-row{grid-template-columns:1fr}.admin-news-row .btn{justify-self:start}}

/* Patch 15.3.1 — modifica novità */
.admin-news-actions,.admin-news-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-news-row-actions{justify-content:flex-end}@media(max-width:760px){.admin-news-row-actions{justify-content:flex-start}}

/* Patch 15.4 — responsive mobile completo */
html{max-width:100%;overflow-x:hidden}body{min-width:0;max-width:100%;overflow-x:hidden}.topbar,.topbar nav,.top-actions,main,.view,.card,.column{min-width:0}.top-actions{margin-left:auto}.mobile-nav{display:grid;gap:4px;padding:14px 0}.mobile-navbtn{display:flex;width:100%;align-items:center;gap:12px;text-align:left;padding:12px 14px}.mobile-navbtn span{width:24px;flex:0 0 24px;text-align:center}.mobile-account{display:grid;gap:3px;padding:15px 4px;border-bottom:1px solid var(--line)}.mobile-account span{font-size:.72rem;letter-spacing:.1em;color:var(--muted);font-weight:800}.mobile-account strong{overflow-wrap:anywhere}.app-footer{gap:14px;flex-wrap:wrap}.app-footer-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.app-footer-links a,.app-footer-links button{border:0;background:transparent;color:var(--teal);font:inherit;cursor:pointer;padding:3px 0}.footer-disclaimer{flex-basis:100%;margin:0;line-height:1.5}.admin-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{min-width:720px}.modal-box{max-height:calc(100dvh - 24px);overflow-y:auto}.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}.recipe-actions .btn,.modal-actions .btn{flex:1 1 auto}.section-head{margin-bottom:20px}.section-head h1{overflow-wrap:anywhere}.search{width:100%;max-width:520px}.flour-card,.recipe-item,.stat,.metric{min-width:0;overflow-wrap:anywhere}.news-item,.admin-news-row{min-width:0}.admin-news-row p,.news-item p{overflow-wrap:anywhere}.legal-page,.utility-page{max-width:100%}img,video,svg{max-width:100%}.password-wrap{min-width:0}.password-wrap input{min-width:0}.antibot-row{min-width:0}

@media(max-width:1100px){
 .topbar{padding-inline:22px;gap:16px}.brand img{width:195px}.top-actions{gap:8px}.top-actions .btn{padding-inline:12px}.desktop-nav>.navbtn,.nav-dropdown>summary{padding-inline:8px}
}
@media(max-width:900px){
 .topbar{height:70px;flex-wrap:nowrap;padding:8px 16px}.brand{min-width:0;display:flex;align-items:center}.brand img{width:165px;height:48px}.top-actions{flex:1;justify-content:flex-end}.top-actions>#accountBadge,.top-actions>#registerBtn,.top-actions>#loginBtn,.top-actions>#printBtn{display:none}.language-picker select{width:auto;min-width:66px;padding:9px 7px}.mobile-menu-btn{display:flex;flex:0 0 46px}.desktop-nav{display:none!important}main{padding:24px 18px}.hero{align-items:flex-start;gap:18px}.hero h1,.section-head h1{font-size:clamp(28px,7vw,36px)}.dashboard{grid-template-columns:1fr}.schedule-fields,.rest-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.media-modal-box{width:min(96vw,760px)}.admin-table-wrap{margin-inline:-4px;width:calc(100% + 8px)}
}
@media(max-width:650px){
 .topbar{padding:7px 12px}.brand img{width:145px;height:44px}.language-picker select{font-size:13px;min-width:61px}.mobile-menu{width:min(92vw,380px);padding:14px}.mobile-menu-head img{width:170px;height:48px}main{padding:18px 12px}.hero{display:block;margin-bottom:18px}.hero h1,.section-head h1{font-size:29px;line-height:1.08}.hero p,.section-head p{line-height:1.5}.card{padding:15px;border-radius:15px}.card-title{align-items:flex-start}.grid2,.grid3,.grid4,.percent-grid,.metrics,.catalog,.recipe-list,.stats,.schedule-fields,.rest-summary{grid-template-columns:1fr}.grid2,.grid3,.grid4{gap:12px}.percent-grid{gap:10px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:13px}.metric b{font-size:18px}.planner-guide-callout{padding:14px}.planner-guide-callout .btn{width:100%}.recipe-top,.media-section-title{flex-direction:column;align-items:flex-start}.recipe-actions,.modal-actions{display:grid;grid-template-columns:1fr;width:100%}.recipe-actions .btn,.modal-actions .btn{width:100%}.admin-news-actions{display:grid;gap:9px}.admin-news-actions .btn{width:100%}.modal{padding:6px;align-items:end}.modal-box{width:100%;max-height:94dvh;border-radius:18px 18px 0 0;padding:20px 16px}.auth-modal-box>img,.modal-box>img{max-width:180px;height:auto}.media-modal-box{width:100%;max-height:94dvh}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.media-section{padding:12px}.app-footer{display:grid;justify-items:center;text-align:center;padding:20px 14px}.app-footer img{width:155px}.app-footer-links{justify-content:center}.footer-disclaimer{max-width:580px}.admin-table th,.admin-table td{padding:9px 8px;font-size:13px}.admin-user-grid{grid-template-columns:1fr!important}.admin-inline-action{align-self:stretch}.admin-inline-action .btn{width:100%}.antibot-row{display:grid!important;grid-template-columns:1fr!important;gap:10px}.antibot-row .btn{width:100%}.check{align-items:flex-start}.check input{margin-top:3px;flex:0 0 auto}input,select,textarea{font-size:16px}input[type=date],input[type=datetime-local],input[type=time]{min-width:0}.notice{overflow-wrap:anywhere}
}
@media(max-width:390px){
 .brand img{width:128px}.topbar{gap:7px}.mobile-menu-btn{width:42px;height:42px;flex-basis:42px}.language-picker select{min-width:57px;padding-inline:5px}.metrics{grid-template-columns:1fr}.media-grid{grid-template-columns:1fr}.hero h1,.section-head h1{font-size:26px}.btn{width:100%}.top-actions .mobile-menu-btn{width:42px}.mobile-menu{width:96vw}.mobile-menu-head img{width:150px}.mobile-navbtn{padding:11px 10px}.app-footer-links{flex-direction:column;gap:7px}}


/* Patch 15.4.2 — logo principale più grande esclusivamente nella Home */
.home-logo{display:block;width:min(390px,82%);height:auto;margin:0 0 24px}
@media(max-width:900px){.home-logo{width:min(340px,76%);margin-bottom:20px}}
@media(max-width:650px){.home-logo{width:min(300px,88%);margin:0 auto 22px}.landing-copy{text-align:center}.landing-actions{justify-content:center}}
@media(max-width:380px){.home-logo{width:min(260px,90%)}}

/* Patch 15.5 — installazione PWA online */
.install-app-btn{gap:8px;background:#17833c;color:#fff;border-color:#17833c}.install-app-btn:hover{filter:brightness(.96)}.install-app-hint{margin:10px 0 0;color:var(--muted);font-size:.9rem}.install-help-box{max-width:520px}.install-help-box>img{display:block;width:min(230px,70%);height:auto;margin:0 auto 18px}.install-steps{display:grid;gap:12px;margin:20px 0;padding-left:24px}.install-steps li{padding-left:5px;line-height:1.5}@media(max-width:650px){.landing-actions .install-app-btn{width:100%}.install-app-hint{text-align:center}.install-help-box{border-radius:18px 18px 0 0}}

/* Patch 15.6 - Calcola guidato, identità utente e permessi */
.welcome-badge{font-weight:800;padding:.45rem .75rem;border-radius:999px;background:#eef8f1;color:#126c32;white-space:nowrap}.guided-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem}.guided-page .card{margin-bottom:1.1rem}.guided-process{margin-top:1.2rem}.guided-process h2,.guided-process h3{margin-top:1.5rem}.guided-process p{line-height:1.72;margin:.75rem 0}.guided-process .process-time{display:inline-block;font-weight:800;color:#126c32;background:#eef8f1;border-radius:999px;padding:.3rem .65rem}.guided-register-gate{margin-top:1rem;padding:1.2rem;border:2px dashed #17833c;border-radius:16px;background:#f4fbf6;text-align:center}.guided-warning{padding:.85rem 1rem;border-radius:12px;margin:.7rem 0;background:#fff7dc;border-left:4px solid #d59d00}.guided-warning.danger{background:#fff0f0;border-color:#c62828}.guided-advice{padding:1rem;border-radius:14px;background:#f5f7f8;margin-top:1rem}.guided-page select:disabled,.guided-page input:disabled{opacity:.68;cursor:not-allowed}.admin-user-grid .tier-pill{text-transform:capitalize}.print-guided-only{display:none}@media(max-width:900px){.guided-layout{grid-template-columns:1fr}.welcome-badge{max-width:145px;overflow:hidden;text-overflow:ellipsis}}@media print{body.guided-print-mode *{visibility:hidden!important}body.guided-print-mode #guided,body.guided-print-mode #guided *{visibility:visible!important}body.guided-print-mode #guided{position:absolute;inset:0;width:100%}.guided-print-mode .guided-layout>.column:first-child,.guided-print-mode #guidedPrint,.guided-print-mode .guided-register-gate,.guided-print-mode header,.guided-print-mode footer{display:none!important}.guided-print-mode .guided-layout{display:block}.guided-print-mode .guided-process{display:block!important}}
.tier-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.tier-config-card{border:1px solid var(--line,#ddd);border-radius:16px;padding:16px;display:grid;gap:10px}.tier-config-card h3{margin:0}.tier-config-card label{display:grid;gap:5px}

/* Patch 15.6.3 — wizard Calcola facile */
.guided-wizard-shell{max-width:920px;margin:0 auto;display:grid;gap:24px}
.guided-wizard-card{min-height:430px}
.guided-progress{height:8px;background:var(--surface-2,#ececec);border-radius:999px;overflow:hidden;margin-bottom:12px}
.guided-progress>div{height:100%;width:10%;background:var(--accent,#b52720);transition:width .25s ease}
.guided-step-counter{font-size:.9rem;opacity:.72;margin-bottom:20px}
.guided-step{animation:guidedStepIn .2s ease}
.guided-step label{display:block;max-width:620px;margin:18px auto 0}
.guided-step select,.guided-step input{width:100%}
.guided-choice-advice{max-width:720px;margin:20px auto 0;padding:16px 18px;border-left:4px solid var(--accent,#b52720);background:var(--surface-2,#f6f3ef);border-radius:10px}
.guided-choice-advice p{margin:0;line-height:1.65}
.guided-fixed-option{padding:14px;background:var(--surface-2,#f6f3ef);border-radius:10px}
.guided-wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}
.guided-wizard-actions .btn:last-child{margin-left:auto}
#guidedResultCard{scroll-margin-top:20px}
@keyframes guidedStepIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:640px){.guided-wizard-card{min-height:0}.guided-wizard-actions{flex-wrap:wrap}.guided-wizard-actions .btn{flex:1}.guided-register-gate .grid2{grid-template-columns:1fr}}

/* Patch 15.6.4 */
.top-actions #accountBadge{display:inline-flex!important;order:2}.top-actions .language-picker{order:1}.top-actions #registerBtn,.top-actions #loginBtn,.top-actions #printBtn,.top-actions .mobile-menu-btn{order:3}.guided-mini-summary{display:flex;flex-wrap:wrap;gap:.45rem;margin:.75rem 0 1rem}.guided-mini-summary:empty{display:none}.guided-summary-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.38rem .62rem;border-radius:999px;background:#eef6f4;color:#245b50;font-size:.78rem;font-weight:800;border:1px solid #d8ebe6}.guided-summary-chip b{color:#113f37}.guided-choice-advice p{line-height:1.62}.landing-final-cta h2{margin-bottom:.4rem}
@media(max-width:900px){.top-actions>#accountBadge{display:inline-flex!important;max-width:132px;padding:.38rem .55rem;font-size:.75rem}.top-actions{gap:6px}.language-picker select{min-width:58px}}
@media(max-width:430px){.brand img{width:112px!important}.top-actions>#accountBadge{max-width:108px;font-size:.69rem}.language-picker select{min-width:54px;padding-inline:4px}.topbar{gap:5px}}

/* Patch 15.6.5 — campi wizard sempre visibili e accessibili */
.guided-step label{color:inherit;opacity:1;visibility:visible}
.guided-step input,.guided-step select,.guided-step textarea{display:block!important;visibility:visible!important;opacity:1!important;min-height:46px;margin-top:8px;background:var(--card,#fff);color:inherit;border:1px solid var(--line,#d8d8d8);border-radius:12px;padding:10px 12px;box-sizing:border-box}
#guidedQuantityFields{display:grid!important;visibility:visible!important;opacity:1!important;gap:14px}
#guidedQuantityFields label{display:block!important;visibility:visible!important;opacity:1!important}
.guided-guide-card p{max-width:900px}


/* v15.6.8 — menu desktop stabile e più facile da usare */
.desktop-nav .nav-dropdown{position:relative;z-index:40}
.desktop-nav .nav-dropdown>summary{min-height:44px;display:flex;align-items:center;padding:10px 13px;border-radius:10px;user-select:none}
.desktop-nav .nav-dropdown[open]>summary,.desktop-nav .nav-dropdown>summary:hover{background:#f3f7f6}
.desktop-nav .nav-dropdown-menu{top:calc(100% - 1px);padding-top:12px;min-width:270px;z-index:80}
.desktop-nav .nav-dropdown-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:14px;background:transparent}
.desktop-nav .nav-dropdown-menu button{min-height:42px;padding:11px 13px}

/* Pizzood 16.1 */
.home-install-block{margin-top:1.2rem}.guided-fixed-note{grid-column:1/-1;padding:1rem;border-radius:12px;background:#f7f5f1}.guided-step select:empty{min-height:44px}.nav-dropdown{position:relative}.nav-dropdown-menu{top:calc(100% - 2px);padding-top:8px}.nav-dropdown::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}.landing-hero-pro{grid-template-columns:1fr}.landing-score{display:none!important}


/* Procedimenti guidati 16.1 */
.guided-process-document{display:grid;gap:1.15rem}.guided-process-intro{padding:1.25rem 1.35rem;border-radius:16px;background:#f4f8f7;border:1px solid #dceae6}.guided-process-intro h2{margin:.2rem 0 .6rem}.guided-process-intro p:last-child{margin-bottom:0}.guided-process-step{padding:1.15rem 1.25rem;border:1px solid var(--line,#dfe5e3);border-radius:16px;background:var(--card,#fff)}.guided-process-step-head{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:.75rem}.guided-process-step-head h3{margin:0 0 .35rem}.guided-process-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#17833c;color:#fff;font-weight:900}.guided-process-step p{line-height:1.75;margin:.65rem 0}.guided-tech-visual{margin:1rem 0 0;padding:1rem;border-radius:14px;background:#f7f5f1}.guided-tech-visual svg{display:block;width:100%;height:auto;max-height:155px;color:#1f4d43}.guided-tech-visual svg rect,.guided-tech-visual svg circle,.guided-tech-visual svg ellipse,.guided-tech-visual svg path{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.guided-tech-visual p{font-size:.92rem;margin:.5rem 0 0;color:#41534f}.guided-process-check{padding:1.1rem 1.25rem;border-left:5px solid #17833c;border-radius:12px;background:#eef8f1}.guided-process-check h3{margin-top:0}.guided-process-check p{margin-bottom:0;line-height:1.7}@media(max-width:640px){.guided-process-step{padding:1rem}.guided-process-step-head{gap:.6rem}.guided-tech-visual{padding:.65rem}}

/* Pizzood 16.2 — inviti catalogo e profilo account */
.catalog-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;padding:22px 24px;border:1px solid #b9ded5;border-radius:18px;background:linear-gradient(135deg,#eef9f6,#f8fbff)}
.catalog-invite h2{margin:6px 0 8px;font-size:1.45rem}.catalog-invite p{margin:0;max-width:850px;color:var(--muted);line-height:1.6}.catalog-invite .btn{flex:0 0 auto}
.under-construction .catalog-invite{max-width:680px;margin:20px auto 26px;text-align:left}.under-construction .catalog-invite .eyebrow{display:block}.under-construction .catalog-invite h2{margin-top:6px}
.account-plan-card{grid-column:1/-1;background:linear-gradient(135deg,#effaf7,#f8fbff)}.account-plan-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.account-plan-head h2{margin:6px 0 8px}.account-plan-head p{margin:0;color:var(--muted);line-height:1.55}.account-tier-badge{display:inline-flex;align-items:center;justify-content:center;min-width:105px;padding:12px 16px;border-radius:999px;background:#173254;color:#fff;font-weight:900;letter-spacing:.08em}.account-tier-badge[data-tier="master"]{background:#7a4e12}.account-tier-badge[data-tier="pro"]{background:#0b7f73}.account-tier-badge[data-tier="full"]{background:#6a2b82}.account-limit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.account-limit-grid>div{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}.account-limit-grid span{display:block;color:var(--muted);font-size:.82rem;margin-bottom:6px}.account-limit-grid b{font-size:1.25rem}.account-plan-note{margin:14px 0 0;color:var(--muted);font-size:.88rem}
@media(max-width:760px){.catalog-invite,.account-plan-head{align-items:stretch;flex-direction:column}.catalog-invite .btn{width:100%}.account-limit-grid{grid-template-columns:1fr 1fr}.account-tier-badge{align-self:flex-start}.under-construction .catalog-invite{text-align:center}}
@media(max-width:430px){.account-limit-grid{grid-template-columns:1fr}}

/* Pizzood 16.2.1 — collaborazioni cataloghi e profilo utente ben visibili */
.catalog-invite{
 display:flex!important;
 align-items:center;
 justify-content:space-between;
 gap:24px;
 width:100%;
 margin:0 0 24px;
 padding:22px 24px;
 border:2px solid #b9ded5;
 border-radius:18px;
 background:linear-gradient(135deg,#effaf7,#f8fbff);
 text-align:left;
}
.catalog-invite h2{margin:5px 0 8px;font-size:clamp(1.35rem,2.5vw,2rem)}
.catalog-invite p{margin:0;color:var(--muted);line-height:1.55}
.catalog-invite .btn{flex:0 0 auto;white-space:nowrap}
.utility-page>.under-construction{max-width:920px}
.utility-page .utility-invite{margin:22px 0 26px}
.account-plan-card{display:block!important;visibility:visible!important;opacity:1!important;grid-column:1/-1}
.account-limit-grid>div{min-height:92px}
@media(max-width:760px){
 .catalog-invite{align-items:stretch;flex-direction:column;padding:18px}
 .catalog-invite .btn{width:100%}
 .account-limit-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:460px){.account-limit-grid{grid-template-columns:1fr}}

.admin-system-manager{margin-bottom:22px}.admin-system-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.admin-system-head h2{margin:.3rem 0}.admin-system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.admin-system-grid>div{border:1px solid var(--line);border-radius:13px;padding:14px}.admin-system-grid span{display:block;color:var(--muted);font-size:.82rem;margin-bottom:5px}.admin-system-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.admin-patch-picker{min-width:230px}.admin-update-history{display:grid;gap:9px}.admin-update-row{display:grid;grid-template-columns:180px 190px 1fr;gap:12px;padding:11px 0;border-top:1px solid var(--line);align-items:start}.admin-update-row p{margin:0}.admin-update-row span{color:var(--muted)}@media(max-width:760px){.admin-system-head,.admin-system-actions{align-items:stretch;flex-direction:column}.admin-system-grid{grid-template-columns:1fr 1fr}.admin-update-row{grid-template-columns:1fr}.admin-system-actions .btn,.admin-patch-picker{width:100%}}@media(max-width:480px){.admin-system-grid{grid-template-columns:1fr}}

/* 17.0.5 · Admin suddiviso in pagine */
.admin-table-wrap{width:100%;overflow-x:auto}
.admin-table-wrap .admin-table{min-width:1080px}
.admin-system-section{margin-top:20px;padding-top:18px;border-top:2px solid var(--line)}
.admin-system-section-title{margin-bottom:12px}.admin-system-section-title h3{margin:0 0 5px}.admin-system-section-title p{margin:0;color:var(--muted)}
.admin-patch-section{border-top-color:var(--primary)}.admin-backup-section{border-top-color:var(--line)}
.admin-table-toolbar,.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.admin-pagination{margin:14px 0 0}
.admin-table-toolbar label{display:flex;align-items:center;gap:8px;font-weight:700}.admin-table-toolbar select{width:auto;min-width:82px}
.admin-sort-btn{border:0;background:none;padding:0;font:inherit;font-weight:800;color:inherit;cursor:pointer;text-align:left;white-space:nowrap}
.admin-filter-row th{padding-top:5px}.admin-column-filter{min-width:95px;width:100%;font-size:.82rem;padding:7px 8px}
.admin-news-description{min-width:280px;white-space:pre-wrap}.admin-table td{vertical-align:top}
@media(max-width:760px){.admin-table-toolbar,.admin-pagination{align-items:stretch;flex-direction:column}.admin-pagination .btn{width:100%}.admin-system-section .admin-system-actions{flex-direction:column;align-items:stretch}}

/* 17.0.8 - sicurezza admin e tabella utenti compatta */
#userTable .admin-table-wrap .admin-table{min-width:0;width:100%;table-layout:auto}
#userTable .admin-table th,#userTable .admin-table td{padding:9px 7px;font-size:12px;white-space:nowrap}
#userTable .admin-table th:first-child,#userTable .admin-table td:first-child{white-space:normal;min-width:150px}
#userTable .admin-table th:last-child,#userTable .admin-table td:last-child{min-width:190px}
#userTable .admin-table td:last-child .btn{min-height:36px;padding:7px 9px;font-size:12px}
#userTable .admin-column-search{min-width:70px;padding:7px 6px;font-size:12px}
.admin-device-list{display:grid;gap:10px;margin-top:16px}.admin-device-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:14px;padding:14px}.admin-device-row>div:first-child{display:grid;gap:5px}.admin-device-row small{display:block;color:var(--muted)}.admin-device-row .status-pill{margin-left:10px;font-size:.75rem}.admin-device-row.is-revoked{opacity:.58}.admin-device-actions{margin-top:14px}
@media(max-width:1100px){#userTable .admin-table-wrap{overflow-x:auto}#userTable .admin-table-wrap .admin-table{min-width:980px}}
@media(max-width:760px){.admin-device-row{align-items:flex-start;flex-direction:column}.admin-device-row .btn{width:100%}}


/* 17.0.8 */
.mobile-top-login{display:none}
.device-auto-name{display:grid;gap:4px;padding:12px;border:1px solid var(--line,#dbe4e8);border-radius:12px;background:#f8fbfa;margin-bottom:12px}
.device-auto-name span,.device-meta{font-size:.78rem;color:#65727a}
.admin-device-row .device-meta{display:block;margin-top:3px}
@media(max-width:760px){
 .top-actions #registerBtn,.top-actions #loginBtn{display:none!important}
 .top-actions .mobile-top-login:not(.hidden){display:inline-flex!important;padding:8px 12px;white-space:nowrap}
 .top-actions{gap:6px}
 .welcome-badge{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}


/* 17.0.9 - PDF professionale e dispositivi automatici */
#proPdfBtn{margin-top:8px}
.admin-device-row .device-meta{display:block;margin-top:4px;font-weight:600;color:#35506d}
.admin-device-row b{font-size:1.02rem}
\n/* 17.1.0 — header mobile e sottomenu amministrazione */
.mobile-nav-arrow{margin-left:auto;font-size:1.45rem;line-height:1}.mobile-admin-nav{min-height:0}.mobile-admin-back{color:var(--teal);border-bottom:1px solid var(--line);border-radius:0;margin-bottom:8px}.mobile-menu-open .top-actions>#printBtn{display:none!important}
.mobile-top-auth{display:none}
@media(max-width:900px){
 .topbar{display:grid;grid-template-columns:minmax(104px,1fr) auto auto auto auto;gap:6px;padding:7px 12px;height:70px}
 .brand{grid-column:1;min-width:0}.brand img{width:132px!important;height:44px}
 .top-actions{display:contents}
 .language-picker{grid-column:2;display:flex;align-items:center;justify-content:center;position:relative;width:38px;height:42px;border:1px solid #d7dee8;border-radius:10px;background:#fff}
 .mobile-language-flag{display:block;font-size:18px;line-height:1}
 .language-picker select{position:absolute;inset:0;width:100%!important;min-width:0!important;max-width:none!important;opacity:0;cursor:pointer}
 .language-picker select option{font-size:14px;color:var(--ink)}
 .top-actions>#accountBadge{grid-column:3;display:inline-flex!important;max-width:122px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:.38rem .55rem;font-size:.72rem}
 .top-actions>.mobile-top-auth:not(.hidden){grid-column:4;display:inline-flex!important;width:auto!important;min-height:42px;padding:8px 11px;white-space:nowrap}
 .top-actions>.mobile-menu-btn{grid-column:5;width:42px;height:42px;flex-basis:42px}
 .top-actions>#registerBtn,.top-actions>#loginBtn,.top-actions>#printBtn{display:none!important}
 .mobile-menu-actions #mobilePrintBtn{display:none}
}
@media(max-width:430px){
 .topbar{grid-template-columns:minmax(96px,1fr) 36px minmax(74px,105px) auto 42px;gap:4px;padding-inline:9px}
 .brand img{width:112px!important}
 .language-picker{width:34px}.language-picker select{width:100%!important}
 .top-actions>#accountBadge{max-width:105px;font-size:.67rem;padding-inline:.42rem}
 .top-actions>.mobile-top-auth:not(.hidden){padding:7px 9px;font-size:.76rem}
}

@media(min-width:901px){.mobile-language-flag{display:none}}


/* 17.1.1 — header mobile compatto su una sola riga */
@media(max-width:900px){
 .topbar{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  height:68px!important;
  min-height:68px!important;
  padding:7px 10px!important;
  gap:5px!important;
  overflow:visible!important;
 }
 .brand{
  flex:1 1 auto!important;
  min-width:82px!important;
  max-width:none!important;
 }
 .brand img{
  display:block!important;
  width:118px!important;
  height:42px!important;
  object-fit:contain!important;
  object-position:left center!important;
 }
 .top-actions{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  min-width:0!important;
  margin-left:auto!important;
 }
 .language-picker{
  display:flex!important;
  position:relative!important;
  flex:0 0 32px!important;
  width:32px!important;
  height:38px!important;
  padding:0!important;
  border:1px solid #d7dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
 }
 .mobile-language-flag{
  display:block!important;
  width:19px!important;
  height:13px!important;
  border-radius:2px!important;
  box-shadow:0 0 0 1px rgba(15,31,54,.12)!important;
  background:linear-gradient(90deg,#149447 0 33.333%,#fff 33.333% 66.666%,#d62938 66.666% 100%)!important;
 }
 .language-picker select{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  opacity:0!important;
  cursor:pointer!important;
 }
 .top-actions>#accountBadge{
  display:inline-flex!important;
  flex:0 1 auto!important;
  max-width:86px!important;
  min-width:0!important;
  height:38px!important;
  align-items:center!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  padding:0 8px!important;
  font-size:.72rem!important;
  line-height:1!important;
 }
 .top-actions>.mobile-top-auth:not(.hidden){
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:38px!important;
  height:38px!important;
  padding:0 9px!important;
  font-size:.76rem!important;
  line-height:1!important;
  white-space:nowrap!important;
 }
 .top-actions>.mobile-menu-btn{
  display:flex!important;
  flex:0 0 40px!important;
  width:40px!important;
  height:40px!important;
 }
 .top-actions>#registerBtn,.top-actions>#loginBtn,.top-actions>#printBtn{display:none!important}
}
@media(max-width:390px){
 .topbar{padding-inline:7px!important;gap:4px!important}
 .brand{min-width:74px!important}
 .brand img{width:102px!important;height:39px!important}
 .language-picker{flex-basis:29px!important;width:29px!important;height:36px!important}
 .mobile-language-flag{width:17px!important;height:12px!important}
 .top-actions>#accountBadge{max-width:68px!important;height:36px!important;padding-inline:6px!important;font-size:.67rem!important}
 .top-actions>.mobile-top-auth:not(.hidden){height:36px!important;min-height:36px!important;padding-inline:7px!important;font-size:.71rem!important}
 .top-actions>.mobile-menu-btn{flex-basis:38px!important;width:38px!important;height:38px!important}
}
@media(max-width:350px){
 .brand img{width:88px!important}
 .top-actions>#accountBadge{max-width:54px!important}
}


/* 17.1.1 — richiesta OTP persistente, adatta al passaggio tra browser ed email */
.otp-modal{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,31,54,.58);backdrop-filter:blur(4px)}
.otp-modal.hidden{display:none!important}
.otp-modal-card{width:min(100%,440px);padding:24px;border:1px solid #dce5e3;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(15,31,54,.28)}
.otp-modal-head h3{margin:5px 0 0;font-size:1.35rem;color:#10213d}
.otp-modal-message{margin:16px 0;color:#526278;line-height:1.55}
.otp-code-label{display:block;margin-bottom:7px;font-weight:800;color:#10213d}
.otp-code-input{width:100%;height:58px;border:2px solid #cfd9e4;border-radius:14px;background:#fff;text-align:center;font-size:1.65rem;font-weight:800;letter-spacing:.38em;color:#10213d}
.otp-code-input:focus{outline:none;border-color:#148b79;box-shadow:0 0 0 4px rgba(20,139,121,.12)}
.otp-countdown{margin-top:10px;text-align:center;font-size:.88rem;font-weight:700;color:#168675}
.otp-error{min-height:22px;margin-top:7px;text-align:center;font-size:.86rem;font-weight:700;color:#b42318}
.otp-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
body.otp-modal-open{overflow:hidden}
@media(max-width:600px){.otp-modal{align-items:flex-end;padding:10px}.otp-modal-card{padding:20px 17px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 14px 14px}.otp-modal-actions{display:grid;grid-template-columns:1fr 1fr}.otp-modal-actions .btn{width:100%}.otp-code-input{font-size:1.5rem}}

.recipe-calculator-source{margin:.45rem 0 0;padding-top:.45rem;border-top:1px solid rgba(23,131,60,.18);font-size:.92rem;color:#31584a}.recipe-calculator-source b{color:#173d31}

/* 17.1.12 - Area conoscenza riservata e glossario contestuale */
.knowledge-page{max-width:1180px;margin:0 auto;padding:1rem 0 2rem}.knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.knowledge-card h2{margin-top:0}.knowledge-card h3{margin:1.05rem 0 .3rem;font-size:1rem}.knowledge-card details{border-top:1px solid var(--border);padding:.8rem 0}.knowledge-card details:first-of-type{border-top:0}.knowledge-card summary{cursor:pointer;font-weight:700}.knowledge-card details p{margin:.55rem 0 0;color:var(--muted);line-height:1.55}.knowledge-links{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin:1.25rem 0}.knowledge-list{margin:.5rem 0 0;padding-left:1.2rem}.knowledge-list li{margin:.45rem 0}.glossary-index{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1rem}.glossary-index a{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;border:1px solid var(--border);border-radius:999px;text-decoration:none;font-weight:800;color:inherit;background:var(--card)}.glossary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.glossary-letter h2{margin:0 0 .65rem}.glossary-letter dl{margin:0}.glossary-letter dt{font-weight:800;margin-top:.8rem}.glossary-letter dd{margin:.2rem 0 0;color:var(--muted);line-height:1.55}.term-help{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--accent);font-weight:900;cursor:pointer;padding:0 .2rem;font-size:1rem;vertical-align:middle}.term-popover{position:absolute;z-index:1400;width:min(330px,calc(100vw - 24px));padding:1rem 2.25rem 1rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 14px 40px rgba(0,0,0,.18)}.term-popover>button:first-child{position:absolute;right:.6rem;top:.45rem;border:0;background:transparent;font-size:1.4rem;cursor:pointer}.term-popover strong{display:block;margin-bottom:.35rem}.term-popover p{margin:.25rem 0 .65rem;color:var(--muted);line-height:1.45}
@media(max-width:760px){.knowledge-grid,.glossary-list{grid-template-columns:1fr}.knowledge-page{padding-left:.25rem;padding-right:.25rem}.knowledge-links .btn{width:100%}}


/* 17.1.15 - accesso persistente e dispositivi connessi */
.remember-check{margin:10px 0 14px}.connected-devices-list{display:grid;gap:10px;margin:14px 0}.connected-device{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--border,#d9e1e5);border-radius:12px;background:rgba(255,255,255,.55)}.connected-device small{display:block;margin-top:5px;line-height:1.45}.connected-device .badge{font-size:.72rem;margin-left:6px}.connected-device .btn{flex:0 0 auto}@media(max-width:620px){.connected-device{align-items:flex-start;flex-direction:column}.connected-device .btn{width:100%}}


/* Pizzood 18.0.0 - Social */
.social-share-invite{padding:16px;border-radius:14px;background:linear-gradient(135deg,#f2fff6,#fff8f3);border:1px solid #d9eadf;margin:14px 0}.social-share-invite h3{margin:0 0 6px}.recipe-social-share-box{margin-top:18px;padding:16px;border:1px solid #ddd;border-radius:14px}.social-destinations{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:12px 0}.social-media-choice{display:flex;gap:10px;overflow:auto;margin:10px 0}.social-media-choice label{position:relative;flex:0 0 92px}.social-media-choice img{width:92px;height:72px;object-fit:cover;border-radius:10px;border:2px solid transparent}.social-media-choice input:checked+img{border-color:#17833c}.news-social-links{display:flex;gap:8px;margin-top:10px}.social-facebook{background:#1877f2!important}.social-instagram{background:#c13584!important}.social-admin-grid{align-items:start}.social-queue-item{padding:14px 0;border-bottom:1px solid #eee}.social-queue-item:last-child{border-bottom:0}.mini-link{border:0;background:transparent;cursor:pointer;font-weight:700}.admin-news-form input[type=url],.admin-news-form input[type=text],.admin-news-form textarea,#adminSocial input,#adminSocial textarea{width:100%}
.media-footer-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.media-open{display:block;width:100%;height:100%;cursor:zoom-in}.media-open img{display:block}
.social-publish-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.social-publish-head h3{margin:4px 0 0}
@media(max-width:560px){.media-footer-actions,.social-publish-head{display:grid;grid-template-columns:1fr}.media-footer-actions .btn,.social-publish-head .btn{width:100%}}

.community-profile-settings{margin:18px 0;padding:16px;border:1px solid var(--line,#ddd);border-radius:16px;background:rgba(255,255,255,.6)}
.sortable-media label{position:relative;cursor:grab}.sortable-media label span{position:absolute;right:6px;top:6px;background:#fff;border-radius:999px;padding:2px 7px;font-weight:700}
.recipe-social-share-box textarea{width:100%}.recipe-social-share-box .news-social-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}


/* 18.0.6 - condivisione community separata */
.share-community-callout{display:flex;flex-direction:column;gap:.38rem;align-items:stretch}
.share-community-callout small{display:block;line-height:1.35;color:var(--muted,#6b6b6b);font-size:.82rem}
.recipe-list-share{min-width:220px;max-width:290px}
.recipe-social-modal-box{width:min(980px,96vw);max-height:92vh;overflow:auto}
.recipe-social-modal-box>img{max-width:190px;height:auto;margin-bottom:.7rem}
.recipe-social-share-box{display:flex;flex-direction:column;gap:1rem}
.disabled-option{opacity:.6}
.notice.warning{border-color:#e7b54a;background:#fff8e5}
@media(max-width:700px){.recipe-list-share{min-width:100%;max-width:none}.media-footer-actions{align-items:stretch}.recipe-social-modal-box{width:96vw}}

/* 18.0.7 - Gestione novità compatta e diagnostica social */
.compact-head{margin-bottom:12px}.compact-head h1{font-size:clamp(1.8rem,3vw,2.35rem);margin-bottom:4px}.compact-head p{margin:0}.compact-news-manager{padding:18px}.compact-news-form{display:grid;grid-template-columns:1fr;gap:10px;align-items:stretch}.news-core-grid{display:grid;grid-template-columns:130px minmax(180px,.65fr) minmax(320px,1.7fr);gap:10px;align-items:end}.news-description-field textarea{min-height:58px}.news-social-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.news-social-copy-grid textarea{min-height:78px}.news-assets-grid{display:grid;grid-template-columns:minmax(190px,.7fr) 1fr 1fr;gap:10px;align-items:end}.news-publish-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}.compact-destinations{margin:0}.compact-news-manager label{gap:4px}.compact-news-manager input,.compact-news-manager textarea{padding:9px 11px}.compact-news-manager .admin-news-actions{flex-wrap:nowrap}.compact-news-manager .admin-news-list{margin-top:12px}.compact-news-manager .admin-table th,.compact-news-manager .admin-table td{padding:7px 8px}.compact-news-manager .notice{margin-top:10px}.notice.danger{white-space:normal;overflow-wrap:anywhere}.notice a{font-weight:800}
@media(max-width:980px){.news-core-grid,.news-assets-grid{grid-template-columns:1fr 1fr}.news-description-field{grid-column:1/-1}.news-social-copy-grid{grid-template-columns:1fr 1fr}.news-publish-row{align-items:flex-start}}
@media(max-width:700px){.news-core-grid,.news-social-copy-grid,.news-assets-grid{grid-template-columns:1fr}.news-description-field{grid-column:auto}.news-publish-row{display:grid}.compact-news-manager .admin-news-actions{display:grid;grid-template-columns:1fr}.compact-news-manager .admin-news-actions .btn{width:100%}}

/* 18.0.8 - riepilogo ricette più compatto */
@media (min-width:651px){
  .recipe-item .recipe-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px;align-items:start}
  .recipe-item .recipe-actions>.btn,
  .recipe-item .recipe-actions .share-community-callout>.btn{min-height:36px;padding:7px 10px;border-radius:9px;font-size:13px;line-height:1.15;width:100%}
  .recipe-item .recipe-actions .share-community-callout{margin:0;min-width:0}
  .recipe-item .recipe-actions .share-community-callout small{display:block;margin-top:5px;font-size:11px;line-height:1.3}
}

/* 18.0.9 */
.social-template-language{border:1px solid #eadfd6;border-radius:14px;padding:.7rem 1rem;margin:.7rem 0;background:#fff}.social-template-language summary{font-weight:800;cursor:pointer}.social-template-language .grid2{margin-top:.8rem}.social-template-admin textarea{min-height:230px}.recipe-social-modal-box{max-width:980px}.recipe-social-share-box textarea{font-size:.92rem;line-height:1.45}.social-publish-head{margin-bottom:.75rem}

/* 18.0.10 - Home hero più compatta e immediata */
.landing-hero-pro{min-height:auto!important;padding-top:38px;padding-bottom:38px}
.landing-hero-pro .landing-copy h1{margin-bottom:14px}
.landing-hero-pro .landing-lead{margin-bottom:18px;max-width:900px}


.home-value-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:22px 0 14px;max-width:850px}
.home-value-row{display:flex;align-items:center;gap:13px;min-height:68px;padding:10px 4px;border-bottom:1px solid rgba(15,139,121,.18)}
.home-value-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,rgba(15,139,121,.16),rgba(15,139,121,.06));color:var(--brand);box-shadow:inset 0 0 0 1px rgba(15,139,121,.12)}
.home-value-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.home-value-row strong{display:block;margin:0 0 4px;font-size:1rem;line-height:1.1;color:var(--ink)}
.home-value-row small{display:block;margin:0;color:var(--muted);font-size:.82rem;line-height:1.35}
@media(max-width:700px){.landing-hero-pro{padding-top:24px;padding-bottom:24px}.home-value-list{grid-template-columns:1fr;gap:2px;margin-top:17px}.home-value-row{min-height:59px;padding:8px 2px}.home-value-icon{flex-basis:39px;width:39px;height:39px;border-radius:12px}.home-value-icon svg{width:21px;height:21px}}

/* 18.0.15 · Connessione Meta guidata */
.meta-connect-card .meta-status-panel>div{align-items:flex-start}.meta-expiry{display:block;color:var(--muted);font-size:11px;margin-top:4px;max-width:180px}.meta-connect-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.meta-connect-actions .btn{min-width:150px;text-align:center;text-decoration:none}.meta-callback-box{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.meta-callback-box>b{display:block;margin-bottom:8px}.meta-callback-box label{font-size:11px}.meta-callback-box input{font-size:11px;background:#fff}.meta-advanced{margin-top:10px}@media(max-width:650px){.meta-connect-actions{display:grid;grid-template-columns:1fr}.meta-connect-actions .btn{width:100%}}

.social-publishing-wait{position:relative;padding-right:54px}.publish-spinner{position:absolute;right:18px;top:50%;width:22px;height:22px;margin-top:-11px;border:3px solid rgba(0,128,110,.2);border-top-color:#078b78;border-radius:50%;animation:pizzoodSpin .8s linear infinite}@keyframes pizzoodSpin{to{transform:rotate(360deg)}}.social-history-filters{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:14px}.simple-social-head,.simple-social-row{display:grid;grid-template-columns:145px 1.2fr 1.4fr .7fr .7fr .7fr 130px;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #e7edef}.simple-social-head{font-weight:800}.compact{padding:7px 9px;font-size:.82rem}@media(max-width:900px){.simple-social-head{display:none}.simple-social-row{grid-template-columns:1fr 1fr}.social-history-filters{grid-template-columns:1fr}}

/* 19.0.1 - dashboard intelligente */
.smart-dashboard-hero{margin-bottom:18px}.dashboard-question{font-size:clamp(1.25rem,2.4vw,1.8rem);font-weight:800;color:var(--ink)!important}.smart-dashboard-actions{align-items:stretch}.dashboard-primary-action{min-width:240px;font-size:1.05rem}.smart-dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-bottom:18px}.latest-preparation-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.latest-preparation-card h2,.dashboard-info h2{margin:3px 0}.latest-preparation-card p,.dashboard-info p{margin:0 0 8px;color:var(--muted)}.latest-preparation-card small{color:var(--muted);margin-bottom:6px}@media(max-width:760px){.smart-dashboard-grid{grid-template-columns:1fr}.smart-dashboard-actions .btn{width:100%}}


/* 19.0.1 · struttura Pizzood App */
.app-bottom-nav{display:none}
.app-admin-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.app-admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}
.app-status-card{display:flex;flex-direction:column;gap:5px;border-top:4px solid var(--brand)}
.app-status-card span{font-size:.72rem;font-weight:900;letter-spacing:.1em;color:var(--muted)}
.app-status-card strong{font-size:1.75rem;color:var(--ink)}
.app-status-card small{color:var(--muted)}
.app-admin-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;margin-bottom:18px}
.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.card-title-row h2{margin:3px 0}
.app-channel-pill{padding:6px 10px;border-radius:999px;background:#eaf7f1;color:#16754c;font-size:.72rem;font-weight:900;text-transform:uppercase}
.app-device-list{display:grid;gap:10px}.app-device-row,.app-release-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.app-device-row strong,.app-release-row strong{display:block}.app-device-row small,.app-release-row small{display:block;color:var(--muted);margin-top:3px}.app-release-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.app-release-meta span{font-size:.72rem;padding:4px 8px;border-radius:999px;background:#f1f4f5}.app-release-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:850px){.app-admin-summary,.app-admin-grid{grid-template-columns:1fr}.app-admin-heading{display:block}}
@media(max-width:760px){html.pizzood-native-app body{padding-bottom:74px}html.pizzood-native-app .site-footer{padding-bottom:90px}html.pizzood-native-app .app-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:1200;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-top:1px solid rgba(24,53,44,.12);box-shadow:0 -8px 24px rgba(20,46,38,.08);padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left))}.app-bottom-nav button{border:0;background:transparent;min-width:0;padding:3px 2px;color:#69756f;display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:800}.app-bottom-nav button span{font-size:1.18rem;line-height:1}.app-bottom-nav button small{font-size:.66rem;white-space:nowrap}.app-bottom-nav button.active{color:var(--brand)}html.pizzood-native-app .mobile-menu{padding-bottom:88px}.app-release-row,.app-device-row{grid-template-columns:1fr}.app-release-actions{justify-content:stretch}.app-release-actions .btn{flex:1}}

/* 19.0.3 · dashboard esclusiva app e navigazione compatta */
html:not(.pizzood-native-app) #appBottomNav{display:none!important}html:not(.pizzood-native-app) #dashboard{display:none!important}
html.pizzood-native-app body{background:linear-gradient(180deg,#fffdf8 0,#f7fbf8 100%)}
html.pizzood-native-app .app-dashboard-view.active{display:flex;flex-direction:column;gap:12px;min-height:calc(100dvh - 150px);padding:10px 0 8px;overflow:hidden}
.app-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px 2px}.app-dashboard-head h1{margin:2px 0 0;font-size:clamp(1.65rem,6vw,2.25rem)}.app-dashboard-head .dashboard-question{margin:2px 0 0;font-size:clamp(1.05rem,4vw,1.35rem)}
.app-dashboard-balls{position:relative;width:42px;height:42px;padding:0}.app-dashboard-balls i{display:none}.app-dashboard-balls::before{content:"";position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff8dc 0 18%,#e8bf75 56%,#a9652b 100%);box-shadow:inset 0 0 0 2px #81451f,0 5px 12px rgba(87,55,19,.18);animation:pizzoodDoughToPizza 3.2s ease-in-out infinite}.app-dashboard-balls::after{content:"";position:absolute;width:7px;height:7px;left:10px;top:12px;border-radius:50%;background:#d84b36;box-shadow:15px 3px #d84b36,7px 15px #d84b36,18px 18px #198754;opacity:0;animation:pizzoodToppings 3.2s ease-in-out infinite}@keyframes pizzoodDoughToPizza{0%,20%{transform:scale(.82) rotate(0)}42%{transform:scale(1.08,.78) rotate(12deg)}60%,82%{transform:scale(1) rotate(0);background:radial-gradient(circle at 42% 40%,#ffe9a7 0 42%,#e8aa48 64%,#9b5428 100%)}100%{transform:scale(.82) rotate(360deg)}}@keyframes pizzoodToppings{0%,40%,100%{opacity:0;transform:scale(.4)}58%,84%{opacity:1;transform:scale(1)}}
.app-launch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.app-launch-card{border:0;border-radius:20px;min-height:116px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:3px;color:#18352c;box-shadow:0 9px 24px rgba(30,68,55,.11);transition:transform .14s ease,box-shadow .14s ease}.app-launch-card:active{transform:scale(.965);box-shadow:0 4px 12px rgba(30,68,55,.12)}.app-launch-card b{font-size:.98rem}.app-launch-card small{font-size:.72rem;color:#52665f}.app-launch-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.72);font-size:1.55rem;margin-bottom:4px}.app-launch-easy{background:linear-gradient(145deg,#fff1cf,#ffe3a2)}.app-launch-pro{background:linear-gradient(145deg,#dcf5e8,#bde8d2)}.app-launch-new{background:linear-gradient(145deg,#ffe2df,#ffc7c0)}.app-launch-archive{background:linear-gradient(145deg,#e5ebff,#ccd7ff)}
.app-latest-card{padding:13px 15px!important;gap:3px!important;border-radius:18px!important;box-shadow:0 8px 22px rgba(30,68,55,.08)}.app-latest-card h2{font-size:1.03rem!important;margin:1px 0!important}.app-latest-card p{font-size:.78rem;margin:0!important}.app-latest-card small{font-size:.7rem;margin:0!important}.app-latest-card .btn{min-height:34px;padding:7px 12px;margin-top:5px}.app-dashboard-count,.app-dashboard-summary{display:none!important}
html.pizzood-native-app main{min-height:0}html.pizzood-native-app .view.active:not(.app-dashboard-view){overflow:visible;touch-action:pan-y}
@media(max-width:390px),(max-height:730px){html.pizzood-native-app .app-dashboard-view.active{gap:8px}.app-launch-card{min-height:96px;padding:9px 7px;border-radius:17px}.app-launch-icon{width:40px;height:40px;font-size:1.28rem;border-radius:13px}.app-latest-card{padding:10px 12px!important}.app-dashboard-head{padding-top:2px}.app-dashboard-balls i{width:26px;height:26px}}

/* 19.0.5 UX, installazione e PDF */
.install-choice-grid{align-items:stretch}.install-choice-card{text-align:center;display:flex;flex-direction:column;gap:14px}.install-choice-card .btn{margin-top:auto}.install-choice-icon{font-size:3rem}.pizzood-native-app #languageSelect{min-width:84px}.pizzood-native-app #mobileLanguageFlag{display:inline-flex}.pizzood-native-app .top-actions{gap:8px}


/* 19.0.6 · invito app Android e stato app nella lista utenti */
.android-app-notice{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:3500;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;max-width:760px;margin:auto;padding:13px 14px;border:1px solid rgba(21,123,93,.2);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 14px 38px rgba(13,49,39,.22);backdrop-filter:blur(14px)}
.android-app-notice-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#fff1cf,#ffe0a0);font-size:1.65rem}.android-app-notice-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.android-app-notice-copy b{font-size:.98rem;color:#17382f}.android-app-notice-copy span,.android-app-notice-copy small{color:var(--muted);font-size:.78rem;line-height:1.3}.android-app-notice-actions{display:flex;gap:7px}.android-app-notice-actions .btn{white-space:nowrap;padding:9px 12px}.app-used-pill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:900}.app-used-pill.yes{background:#e3f6ec;color:#116b48}.app-used-pill.no{background:#f2f3f4;color:#68736f}
@media(max-width:640px){.android-app-notice{grid-template-columns:auto 1fr;bottom:10px}.android-app-notice-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.android-app-notice-actions .btn{width:100%}}


/* 19.0.9 · gestione build Android archiviate/attive */
.app-release-manage-row{flex-wrap:wrap;gap:14px}
.app-release-summary{min-width:240px;flex:1}
.app-release-editor{width:100%;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;padding:14px;margin-top:4px;border:1px solid var(--line,#dbe5e3);border-radius:14px;background:#f8fbfa}
.app-release-editor.hidden{display:none}
.app-release-editor label{display:grid;gap:6px;font-weight:700;font-size:.9rem}
.app-release-editor select,.app-release-editor textarea{width:100%;padding:10px 12px;border:1px solid var(--line,#cad8d5);border-radius:10px;background:#fff;color:inherit}
.app-release-notes-label{grid-column:1/-1}
.app-release-editor-actions{grid-column:1/-1;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:720px){.app-release-editor{grid-template-columns:1fr}.app-release-notes-label,.app-release-editor-actions{grid-column:1}.app-release-actions{width:100%;justify-content:flex-start}}

/* 19.0.12 app UX */
html.pizzood-native-app .app-dashboard-balls{display:none!important}
html.pizzood-native-app .app-dashboard-head{padding-right:0}
html.pizzood-native-app .app-launch-card{transition:transform .16s ease,box-shadow .16s ease;box-shadow:0 10px 24px rgba(25,60,48,.08)}
html.pizzood-native-app .app-launch-card:active{transform:scale(.975)}
html.pizzood-native-app .app-launch-icon{font-family:system-ui,sans-serif}

/* 19.0.15 - guida completa */
.guide-principles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.guide-principle-card{padding:20px}.guide-principle-icon{font-size:30px;display:block;margin-bottom:8px}.guide-calculator-grid{margin:18px 0}.guide-calculator-grid ul{padding-left:20px;line-height:1.55}.guide-calculator-grid li{margin:8px 0}@media(max-width:760px){.guide-principles-grid{grid-template-columns:1fr}.guide-calculator-grid{grid-template-columns:1fr!important}}
.social-share-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0}.social-whatsapp{background:#25D366!important;color:#082b16!important}.social-share-hint{line-height:1.5}.recipe-social-share-box>label>textarea{margin-top:8px;min-height:220px}@media(max-width:700px){.social-share-buttons{grid-template-columns:1fr 1fr}.recipe-social-share-box>label>textarea{min-height:260px}}

.social-share-single{grid-template-columns:minmax(220px,420px);justify-content:start}.social-share-single .btn{width:100%}


.admin-recipe-media-view{margin-top:14px;border-top:1px solid #dfe7e6;padding-top:14px}
.admin-media-readonly-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.admin-media-readonly-head span{font-size:.82rem;color:#687384}
.admin-media-readonly-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.admin-media-readonly-grid article{background:#fff;border:1px solid #dfe7e6;border-radius:14px;overflow:hidden}
.admin-media-readonly-grid img,.admin-media-readonly-grid video{display:block;width:100%;height:150px;object-fit:cover;background:#101820}
.admin-media-readonly-grid small{display:block;padding:7px 9px;color:#5e6877}

.footer-social{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 4px}.footer-social-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;padding:8px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px}.footer-social-link span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-weight:800;background:rgba(255,255,255,.14)}

.footer-community-link{font-weight:700}

/* Pizzood 19.3.28 — Oven guide */
.oven-guide-page{max-width:1180px;margin:0 auto;padding:28px 18px 70px}.oven-lang{display:none}.oven-lang[data-oven-lang="it"]{display:block}html[lang="en"] .oven-lang{display:none}html[lang="en"] .oven-lang[data-oven-lang="en"]{display:block}html[lang="fr"] .oven-lang{display:none}html[lang="fr"] .oven-lang[data-oven-lang="fr"]{display:block}html[lang="es"] .oven-lang{display:none}html[lang="es"] .oven-lang[data-oven-lang="es"]{display:block}html[lang="it"] .oven-lang{display:none}html[lang="it"] .oven-lang[data-oven-lang="it"]{display:block}
.oven-hero{padding:34px 30px;border-radius:24px;background:linear-gradient(145deg,rgba(23,131,60,.10),rgba(255,126,37,.08));border:1px solid rgba(23,131,60,.14);margin-bottom:18px}.oven-hero h1{font-size:clamp(2rem,5vw,3.45rem);line-height:1.03;margin:.35rem 0 1rem;max-width:900px}.oven-lead{font-size:1.08rem;line-height:1.7;max-width:900px;margin:0}.oven-keyfacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.oven-keyfacts span{background:var(--card,#fff);border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:7px 11px;font-size:.9rem;font-weight:700}.oven-index{position:sticky;top:72px;z-index:5;display:flex;gap:7px;overflow:auto;padding:10px;margin:0 0 18px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.08);border-radius:16px;scrollbar-width:none}.oven-index::-webkit-scrollbar{display:none}.oven-index a{white-space:nowrap;text-decoration:none;color:inherit;border-radius:999px;padding:7px 11px;background:rgba(23,131,60,.07);font-size:.87rem;font-weight:700}.oven-section{margin:0 0 18px;padding:28px}.oven-section h2{font-size:clamp(1.5rem,3vw,2.2rem);margin:.35rem 0 1rem}.oven-section h3{margin:1.15rem 0 .5rem}.oven-section p,.oven-section li{line-height:1.68}.oven-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.oven-timeline>div{padding:16px;border-radius:15px;background:rgba(23,131,60,.055);border-left:4px solid #17833c}.oven-timeline b,.oven-timeline span{display:block}.oven-timeline span{margin-top:5px;line-height:1.5;color:var(--muted,#5e6660)}.oven-note,.oven-callout,.oven-verdict{padding:18px;border-radius:16px;background:rgba(255,126,37,.09);border:1px solid rgba(255,126,37,.2)}.oven-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.oven-three>div,.oven-type,.oven-check-grid>div,.oven-compare>div{padding:17px;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:rgba(255,255,255,.58)}.oven-three h3,.oven-type h3{margin:0 0 8px}.oven-table-wrap{overflow-x:auto;margin:16px 0}.oven-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px}.oven-table th,.oven-table td{text-align:left;vertical-align:top;padding:13px 12px;border-bottom:1px solid rgba(0,0,0,.09);line-height:1.45}.oven-table th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;background:rgba(23,131,60,.07)}.oven-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.oven-type{display:flex;flex-direction:column}.oven-stats{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 8px}.oven-stats span{font-size:.82rem;padding:5px 8px;border-radius:8px;background:rgba(23,131,60,.07)}.oven-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.oven-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:17px 0}.oven-check-grid b{font-size:1.02rem}.oven-check-grid p{margin:.35rem 0 0}.oven-verdict{margin-top:18px}.oven-verdict strong{font-size:1.05rem}.oven-verdict p{margin:.4rem 0 0}.oven-small{font-size:.88rem;color:var(--muted,#656b66);margin-top:18px}.oven-collab{margin:18px 0}.oven-actions{text-align:center;margin-top:20px}
@media(max-width:800px){.oven-guide-page{padding:18px 12px 52px}.oven-hero,.oven-section{padding:21px 17px}.oven-index{top:60px}.oven-timeline,.oven-three,.oven-type-grid,.oven-compare,.oven-check-grid{grid-template-columns:1fr}.oven-table{min-width:680px}.oven-hero h1{font-size:2.15rem}.oven-lead{font-size:1rem}}
@media(prefers-color-scheme:dark){.oven-index{background:rgba(24,27,25,.94)}.oven-three>div,.oven-type,.oven-check-grid>div,.oven-compare>div{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}.oven-keyfacts span{border-color:rgba(255,255,255,.1)}.oven-table th,.oven-table td{border-color:rgba(255,255,255,.1)}}


/* 19.3.28 · home app, navigazione pizza, Google Play, social compatti */
.top-social-links{display:flex;align-items:center;gap:6px;margin-left:auto;margin-right:8px}.top-social-links a{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;text-decoration:none;color:var(--primary);background:#fff;font-weight:900}.top-social-links a:hover{background:#f2f8f6}.social-people-icon{font-size:.58rem;letter-spacing:-2px;transform:translateX(-1px)}.social-instagram-icon{font-size:1.2rem;line-height:1}
.footer-social-icons{gap:8px}.footer-social-icons .footer-social-link{width:38px;height:38px;padding:0;justify-content:center;border-color:var(--line);background:#fff;color:var(--primary)}.footer-social-icons .footer-social-link span{background:transparent;width:auto;height:auto;font-size:1.05rem}.footer-social-icons .social-people-icon{font-size:.62rem}
.google-play-link{display:inline-flex;align-items:center;text-decoration:none}.google-play-badge{display:none;height:auto;max-width:190px}html[lang="it"] .google-play-badge.badge-it,html[lang="en"] .google-play-badge.badge-en,html[lang="fr"] .google-play-badge.badge-fr,html[lang="es"] .google-play-badge.badge-es{display:block}.home-install-block{display:flex;flex-direction:column;align-items:center;gap:7px;margin-top:18px}.home-install-label{font-weight:850;color:var(--ink)}.footer-google-play{margin-top:8px}.footer-google-play .google-play-badge{max-width:150px}.install-page-play{justify-content:center;margin:12px 0}.install-page-play .google-play-badge{max-width:220px}
html.pizzood-native-app .public-android-install,html.pizzood-native-app .public-install-nav,html.pizzood-native-app [data-view="install"]{display:none!important}
.app-launch-icons{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.app-launch-icons .app-launch-card{min-height:94px;padding:6px 2px;background:transparent!important;box-shadow:none!important;border-radius:16px}.app-launch-icons .app-launch-card:active{transform:scale(.96)}.app-launch-icons .app-launch-icon{width:62px;height:62px;border-radius:50%;font-size:1.8rem;margin-bottom:3px;box-shadow:0 8px 18px rgba(30,68,55,.10);border:1px solid rgba(30,68,55,.06)}.app-launch-icons .app-launch-easy .app-launch-icon{background:#fff0c9}.app-launch-icons .app-launch-pro .app-launch-icon{background:#d9f3e6}.app-launch-icons .app-launch-new .app-launch-icon{background:#ffe0dc}.app-launch-icons .app-launch-archive .app-launch-icon{background:#e3e9ff}.app-launch-icons .app-launch-card b{font-size:.79rem;line-height:1.05}.app-launch-icons .app-launch-card small{display:none}
.app-dashboard-news{border-top:1px solid var(--line);padding-top:8px}.app-dashboard-news-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:5px}.app-dashboard-news-head h2{font-size:1rem;margin:0}.app-dashboard-news-head .eyebrow{font-size:.62rem}.app-dashboard-news-head .linkbtn{font-size:.74rem;padding:4px 6px}.app-dashboard-news-list{display:grid;gap:6px}.dashboard-news-item{width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;padding:8px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;text-align:left;color:var(--ink);cursor:pointer}.dashboard-news-item>span{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.dashboard-news-item b{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-news-item small{font-size:.65rem;color:var(--muted);white-space:nowrap}.dashboard-news-item p{grid-column:1;margin:0;font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-news-item i{grid-column:2;grid-row:1/3;align-self:center;font-size:1.25rem;font-style:normal;color:var(--primary)}
@media(max-width:980px){.top-social-links{display:none}}
@media(max-width:760px){.app-bottom-nav button small{white-space:normal;line-height:1.05;text-align:center}.site-footer .footer-google-play{justify-self:start}}
@media(max-width:390px),(max-height:730px){.app-launch-icons .app-launch-icon{width:50px;height:50px;font-size:1.5rem}.app-launch-icons .app-launch-card{min-height:76px}.app-dashboard-news-list{gap:4px}.dashboard-news-item{padding:6px 8px}}

.app-footer-social{display:flex;justify-content:center;gap:8px;margin:6px 0}.app-footer-play{justify-content:center}.app-footer-play .google-play-badge{max-width:138px}
