/* MUTO — pagina "Il tuo calendario": stesse carte, stesso inchiostro */
.pz-page .nav{mix-blend-mode:normal;color:var(--carta);background:rgba(22,21,19,.62);-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);padding-top:calc(15px + env(safe-area-inset-top,0px));padding-bottom:15px}
.nav-links a[aria-current="page"]::after{right:0}

.pz-head{padding:clamp(150px,22vh,220px) var(--gut) clamp(50px,7vh,80px);max-width:1100px}
.pz-head h1{font-size:clamp(46px,6.4vw,104px);letter-spacing:-.01em}
.pz-lead{max-width:52ch;color:var(--grigio);margin:28px 0 0;font-size:18px}
.pz-steps{list-style:none;padding:0;margin:40px 0 0;display:flex;flex-wrap:wrap;gap:12px 34px;font-size:12px;letter-spacing:.24em;text-transform:uppercase}
.pz-steps b{font-family:var(--serif);font-size:20px;font-weight:400;letter-spacing:0;color:var(--legno-2);margin-right:8px}

/* area di lavoro */
.pz-work{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(30px,5vw,90px);padding:0 var(--gut) clamp(90px,14vh,150px);align-items:start}
.pz-stage{position:sticky;top:100px;display:grid;justify-items:center;gap:18px;padding:clamp(30px,4vw,60px);background:var(--carta-2);border-radius:4px}

/* il foglio A6 (298,08 × 420 pt) con la finestra foto nella posizione esatta del template */
.pz-sheet{position:relative;width:min(100%,430px);aspect-ratio:298.08/420;background:#fff;border-radius:10px;container-type:inline-size;box-shadow:0 40px 70px -40px rgba(28,26,23,.55),0 2px 6px rgba(28,26,23,.06);overflow:hidden}
.pz-tpl{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;user-select:none;-webkit-user-drag:none}
.pz-win{position:absolute;left:7.085%;top:5%;width:85.59%;height:45.557%;border-radius:3.02cqw;overflow:hidden;background:#EFEDEA;touch-action:none}
.pz-win.has-photo{cursor:grab}
.pz-win.dragging{cursor:grabbing}
.pz-photo{position:absolute;max-width:none;user-select:none;-webkit-user-drag:none;pointer-events:none}
.pz-empty{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;cursor:pointer;color:var(--grigio);font-size:clamp(12px,3.4cqw,15px);padding:0 8%;background:#EFEDEA;transition:background .4s var(--ease)}
.pz-empty[hidden]{display:none}
.pz-empty:hover,.pz-win.over .pz-empty{background:#E6E1D8}
.pz-empty b{color:var(--inchiostro);font-weight:400}
.pz-empty small{font-size:.78em;opacity:.8}
.pz-plus{width:2.6em;height:2.6em;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:1.3em;font-weight:300;margin-bottom:4px}

.pz-tools{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center}
.pz-tools[hidden]{display:none}
.pz-zoom{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--grigio)}
.pz-zoom input{width:160px;accent-color:var(--inchiostro)}
.pz-link{background:none;border:0;padding:0;font:inherit;color:var(--inchiostro);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;cursor:pointer}
.pz-tools .pz-link{font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.pz-hint{margin:0;font-size:13px;color:var(--grigio);text-align:center}
.pz-warn{margin:0;font-size:13px;color:#8A4B1F;text-align:center;max-width:40ch}

/* colonna dei mesi */
.pz-side{display:grid;gap:22px}
.pz-drop{border:1px dashed rgba(28,26,23,.3);border-radius:4px;padding:26px 28px;transition:background .4s var(--ease),border-color .4s var(--ease)}
.pz-drop.over{background:var(--carta-2);border-color:var(--inchiostro)}
.pz-drop p{margin:0}
.pz-drop .pz-small{margin-top:6px;font-size:14px;color:var(--grigio)}
.pz-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.pz-m{position:relative;display:grid;gap:8px;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit;color:inherit}
.pz-m .pz-mini{position:relative;aspect-ratio:298.08/420;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 14px 26px -18px rgba(28,26,23,.55);outline:1px solid rgba(28,26,23,.08);transition:transform .5s var(--ease),outline-color .3s}
.pz-m .pz-mini img{position:absolute;inset:0;width:100%;height:100%}
.pz-m .pz-mini canvas{position:absolute;left:7.085%;top:5%;width:85.59%;height:45.557%;border-radius:3px}
.pz-m:hover .pz-mini{transform:translateY(-4px)}
.pz-m[aria-current="true"] .pz-mini{outline:2px solid var(--inchiostro);outline-offset:3px}
.pz-m span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--grigio);display:flex;justify-content:space-between;gap:6px}
.pz-m.ok span::after{content:"✓";color:var(--legno-2);letter-spacing:0}
.pz-m.low span::after{content:"!";color:#8A4B1F;letter-spacing:0}
.pz-count{margin:0;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--grigio)}
.pz-count span{font-family:var(--serif);font-size:22px;letter-spacing:0;color:var(--inchiostro)}

/* ordine */
.pz-order{background:var(--carta-2);padding:clamp(100px,14vh,160px) var(--gut);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(40px,6vw,110px);align-items:start}
.pz-order-copy p:not(.eyebrow){color:var(--grigio);max-width:42ch;margin-top:26px}
.pz-form{display:grid;gap:20px}
.pz-bases{border:0;padding:0;margin:0 0 6px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pz-bases legend,.pz-field>span{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--grigio);margin-bottom:12px;padding:0}
.pz-bases label{position:relative;cursor:pointer}
.pz-bases input{position:absolute;opacity:0}
.pz-bases label>span{display:grid;gap:2px;padding:16px 18px;border:1px solid rgba(28,26,23,.18);border-radius:3px;background:var(--carta);transition:border-color .3s,box-shadow .3s}
.pz-bases b{font-weight:400}
.pz-bases small{font-size:13px;color:var(--grigio)}
.pz-bases input:checked+span{border-color:var(--inchiostro);box-shadow:inset 0 0 0 1px var(--inchiostro)}
.pz-bases input:focus-visible+span{outline:1px solid var(--inchiostro);outline-offset:3px}
.pz-field{display:grid}
.pz-field input,.pz-field textarea{font:inherit;font-size:16px;padding:14px 16px;border:1px solid rgba(28,26,23,.2);border-radius:3px;background:var(--carta);color:var(--inchiostro);resize:vertical}
.pz-field input:focus,.pz-field textarea:focus{outline:none;border-color:var(--inchiostro)}
.pz-check{display:flex;gap:12px;font-size:14px;color:var(--grigio);align-items:flex-start}
.pz-check input{margin-top:4px;accent-color:var(--inchiostro)}
.pz-send{justify-self:start}
.pz-send:disabled{opacity:.35;cursor:not-allowed}
.pz-send:disabled:hover{background:transparent;color:inherit}
.pz-status{margin:0;font-size:15px;min-height:1.6em}
.pz-status.ok{font-family:var(--serif);font-size:24px}
.pz-status.err{color:#8A4B1F}

@media (max-width:1000px){
  .pz-work,.pz-order{grid-template-columns:1fr}
  .pz-stage{position:relative;top:0}
}
@media (max-width:560px){
  .pz-months{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pz-bases{grid-template-columns:1fr}
}
