
html,body{min-height:100%;margin:0}
.authenticate-page{background:var(--theme-bg,#faf8f5);color:var(--theme-text,#2c2a38);font-family:var(--theme-font-body,Inter,sans-serif);padding-top:110px;box-sizing:border-box}
.authenticate-main{width:min(1320px,calc(100% - 72px));margin:0 auto;padding:30px 0 100px}
.authenticate-intro{max-width:920px;margin-bottom:60px}
.authenticate-kicker{display:block;margin-bottom:14px;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--theme-muted,#706f85)}
.authenticate-intro h1{margin:0 0 22px;font-family:var(--theme-font-display,'Playfair Display',serif);font-size:clamp(54px,6.2vw,104px);line-height:.95;font-style:italic;font-weight:400;letter-spacing:-.025em}
.authenticate-intro p{max-width:830px;margin:0;font-size:17px;line-height:1.68}
.authenticate-workspace{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr);gap:64px;align-items:start}
.authenticate-dropzone{min-height:520px;box-sizing:border-box;border:1px dashed var(--theme-muted,#706f85);background:color-mix(in srgb,var(--theme-bg) 95%,var(--theme-text));display:grid;place-items:center;padding:28px;cursor:pointer}
.authenticate-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.authenticate-plus{font-size:38px;font-weight:300}
.authenticate-empty strong{font-size:12px;letter-spacing:.16em}
.authenticate-empty span:not(.authenticate-plus),.authenticate-empty small{font-size:12px;color:var(--theme-muted,#706f85)}
.authenticate-preview-wrap{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.authenticate-preview-wrap[hidden]{display:none!important}
.authenticate-preview-wrap img{display:block;max-width:100%;max-height:390px;width:auto;height:auto;object-fit:contain;box-shadow:0 18px 50px rgba(0,0,0,.12)}
.authenticate-preview-meta{width:100%;display:flex;gap:13px;align-items:flex-start;margin-top:24px;padding-top:18px;border-top:1px solid var(--theme-border,rgba(17,14,44,.12))}
.authenticate-recognized-mark{display:grid;place-items:center;width:24px;height:24px;min-width:24px;border-radius:50%;background:#159447;color:white;font-weight:700}
.authenticate-preview-meta div{display:flex;flex-direction:column;gap:5px;min-width:0}
.authenticate-preview-meta strong{font-size:11px;letter-spacing:.11em}
.authenticate-preview-meta span{font-size:12px;color:var(--theme-muted,#706f85);overflow-wrap:anywhere}
.authenticate-change-file{margin-top:18px;border:0;border-bottom:1px solid currentColor;background:transparent;padding:5px 0;color:var(--theme-muted,#706f85);font-size:10px;letter-spacing:.12em;cursor:pointer}
.authenticate-status{display:flex;gap:12px;align-items:flex-start;padding:18px 0 0}
.authenticate-status-dot{width:9px;height:9px;min-width:9px;border-radius:50%;margin-top:3px;background:#999}
.authenticate-status>div{display:flex;flex-direction:column;gap:5px}
.authenticate-status strong{font-size:11px;letter-spacing:.1em}
.authenticate-status span{font-size:12px;line-height:1.5;color:var(--theme-muted,#706f85)}
.authenticate-status.is-checking .authenticate-status-dot{background:#d1a200;animation:authpulse 1s ease-in-out infinite}
.authenticate-status.is-valid .authenticate-status-dot{background:#159447}
.authenticate-status.is-invalid .authenticate-status-dot{background:#d32929}
@keyframes authpulse{50%{opacity:.28;transform:scale(.7)}}
.authenticate-form{position:sticky;top:100px;display:flex;flex-direction:column;gap:28px;padding:32px;border:1px solid var(--theme-border,rgba(17,14,44,.14));box-sizing:border-box}
.authenticate-form-heading>span{font-size:10px;font-weight:600;letter-spacing:.17em}
.authenticate-form-heading p{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--theme-muted,#706f85)}
.authenticate-form label:not(.authenticate-privacy-check):not(.authenticate-honeypot){display:flex;flex-direction:column;gap:8px}
.authenticate-form label>span{font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.authenticate-form em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--theme-muted,#706f85)}
.authenticate-form input[type="text"],.authenticate-form input[type="email"],.authenticate-form textarea{width:100%;box-sizing:border-box;border:0;border-bottom:1px solid var(--theme-border,rgba(17,14,44,.2));background:transparent;color:inherit;border-radius:0;padding:11px 0;font:400 15px/1.45 var(--theme-font-body,Inter,sans-serif);outline:none}
.authenticate-form input:focus,.authenticate-form textarea:focus{border-bottom-color:var(--theme-accent,#1500ff)}
.authenticate-form textarea{min-height:125px;resize:vertical}
.authenticate-privacy{border-top:1px solid var(--theme-border,rgba(17,14,44,.12));padding-top:18px}
.authenticate-privacy summary{cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.04em}
.authenticate-privacy div{padding-top:14px;color:var(--theme-muted,#706f85);font-size:11px;line-height:1.6}
.authenticate-privacy p{margin:0 0 9px}
.authenticate-privacy-check{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.45}
.authenticate-privacy-check input{margin-top:2px}
.authenticate-submit{border:0;padding:16px 20px;background:var(--theme-text,#110e2c);color:var(--theme-bg,#faf8f5);font:600 11px/1 var(--theme-font-body,Inter,sans-serif);letter-spacing:.15em;cursor:pointer}
.authenticate-submit:disabled{opacity:.33;cursor:not-allowed}
.authenticate-result{padding:15px;border:1px solid var(--theme-border,rgba(17,14,44,.12));font-size:13px;line-height:1.55}
.authenticate-result.is-success{border-color:#159447}.authenticate-result.is-error{border-color:#d32929}
.authenticate-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.authenticate-link.is-current{color:var(--theme-text)!important}
.authenticate-page .footer{padding:40px;box-sizing:border-box}
@media(max-width:900px){.authenticate-page{padding-top:80px}.authenticate-main{width:min(100% - 32px,760px);padding-top:30px}.authenticate-intro{margin-bottom:40px}.authenticate-intro h1{font-size:clamp(44px,12vw,72px)}.authenticate-workspace{grid-template-columns:1fr;gap:38px}.authenticate-dropzone{min-height:410px}.authenticate-form{position:relative;top:auto;padding:24px}}
@media(max-width:560px){.authenticate-main{width:calc(100% - 24px)}.authenticate-intro p{font-size:15px}.authenticate-dropzone{min-height:340px;padding:18px}.authenticate-preview-wrap img{max-height:270px}}

/* RC4.85 — distinzione autenticazioni + fix stato riconoscimento. */
.authenticate-scope-note{
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.12));
  display:flex;
  flex-direction:column;
  gap:8px;
  max-width:850px;
}
.authenticate-scope-note strong{
  font-size:12px;
  letter-spacing:.04em;
}
.authenticate-scope-note span{
  font-size:13px;
  line-height:1.55;
  color:var(--theme-muted,#706f85);
}
.authenticate-scope-note a{
  color:var(--theme-accent,#1500ff);
  text-decoration:none;
  border-bottom:1px solid currentColor;
}

.authenticate-status{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.authenticate-status>div{
  min-width:0;
  width:auto;
  flex:1 1 auto;
}
.authenticate-status span{
  display:block;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
}

/* RC4.86 — distinzione più evidente per le opere fisiche. */
.authenticate-scope-note{
  margin-top:34px!important;
  padding:22px 24px!important;
  border:1px solid var(--theme-border,rgba(17,14,44,.16))!important;
  border-left:3px solid var(--theme-accent,#1500ff)!important;
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 96%,var(--theme-text,#110e2c))!important;
  gap:10px!important;
  max-width:880px!important;
}
.authenticate-scope-note strong{
  font-size:14px!important;
  line-height:1.45!important;
  letter-spacing:.015em!important;
}
.authenticate-scope-note span{
  font-size:15px!important;
  line-height:1.6!important;
}
.authenticate-scope-note a{
  font-weight:600!important;
}
@media(max-width:700px){
  .authenticate-scope-note{
    padding:18px 18px!important;
  }
  .authenticate-scope-note strong{
    font-size:13px!important;
  }
  .authenticate-scope-note span{
    font-size:14px!important;
  }
}

/* RC4.90 — pagina Autentica pulita, footer ancorato e stato leggibile. */
.authenticate-page{
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
}
.authenticate-main{
  flex:1 0 auto!important;
}
.authenticate-page .footer{
  margin-top:auto!important;
  flex:none!important;
  width:100%!important;
}

/* Dopo il riconoscimento nel riquadro resta soltanto il PNG. */
.authenticate-preview-wrap{
  padding:0!important;
  margin:0!important;
}
.authenticate-preview-wrap img{
  max-height:460px!important;
  margin:auto!important;
}
.authenticate-preview-meta,
.authenticate-change-file{
  display:none!important;
}

/* Lo stato sotto al riquadro usa tutta la larghezza e non collassa. */
.authenticate-status{
  display:grid!important;
  grid-template-columns:10px minmax(0,1fr)!important;
  column-gap:12px!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  align-items:start!important;
}
.authenticate-status-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
.authenticate-status-copy strong,
.authenticate-status-copy span{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.authenticate-status-copy strong{
  line-height:1.35!important;
}
.authenticate-status-copy span{
  line-height:1.55!important;
}
.authenticate-status-ids{
  margin-top:3px!important;
  color:var(--theme-muted,#706f85)!important;
  font-size:11px!important;
}

/* RC4.91 — più aria tra istruzioni upload e anteprima + copyright uppercase. */
.authenticate-empty{
  transform:translateY(-28px)!important;
}
@media(max-width:560px){
  .authenticate-empty{
    transform:translateY(-20px)!important;
  }
}

/* RC4.92 — blocco anteprima e form con la stessa altezza visiva. */
@media(min-width:901px){
  .authenticate-workspace{
    align-items:stretch!important;
  }
  .authenticate-workspace > div:first-child{
    display:flex!important;
    flex-direction:column!important;
    min-height:100%!important;
  }
  .authenticate-dropzone{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
  }
  .authenticate-form{
    position:relative!important;
    top:auto!important;
    height:100%!important;
    min-height:100%!important;
  }
}

/* PRODUZIONE — STEP 1 */
.production-panel{margin:90px 0 20px;padding-top:46px;border-top:1px solid var(--theme-border,rgba(17,14,44,.14))}
.production-panel[hidden]{display:none}
.production-heading{max-width:900px;margin-bottom:36px}
.production-heading>span{display:block;margin-bottom:12px;font-size:10px;font-weight:600;letter-spacing:.17em}
.production-heading h2{margin:0 0 18px;font-family:var(--theme-font-display,'Playfair Display',serif);font-size:clamp(36px,4.5vw,66px);line-height:1;font-style:italic;font-weight:400}
.production-heading p{font-size:15px;line-height:1.7;max-width:820px}
.production-size{display:inline-block;margin:10px 0 12px;padding:10px 14px;border:1px solid var(--theme-border,rgba(17,14,44,.15));font-size:14px;font-weight:600}
.production-once{color:var(--theme-muted,#706f85)}
.production-form{display:grid;gap:30px}
.production-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.production-option{display:block;cursor:pointer}
.production-option input{position:absolute;opacity:0;pointer-events:none}
.production-option-body{display:flex;min-height:180px;box-sizing:border-box;padding:24px;border:1px solid var(--theme-border,rgba(17,14,44,.16));flex-direction:column;gap:12px;transition:border-color .2s,background .2s}
.production-option-body strong{font-size:13px;letter-spacing:.14em}
.production-option-body span{font-size:13px;line-height:1.6;color:var(--theme-muted,#706f85)}
.production-option-body b{margin-top:auto;font-size:17px}
.production-option input:checked+.production-option-body{border-color:var(--theme-accent,#1500ff);background:color-mix(in srgb,var(--theme-bg) 93%,var(--theme-accent,#1500ff))}
.production-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.production-fields label{display:flex;flex-direction:column;gap:8px}
.production-fields label>span{font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.production-fields input{border:0;border-bottom:1px solid var(--theme-border,rgba(17,14,44,.2));padding:11px 0;background:transparent;color:inherit;font:400 15px/1.4 var(--theme-font-body,Inter,sans-serif);outline:none}
.production-fields input:focus{border-bottom-color:var(--theme-accent,#1500ff)}
.production-note{margin:0;font-size:12px;line-height:1.6;color:var(--theme-muted,#706f85)}
.production-privacy{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.5}
.production-privacy input{margin-top:2px}
.production-submit{border:0;padding:16px 20px;background:var(--theme-text,#110e2c);color:var(--theme-bg,#faf8f5);font:600 11px/1 var(--theme-font-body,Inter,sans-serif);letter-spacing:.15em;cursor:pointer}
.production-submit:disabled{opacity:.4;cursor:not-allowed}
.production-result{padding:18px;border:1px solid var(--theme-border,rgba(17,14,44,.15));font-size:13px;line-height:1.6}
.production-result.is-success{border-color:#159447}.production-result.is-error{border-color:#d32929}
@media(max-width:760px){.production-panel{margin-top:60px}.production-options,.production-fields{grid-template-columns:1fr}.production-option-body{min-height:0}}

/* PRODUZIONE STEP 2 — flusso progressivo */
.authenticate-choice{
  grid-column:1/-1;
  margin:48px 0 10px;
  padding-top:34px;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14));
}
.authenticate-choice[hidden],
.authenticate-path-panel[hidden]{display:none!important}
.authenticate-choice-heading{margin-bottom:24px}
.authenticate-choice-heading>span{
  display:block;
  margin-bottom:10px;
  font-size:10px;
  font-weight:600;
  letter-spacing:.15em;
}
.authenticate-choice-heading h2{
  margin:0;
  font-family:var(--theme-font-display,'Playfair Display',serif);
  font-size:clamp(34px,4vw,56px);
  line-height:1;
  font-weight:400;
  font-style:italic;
}
.authenticate-choice-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.authenticate-choice-card{
  min-height:170px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:26px;
  padding:24px;
  border:1px solid var(--theme-border,rgba(17,14,44,.16));
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.authenticate-choice-card:hover{
  border-color:var(--theme-accent,#1500ff);
  background:color-mix(in srgb,var(--theme-bg) 93%,var(--theme-accent,#1500ff));
  transform:translateY(-2px);
}
.authenticate-choice-card strong{
  font-size:13px;
  line-height:1.3;
  letter-spacing:.13em;
}
.authenticate-choice-card span{
  max-width:420px;
  font-size:13px;
  line-height:1.6;
  color:var(--theme-muted,#706f85);
}
.authenticate-path-back{
  border:0;
  background:transparent;
  padding:0;
  margin:0 0 22px;
  color:var(--theme-muted,#706f85);
  font:500 9px/1 var(--theme-font-body,Inter,sans-serif);
  letter-spacing:.12em;
  cursor:pointer;
}
.authenticate-path-back:hover{color:var(--theme-accent,#1500ff)}

.authenticate-form.authenticate-path-panel{
  grid-column:1/-1;
  position:relative!important;
  top:auto!important;
  max-width:760px;
  width:100%;
  margin:42px 0 0 auto;
}
.production-panel.authenticate-path-panel{
  grid-column:1/-1;
  margin-top:48px;
}
.production-privacy-details{
  border-top:1px solid var(--theme-border,rgba(17,14,44,.12));
  padding-top:18px;
}
.production-privacy-details summary{
  cursor:pointer;
  font-size:11px;
  font-weight:600;
  letter-spacing:.04em;
}
.production-privacy-details div{
  padding-top:14px;
  color:var(--theme-muted,#706f85);
  font-size:11px;
  line-height:1.6;
}
.production-privacy-details p{margin:0 0 9px}
@media(max-width:760px){
  .authenticate-choice-grid{grid-template-columns:1fr}
  .authenticate-choice-card{min-height:140px}
  .authenticate-form.authenticate-path-panel{margin-left:0}
}

/* PRODUZIONE STEP 3 — flusso desktop a due colonne compatto */
@media(min-width:901px){
  .authenticate-workspace-flow{
    grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr)!important;
    gap:46px!important;
    align-items:start!important;
  }
  .authenticate-left{
    min-width:0;
  }
  .authenticate-right{
    min-width:0;
    position:sticky;
    top:96px;
  }
  .authenticate-dropzone{
    min-height:360px!important;
    height:360px!important;
    padding:22px!important;
  }
  .authenticate-preview-wrap img{
    max-height:315px!important;
  }
  .authenticate-choice{
    margin:0!important;
    padding:0!important;
    border-top:0!important;
  }
  .authenticate-choice-heading{
    margin-bottom:20px!important;
  }
  .authenticate-choice-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .authenticate-choice-card{
    min-height:130px!important;
    padding:20px!important;
    gap:18px!important;
  }
  .authenticate-form.authenticate-path-panel{
    margin:0!important;
    max-width:none!important;
    width:100%!important;
    padding:28px!important;
  }
  .production-panel.authenticate-path-panel{
    margin:0!important;
    padding:0!important;
    border-top:0!important;
  }
  .production-heading{
    margin-bottom:24px!important;
  }
  .production-heading h2{
    font-size:clamp(34px,3vw,50px)!important;
  }
  .production-options{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .production-option-body{
    min-height:120px!important;
    padding:18px!important;
  }
  .production-fields{
    gap:18px 22px!important;
  }
}
@media(max-width:900px){
  .authenticate-left,
  .authenticate-right{
    min-width:0;
  }
}

/* PRODUZIONE STEP 4 — upload box stabile + ritorno scelta più leggibile */
.authenticate-dropzone{
  overflow:hidden!important;
}
.authenticate-empty{
  transform:none!important;
  width:100%!important;
  box-sizing:border-box!important;
  justify-content:center!important;
}
.authenticate-preview-wrap{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:14px!important;
}
.authenticate-preview-wrap[hidden]{display:none!important}
.authenticate-preview-wrap img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  margin:auto!important;
}
.authenticate-status{
  margin-top:14px!important;
}
.authenticate-path-back{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin:0 0 18px!important;
  padding:9px 12px!important;
  border:1px solid var(--theme-border,rgba(17,14,44,.18))!important;
  background:transparent!important;
  color:var(--theme-text,#2c2a38)!important;
  font-size:10px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.11em!important;
}
.authenticate-path-back:hover{
  border-color:var(--theme-accent,#1500ff)!important;
  color:var(--theme-accent,#1500ff)!important;
}
.authenticate-path-title{
  display:block!important;
  margin-top:2px!important;
}
@media(min-width:901px){
  .authenticate-dropzone{
    height:330px!important;
    min-height:330px!important;
  }
  .authenticate-preview-wrap img{
    max-height:292px!important;
  }
}
@media(max-width:900px){
  .authenticate-dropzone{
    min-height:360px!important;
  }
}

/* PRODUZIONE STEP 6 — stato upload: dopo il caricamento resta solo l'anteprima. */
.authenticate-empty[hidden]{
  display:none!important;
}
.authenticate-preview-wrap:not([hidden]){
  display:flex!important;
}
.authenticate-dropzone:has(.authenticate-preview-wrap:not([hidden])) .authenticate-empty{
  display:none!important;
}

/* UI FINAL — gerarchia Autentica / Produci */
.authenticate-intro h1{
  font-size:clamp(42px,5vw,78px)!important;
  max-width:1050px;
}
.authenticate-path-heading,
.production-heading .authenticate-path-heading{
  margin:0 0 18px!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-size:clamp(34px,3.6vw,54px)!important;
  line-height:1!important;
  font-style:italic!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}
.authenticate-form-heading .authenticate-path-heading{
  margin-top:0!important;
}
.authenticate-form-heading p{
  margin:0 0 22px!important;
}
.production-heading p{
  margin-top:0!important;
}
@media(max-width:760px){
  .authenticate-intro h1{
    font-size:clamp(34px,9vw,48px)!important;
    line-height:1!important;
  }
  .authenticate-path-heading,
  .production-heading .authenticate-path-heading{
    font-size:clamp(30px,8vw,42px)!important;
  }
}

/* UI UNIFIED — titolo pagina più compatto, percorsi realmente equivalenti */
@media(min-width:901px){
  .authenticate-intro h1{
    font-size:clamp(30px,3vw,46px)!important;
    line-height:1.02!important;
    max-width:none!important;
    white-space:nowrap!important;
    letter-spacing:-.018em!important;
  }

  .authenticate-form.authenticate-path-panel,
  .production-panel.authenticate-path-panel{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* stessa testata per Autenticazione e Produzione */
.authenticate-path-intro,
.production-heading.authenticate-path-intro{
  width:100%!important;
  max-width:none!important;
  margin:0 0 26px!important;
  padding:0!important;
}

.authenticate-path-heading,
.production-heading .authenticate-path-heading{
  margin:0 0 14px!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-size:clamp(34px,3.6vw,54px)!important;
  line-height:1!important;
  font-style:italic!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
}

.authenticate-path-description,
.authenticate-form-heading .authenticate-path-description,
.production-heading .authenticate-path-description{
  max-width:680px!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.62!important;
  color:var(--theme-muted,#706f85)!important;
  font-weight:400!important;
}

/* stessa densità e ritmo dei due moduli */
.authenticate-form.authenticate-path-panel{
  gap:24px!important;
}
.production-form{
  gap:24px!important;
}
.production-heading .production-size{
  margin:18px 0 14px!important;
}
.production-heading .production-once{
  margin:0!important;
  font-size:13px!important;
  line-height:1.62!important;
}

/* elimina il vecchio trattamento a cornice solo dall'autenticazione */
.authenticate-form{
  border:0!important;
  box-shadow:none!important;
}

/* mobile: il titolo può andare a capo in modo naturale ma resta più contenuto */
@media(max-width:900px){
  .authenticate-intro h1{
    font-size:clamp(30px,7.7vw,42px)!important;
    line-height:1.03!important;
    white-space:normal!important;
  }
  .authenticate-path-heading,
  .production-heading .authenticate-path-heading{
    font-size:clamp(30px,8vw,42px)!important;
  }
  .authenticate-form.authenticate-path-panel,
  .production-panel.authenticate-path-panel{
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
  }
}

/* Produzione: unica versione disponibile, Carta Fine Art */
.production-options-single{
  grid-template-columns:1fr!important;
}
.production-options-single .production-option{
  cursor:default;
}

.production-option-configured{cursor:default!important}.production-option-configured #production-config-desc{white-space:pre-line}


/* AEO — stato archivistico: hidden deve prevalere su qualsiasi layout precedente */
.authenticate-page #authenticate-choice[hidden],
.authenticate-page #choose-authentication[hidden],
.authenticate-page #choose-production[hidden],
.authenticate-page #authenticate-form[hidden],
.authenticate-page #production-panel[hidden]{
  display:none!important;
}


/* AEO — AUTENTICA ORA: flusso verticale più armonico */
.authenticate-workspace.authenticate-workspace-flow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  width:100%;
}
.authenticate-workspace-flow .authenticate-left,
.authenticate-workspace-flow .authenticate-right{
  width:100%;
  min-width:0;
}
.authenticate-workspace-flow .authenticate-left{
  max-width:1040px;
}
.authenticate-workspace-flow .authenticate-dropzone{
  min-height:460px;
  width:100%;
}
.authenticate-workspace-flow .authenticate-preview-wrap img{
  max-height:520px;
}
.authenticate-workspace-flow .authenticate-status{
  max-width:1040px;
  padding-top:22px;
}
.authenticate-workspace-flow .authenticate-right{
  margin-top:58px;
}
.authenticate-workspace-flow .authenticate-choice{
  margin:0!important;
  padding:42px 0 0!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14));
}
.authenticate-workspace-flow .authenticate-choice-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);
  gap:48px;
  align-items:end;
  margin-bottom:30px;
}
.authenticate-workspace-flow .authenticate-choice-heading>span{
  margin:0 0 5px;
  align-self:end;
}
.authenticate-workspace-flow .authenticate-choice-heading h2{
  grid-column:2;
  grid-row:1;
  font-size:clamp(42px,5.3vw,72px);
  justify-self:start;
}
.authenticate-workspace-flow .authenticate-choice-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.authenticate-workspace-flow .authenticate-choice-card{
  min-height:155px;
  padding:26px 28px;
}
.authenticate-workspace-flow .authenticate-form.authenticate-path-panel{
  max-width:860px;
  margin:46px 0 0!important;
}
.authenticate-workspace-flow .production-panel.authenticate-path-panel{
  margin-top:46px!important;
  width:100%;
}
@media(max-width:760px){
  .authenticate-workspace-flow .authenticate-dropzone{min-height:380px}
  .authenticate-workspace-flow .authenticate-right{margin-top:42px}
  .authenticate-workspace-flow .authenticate-choice{padding-top:30px!important}
  .authenticate-workspace-flow .authenticate-choice-heading{
    display:block;
    margin-bottom:24px;
  }
  .authenticate-workspace-flow .authenticate-choice-heading>span{display:block;margin-bottom:10px}
  .authenticate-workspace-flow .authenticate-choice-heading h2{font-size:clamp(38px,12vw,56px)}
  .authenticate-workspace-flow .authenticate-choice-grid{grid-template-columns:1fr}
}


/* AEO — AUTENTICA ORA: rifinitura editoriale verticale */
.authenticate-workspace-flow .authenticate-left{
  width:min(1040px,100%)!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.authenticate-workspace-flow .authenticate-dropzone{
  width:100%!important;
  margin:0 auto!important;
}
.authenticate-workspace-flow .authenticate-status{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* La seconda fase diventa una sezione autonoma, leggera e a tutta larghezza. */
.authenticate-workspace-flow .authenticate-right{
  width:100%!important;
  margin-top:70px!important;
  padding:52px clamp(28px,4vw,58px) 56px!important;
  box-sizing:border-box!important;
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 94%,var(--theme-text,#110e2c))!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.12))!important;
  border-bottom:1px solid var(--theme-border,rgba(17,14,44,.08))!important;
}
.authenticate-workspace-flow .authenticate-choice{
  width:min(1180px,100%)!important;
  margin:0 auto!important;
  padding:0!important;
  border-top:0!important;
}
.authenticate-workspace-flow .authenticate-choice-heading{
  display:block!important;
  margin:0 0 30px!important;
  text-align:left!important;
}
.authenticate-workspace-flow .authenticate-choice-heading>span{
  display:block!important;
  margin:0 0 12px!important;
  text-align:left!important;
}
.authenticate-workspace-flow .authenticate-choice-heading h2{
  display:block!important;
  margin:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:auto!important;
  text-align:left!important;
  font-size:clamp(42px,5.2vw,72px)!important;
}
.authenticate-workspace-flow .authenticate-choice-grid{
  width:100%!important;
}
.authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
.authenticate-workspace-flow .production-panel.authenticate-path-panel{
  width:min(1040px,100%)!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Quando si apre un percorso, il form è distinto dalla scelta ma resta nello stesso ritmo. */
.authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
.authenticate-workspace-flow .production-panel.authenticate-path-panel{
  background:var(--theme-bg,#faf8f5);
  box-sizing:border-box;
}

@media(max-width:760px){
  .authenticate-workspace-flow .authenticate-right{
    margin-top:48px!important;
    padding:34px 18px 38px!important;
  }
  .authenticate-workspace-flow .authenticate-choice-heading h2{
    font-size:clamp(38px,12vw,56px)!important;
  }
}


/* AEO — rifinitura AUTENTICA ORA */
.authenticate-workspace-flow .authenticate-right:has(> #authenticate-choice[hidden]):has(> #authenticate-form[hidden]):has(> #production-panel[hidden]){
  display:none!important;
}

/* La fascia inferiore compare solo quando serve; nessun bordo esterno. */
.authenticate-workspace-flow .authenticate-right{
  border:0!important;
}

/* Scelte più leggibili e proporzionate allo spazio disponibile. */
.authenticate-workspace-flow .authenticate-choice-card{
  min-height:190px!important;
  padding:32px 34px!important;
  gap:30px!important;
}
.authenticate-workspace-flow .authenticate-choice-card strong{
  font-size:17px!important;
  line-height:1.3!important;
  letter-spacing:.11em!important;
}
.authenticate-workspace-flow .authenticate-choice-card span{
  max-width:620px!important;
  font-size:16px!important;
  line-height:1.65!important;
}

/* Un po' più respiro anche attorno al titolo della sezione. */
.authenticate-workspace-flow .authenticate-choice-heading{
  margin-bottom:36px!important;
}
.authenticate-workspace-flow .authenticate-choice-heading>span{
  font-size:11px!important;
}
.authenticate-workspace-flow .authenticate-choice-heading h2{
  line-height:.96!important;
}

@media(max-width:760px){
  .authenticate-workspace-flow .authenticate-choice-card{
    min-height:155px!important;
    padding:25px 24px!important;
    gap:22px!important;
  }
  .authenticate-workspace-flow .authenticate-choice-card strong{
    font-size:15px!important;
  }
  .authenticate-workspace-flow .authenticate-choice-card span{
    font-size:14px!important;
    line-height:1.6!important;
  }
}

/* AEO — kicker sopra Cosa vuoi fare rimosso */
#auth-choice-kicker{display:none!important;}


/* AEO — scelta azioni: titolo diretto + CTA più riconoscibili */
#auth-choice-kicker,
.authenticate-choice-heading > span{
  display:none!important;
}

.authenticate-workspace-flow .authenticate-choice-card{
  transition:transform .22s ease, background-color .22s ease, border-color .22s ease!important;
}

/* Due superfici diverse già a riposo: non dipendono dall'hover per essere riconoscibili. */
.authenticate-workspace-flow #choose-authentication{
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 88%,#d9d5ff)!important;
  border-color:color-mix(in srgb,var(--theme-text,#110e2c) 24%,transparent)!important;
}
.authenticate-workspace-flow #choose-production{
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 88%,#e2ddd4)!important;
  border-color:color-mix(in srgb,var(--theme-text,#110e2c) 24%,transparent)!important;
}
.authenticate-workspace-flow #choose-authentication:hover,
.authenticate-workspace-flow #choose-authentication:focus-visible{
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 78%,#d9d5ff)!important;
  transform:translateY(-2px);
}
.authenticate-workspace-flow #choose-production:hover,
.authenticate-workspace-flow #choose-production:focus-visible{
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 78%,#e2ddd4)!important;
  transform:translateY(-2px);
}

/* AEO — kicker ridondante rimosso definitivamente */
#auth-choice-title,
#auth-choice-kicker,
.authenticate-choice-kicker,
.authenticate-choice-heading > span:first-child{
  display:none!important;
}


/* AEO — premessa editoriale nella pagina di autenticazione */
.aeo-auth-premise{
  width:100%;
  margin:0 0 72px;
  padding:clamp(42px,5vw,72px) clamp(28px,5vw,72px);
  box-sizing:border-box;
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 92%,var(--theme-text,#110e2c));
}
.aeo-auth-premise-inner{
  width:min(1180px,100%);
  margin:0 auto;
}
.aeo-auth-premise-kicker{
  display:block;
  margin:0 0 14px;
  font-size:10px;
  line-height:1;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--theme-text,#110e2c);
  opacity:.62;
}
.aeo-auth-premise h1{
  margin:0 0 34px;
  max-width:760px;
  font-family:var(--font-serif,serif);
  font-size:clamp(44px,5.5vw,78px);
  line-height:.98;
  font-weight:400;
  letter-spacing:-.035em;
}
.aeo-auth-premise-copy{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(28px,5vw,72px);
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14));
  padding-top:26px;
}
.aeo-auth-premise-copy p{
  margin:0;
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.6;
  max-width:620px;
}
.aeo-auth-premise-copy strong{
  font-weight:650;
}
.authenticate-intro{
  width:min(1180px,calc(100% - 56px));
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:760px){
  .aeo-auth-premise{
    margin-bottom:48px;
    padding:34px 18px 38px;
  }
  .aeo-auth-premise h1{
    margin-bottom:24px;
    font-size:clamp(38px,11vw,54px);
  }
  .aeo-auth-premise-copy{
    grid-template-columns:1fr;
    gap:22px;
    padding-top:22px;
  }
  .aeo-auth-premise-copy p{
    font-size:16px;
  }
  .authenticate-intro{
    width:calc(100% - 36px);
  }
}


/* AEO — premessa editoriale: gerarchia riallineata al sito */
.aeo-auth-premise{
  margin:0 0 58px!important;
  padding:34px 0 0!important;
  background:transparent!important;
}
.aeo-auth-premise-inner{
  width:min(1180px,calc(100% - 56px))!important;
  margin:0 auto!important;
}
.aeo-auth-premise h1{
  margin:0!important;
  max-width:none!important;
  font-family:inherit!important;
  font-size:clamp(34px,3.4vw,52px)!important;
  line-height:1.04!important;
  font-weight:500!important;
  letter-spacing:-.02em!important;
}
.aeo-auth-premise-subtitle{
  margin:10px 0 24px!important;
  font-size:14px!important;
  line-height:1.4!important;
  letter-spacing:.02em!important;
  opacity:.68;
}
.aeo-auth-premise-copy{
  display:block!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
  padding-top:22px!important;
}
.aeo-auth-premise-copy p{
  margin:0 0 16px!important;
  max-width:920px!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.aeo-auth-premise-copy p:last-child{margin-bottom:0!important}

/* Blocco operativo riallineato e valorizzato */
.authenticate-intro{
  width:min(1180px,calc(100% - 56px))!important;
  margin:0 auto 34px!important;
  padding:0!important;
}
.authenticate-intro h1{
  margin-left:0!important;
  margin-right:0!important;
}
.authenticate-workspace{
  width:min(1180px,calc(100% - 56px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Nota esclusiva spostata in fondo */
.authenticate-scope-note-bottom{
  width:min(1180px,calc(100% - 56px))!important;
  margin:42px auto 0!important;
  padding-top:22px!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
  background:transparent!important;
}
.authenticate-scope-note-bottom strong,
.authenticate-scope-note-bottom span{
  font-size:12px!important;
  line-height:1.55!important;
}
@media(max-width:760px){
  .aeo-auth-premise{margin-bottom:42px!important;padding-top:24px!important}
  .aeo-auth-premise-inner,
  .authenticate-intro,
  .authenticate-workspace,
  .authenticate-scope-note-bottom{
    width:calc(100% - 36px)!important;
  }
  .aeo-auth-premise h1{font-size:34px!important}
  .aeo-auth-premise-copy p{font-size:14px!important}
}


/* =========================================================
   AEO / AUTENTICA — GRIGLIA EDITORIALE DEFINITIVA
   Un solo asse per premessa, operatività, workspace e nota.
   ========================================================= */
.authenticate-main{
  width:min(1320px,calc(100% - 72px))!important;
  margin:0 auto!important;
  padding:30px 0 100px!important;
}

/* Premessa: box grigio, due colonne, scala tipografica sobria */
.aeo-auth-premise{
  width:100%!important;
  box-sizing:border-box!important;
  margin:0 0 64px!important;
  padding:38px 46px 42px!important;
  background:color-mix(in srgb,var(--theme-bg,#faf8f5) 92%,var(--theme-text,#110e2c))!important;
}
.aeo-auth-premise-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.aeo-auth-premise-subtitle{
  display:block!important;
  margin:0 0 8px!important;
  font-family:var(--theme-font-body,Inter,sans-serif)!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:400!important;
  letter-spacing:.04em!important;
  opacity:.62!important;
}
.aeo-auth-premise h1{
  margin:0 0 26px!important;
  max-width:none!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-size:clamp(42px,4.4vw,68px)!important;
  line-height:.98!important;
  font-style:italic!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
}
.aeo-auth-premise-copy{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:56px!important;
  margin:0!important;
  padding-top:24px!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
}
.aeo-auth-premise-copy p{
  margin:0!important;
  max-width:none!important;
  font-family:var(--theme-font-body,Inter,sans-serif)!important;
  font-size:17px!important;
  line-height:1.68!important;
  font-weight:400!important;
}

/* Blocco operativo: stesso asse del box e del workspace */
.authenticate-intro{
  width:100%!important;
  max-width:none!important;
  margin:0 0 46px!important;
  padding:0!important;
}
.authenticate-intro h1{
  max-width:1040px!important;
  margin:0 0 22px!important;
}
.authenticate-intro p{
  max-width:830px!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1.68!important;
}

/* Workspace non deve più avere un ulteriore rientro orizzontale */
.authenticate-workspace,
.authenticate-workspace.authenticate-workspace-flow{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.authenticate-workspace-flow .authenticate-left{
  width:min(1040px,100%)!important;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* La fascia azioni usa tutta la larghezza dell'asse principale */
.authenticate-workspace-flow .authenticate-right{
  width:100%!important;
  box-sizing:border-box!important;
  margin-left:0!important;
  margin-right:0!important;
}
.authenticate-workspace-flow .authenticate-choice{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Nota finale: nessun rientro, solo una chiusura discreta */
.authenticate-scope-note-bottom{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  margin:46px 0 0!important;
  padding:22px 0 0!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
  background:transparent!important;
}
.authenticate-scope-note-bottom strong{
  display:block!important;
  margin:0 0 5px!important;
}
.authenticate-scope-note-bottom strong,
.authenticate-scope-note-bottom span{
  max-width:900px!important;
  font-size:12px!important;
  line-height:1.55!important;
}

/* Elimina eventuali padding ereditati dal vecchio box scope */
.authenticate-scope-note.authenticate-scope-note-bottom{
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  .authenticate-main{
    width:calc(100% - 36px)!important;
    padding-top:22px!important;
  }
  .aeo-auth-premise{
    margin-bottom:46px!important;
    padding:28px 22px 30px!important;
  }
  .aeo-auth-premise-subtitle{
    font-size:11px!important;
  }
  .aeo-auth-premise h1{
    margin-bottom:22px!important;
    font-size:42px!important;
  }
  .aeo-auth-premise-copy{
    grid-template-columns:1fr!important;
    gap:20px!important;
    padding-top:20px!important;
  }
  .aeo-auth-premise-copy p,
  .authenticate-intro p{
    font-size:16px!important;
  }
  .authenticate-intro{
    margin-bottom:36px!important;
  }
  .authenticate-scope-note-bottom{
    margin-top:36px!important;
  }
}


/* AEO — allineamento premessa / blocco autenticazione */
@media(min-width:761px){
  .authenticate-intro{
    box-sizing:border-box!important;
    padding-left:46px!important;
    padding-right:46px!important;
  }
}
.authenticate-intro h1{
  max-width:1120px!important;
  font-size:clamp(62px,7vw,116px)!important;
  line-height:.93!important;
}
.aeo-auth-premise-subtitle{
  text-transform:uppercase!important;
  letter-spacing:.11em!important;
  font-size:10px!important;
  font-weight:600!important;
}
@media(max-width:760px){
  .authenticate-intro{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .authenticate-intro h1{
    font-size:clamp(48px,13vw,68px)!important;
  }
}


/* AEO — titolo operativo: grande ma sempre contenuto nel viewport */
.authenticate-intro{
  min-width:0!important;
  overflow:visible!important;
}
.authenticate-intro h1{
  width:auto!important;
  max-width:980px!important;
  min-width:0!important;
  box-sizing:border-box!important;
  font-size:clamp(48px,5.1vw,82px)!important;
  line-height:.96!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:auto;
}
@media(max-width:760px){
  .authenticate-intro h1{
    max-width:100%!important;
    font-size:clamp(40px,10.5vw,56px)!important;
    line-height:.98!important;
  }
}


/* AEO — titolo autenticazione: wrapping forzato, nessun overflow orizzontale */
.authenticate-main,
.authenticate-intro{
  min-width:0!important;
  max-width:100%!important;
}
.authenticate-intro h1,
#auth-page-title{
  display:block!important;
  width:100%!important;
  max-width:900px!important;
  min-width:0!important;
  box-sizing:border-box!important;
  white-space:normal!important;
  text-wrap:wrap!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  font-size:clamp(44px,4.7vw,74px)!important;
}
@media(max-width:760px){
  .authenticate-intro,
  #auth-page-title{
    min-width:0!important;
    max-width:100%!important;
  }
  .authenticate-intro h1,
  #auth-page-title{
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    font-size:clamp(36px,9.5vw,50px)!important;
  }
}


/* AEO — testata operativa editoriale a due colonne */
.authenticate-intro-editorial{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)!important;
  gap:clamp(44px,6vw,86px)!important;
  align-items:end!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 54px!important;
  padding:0 46px!important;
  box-sizing:border-box!important;
}
.authenticate-intro-title,
.authenticate-intro-copy{
  min-width:0!important;
}
.authenticate-intro-editorial h1,
#auth-page-title{
  margin:0!important;
  width:auto!important;
  max-width:720px!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-size:clamp(44px,4.6vw,72px)!important;
  line-height:.96!important;
}
.authenticate-intro-editorial .authenticate-intro-copy{
  align-self:end!important;
  padding-bottom:4px!important;
}
.authenticate-intro-editorial .authenticate-intro-copy p{
  margin:0!important;
  max-width:520px!important;
  font-size:17px!important;
  line-height:1.68!important;
}
@media(max-width:980px){
  .authenticate-intro-editorial{
    grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)!important;
    gap:34px!important;
  }
  .authenticate-intro-editorial h1,
  #auth-page-title{
    font-size:clamp(40px,5vw,62px)!important;
  }
}
@media(max-width:760px){
  .authenticate-intro-editorial{
    grid-template-columns:1fr!important;
    gap:22px!important;
    padding:0 22px!important;
    margin-bottom:40px!important;
  }
  .authenticate-intro-editorial h1,
  #auth-page-title{
    max-width:100%!important;
    font-size:clamp(38px,10vw,52px)!important;
    line-height:.98!important;
  }
  .authenticate-intro-editorial .authenticate-intro-copy p{
    max-width:100%!important;
    font-size:16px!important;
  }
}


/* =========================================================
   AEO / AUTENTICA — COMPOSIZIONE EDITORIALE A TRE ZONE
   Titolo / testo / upload, con stato sotto.
   ========================================================= */
.authenticate-operation-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.9fr) minmax(360px,1.05fr);
  grid-template-areas:
    "title copy upload"
    "status status upload";
  column-gap:clamp(34px,4.5vw,72px);
  row-gap:30px;
  align-items:start;
  width:100%;
  margin:0 0 68px;
  padding:0 46px;
  box-sizing:border-box;
}
.authenticate-operation-title{
  grid-area:title;
  min-width:0;
}
.authenticate-operation-kicker{
  display:block;
  margin:0 0 14px;
  font-size:10px;
  line-height:1.2;
  font-weight:600;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--theme-muted,#706f85);
}
.authenticate-operation-title h1,
#auth-page-title{
  margin:0!important;
  width:auto!important;
  max-width:620px!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-style:italic!important;
  font-weight:400!important;
  font-size:clamp(42px,4vw,66px)!important;
  line-height:.98!important;
  letter-spacing:-.025em!important;
}
.authenticate-operation-copy{
  grid-area:copy;
  min-width:0;
  align-self:end;
  padding-bottom:4px;
}
.authenticate-operation-copy p{
  margin:0!important;
  max-width:480px!important;
  font-size:17px!important;
  line-height:1.68!important;
}
.authenticate-operation-upload{
  grid-area:upload;
  min-width:0;
}
.authenticate-operation-upload .authenticate-dropzone{
  width:100%!important;
  min-height:420px!important;
  margin:0!important;
}
.authenticate-operation-status{
  grid-area:status;
  min-width:0;
  align-self:end;
}
.authenticate-operation-status .authenticate-status{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:20px 0 0!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14));
}

/* La parte "Cosa vuoi fare?" segue sotto, senza creare un secondo asse. */
.authenticate-workspace-actions{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.authenticate-workspace-actions .authenticate-right{
  width:100%!important;
  margin:0!important;
}
.authenticate-workspace-actions .authenticate-choice{
  width:100%!important;
  max-width:none!important;
}

/* Neutralizza i vecchi rientri dell'intro ora non più usato. */
.authenticate-intro,
.authenticate-intro-editorial{
  display:none!important;
}

/* Tablet */
@media(max-width:1100px){
  .authenticate-operation-grid{
    grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
    grid-template-areas:
      "title upload"
      "copy upload"
      "status status";
    column-gap:42px;
  }
  .authenticate-operation-title h1,
  #auth-page-title{
    max-width:560px!important;
    font-size:clamp(40px,5vw,58px)!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .authenticate-operation-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "copy"
      "upload"
      "status";
    gap:24px;
    padding:0 22px;
    margin-bottom:46px;
  }
  .authenticate-operation-title h1,
  #auth-page-title{
    max-width:100%!important;
    font-size:clamp(38px,10vw,50px)!important;
    line-height:1!important;
  }
  .authenticate-operation-copy p{
    max-width:100%!important;
    font-size:16px!important;
  }
  .authenticate-operation-upload .authenticate-dropzone{
    min-height:360px!important;
  }
  .authenticate-operation-status .authenticate-status{
    padding-top:16px!important;
  }
}


/* =========================================================
   AEO / AUTENTICA — LAYOUT OPERATIVO DEFINITIVO A 2 COLONNE
   Sinistra: titolo + descrizione + stato
   Destra: solo upload
   Assi coerenti con le due colonne della premessa superiore.
   ========================================================= */
.authenticate-operation-grid-2col{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:56px!important;
  align-items:start!important;
  width:100%!important;
  margin:0 0 68px!important;
  padding:0 46px!important;
  box-sizing:border-box!important;
}
.authenticate-operation-left{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
}
.authenticate-operation-title{
  min-width:0!important;
}
.authenticate-operation-title h1,
#auth-page-title{
  margin:0!important;
  max-width:620px!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-style:italic!important;
  font-weight:400!important;
  font-size:clamp(42px,4vw,66px)!important;
  line-height:.98!important;
}
.authenticate-operation-copy{
  margin-top:30px!important;
  max-width:620px!important;
}
.authenticate-operation-copy p{
  margin:0!important;
  max-width:none!important;
  font-size:17px!important;
  line-height:1.68!important;
}
.authenticate-operation-status{
  margin-top:34px!important;
  max-width:620px!important;
}
.authenticate-operation-status .authenticate-status{
  width:100%!important;
  margin:0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
}
.authenticate-operation-upload{
  min-width:0!important;
}
.authenticate-operation-upload .authenticate-dropzone{
  width:100%!important;
  min-height:460px!important;
  margin:0!important;
}

/* Neutralizza definitivamente la vecchia griglia 3-zone */
.authenticate-operation-grid:not(.authenticate-operation-grid-2col){
  display:none!important;
}

@media(max-width:900px){
  .authenticate-operation-grid-2col{
    gap:38px!important;
  }
  .authenticate-operation-title h1,
  #auth-page-title{
    font-size:clamp(40px,5vw,58px)!important;
  }
}

@media(max-width:760px){
  .authenticate-operation-grid-2col{
    grid-template-columns:1fr!important;
    gap:26px!important;
    padding:0 22px!important;
    margin-bottom:46px!important;
  }
  .authenticate-operation-copy{
    margin-top:22px!important;
  }
  .authenticate-operation-status{
    margin-top:26px!important;
  }
  .authenticate-operation-upload .authenticate-dropzone{
    min-height:360px!important;
  }
}


/* AEO — correzione struttura: due colonne reali affiancate */
.authenticate-operation-grid-2col{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:56px!important;
  align-items:stretch!important;
}
.authenticate-operation-grid-2col > .authenticate-operation-left{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
}
.authenticate-operation-grid-2col > .authenticate-operation-upload{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  align-self:stretch!important;
}
.authenticate-operation-grid-2col > .authenticate-operation-upload .authenticate-dropzone{
  width:100%!important;
  height:100%!important;
  min-height:460px!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  .authenticate-operation-grid-2col{
    grid-template-columns:1fr!important;
  }
  .authenticate-operation-grid-2col > .authenticate-operation-left,
  .authenticate-operation-grid-2col > .authenticate-operation-upload{
    grid-column:1!important;
    grid-row:auto!important;
  }
}


/* =========================================================
   AEO / AUTENTICA — DUE COLONNE ALLINEATE ALLA PREMESSA
   Sinistra: titolo + testo
   Destra: upload + stato
   ========================================================= */
.authenticate-operation-grid-2col{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:56px!important;
  align-items:start!important;
  width:100%!important;
  margin:0 0 68px!important;
  padding:0 46px!important;
  box-sizing:border-box!important;
}
.authenticate-operation-grid-2col > .authenticate-operation-left{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
}
.authenticate-operation-grid-2col > .authenticate-operation-right{
  grid-column:2!important;
  min-width:0!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
}
.authenticate-operation-title h1,
#auth-page-title{
  margin:0!important;
  max-width:620px!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  font-family:var(--theme-font-display,'Playfair Display',serif)!important;
  font-style:italic!important;
  font-weight:400!important;
  font-size:clamp(42px,4vw,66px)!important;
  line-height:.98!important;
}
.authenticate-operation-copy{
  margin-top:30px!important;
  max-width:620px!important;
}
.authenticate-operation-copy p{
  margin:0!important;
  max-width:none!important;
  font-size:17px!important;
  line-height:1.68!important;
}
.authenticate-operation-upload{
  width:100%!important;
  min-width:0!important;
}
.authenticate-operation-upload .authenticate-dropzone{
  width:100%!important;
  min-height:440px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.authenticate-operation-status{
  width:100%!important;
  margin-top:12px!important;
}
.authenticate-operation-status .authenticate-status{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:16px 0 0!important;
  border-top:1px solid var(--theme-border,rgba(17,14,44,.14))!important;
}

/* Stessi assi del box grigio superiore */
.aeo-auth-premise{
  padding-left:46px!important;
  padding-right:46px!important;
}
.aeo-auth-premise-copy{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:56px!important;
}

@media(max-width:760px){
  .authenticate-operation-grid-2col{
    grid-template-columns:1fr!important;
    gap:26px!important;
    padding:0 22px!important;
  }
  .authenticate-operation-grid-2col > .authenticate-operation-left,
  .authenticate-operation-grid-2col > .authenticate-operation-right{
    grid-column:1!important;
  }
  .authenticate-operation-upload .authenticate-dropzone{
    min-height:360px!important;
  }
  .authenticate-operation-status{
    margin-top:10px!important;
  }
}


/* AEO — allineamento preciso seconda colonna */
.aeo-auth-premise,
.authenticate-operation-grid-2col{
  box-sizing:border-box!important;
  padding-left:46px!important;
  padding-right:46px!important;
}

.aeo-auth-premise-copy,
.authenticate-operation-grid-2col{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:56px!important;
}

.authenticate-operation-grid-2col > .authenticate-operation-right{
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  justify-self:stretch!important;
  transform:none!important;
}

.authenticate-operation-upload,
.authenticate-operation-status{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

.authenticate-operation-upload .authenticate-dropzone,
.authenticate-operation-status .authenticate-status{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* annulla eventuali vecchi max-width ereditati sulla colonna destra */
.authenticate-operation-grid-2col .authenticate-operation-right,
.authenticate-operation-grid-2col .authenticate-operation-upload,
.authenticate-operation-grid-2col .authenticate-operation-status{
  max-width:none!important;
}

@media(max-width:760px){
  .aeo-auth-premise,
  .authenticate-operation-grid-2col{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}


/* AEO — correzione ottica asse seconda colonna
   Il blocco upload/stato parte sullo stesso asse del testo superiore. */
@media(min-width:761px){
  .authenticate-operation-grid-2col > .authenticate-operation-right{
    position:relative!important;
    left:28px!important;
    width:calc(100% - 28px)!important;
  }
  .authenticate-operation-upload,
  .authenticate-operation-status,
  .authenticate-operation-upload .authenticate-dropzone,
  .authenticate-operation-status .authenticate-status{
    width:100%!important;
    max-width:none!important;
  }
}


/* AEO — asse sinistro invariato, bordo destro esteso */
@media(min-width:761px){
  .authenticate-operation-grid-2col > .authenticate-operation-right{
    left:28px!important;
    width:100%!important;
  }
}


/* AEO — mobile definitivo: una sola colonna */
@media(max-width:760px){
  .authenticate-operation-grid-2col{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:0!important;
    row-gap:26px!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }

  .authenticate-operation-grid-2col > .authenticate-operation-left,
  .authenticate-operation-grid-2col > .authenticate-operation-right{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }

  .authenticate-operation-grid-2col > .authenticate-operation-left{
    grid-row:1!important;
  }

  .authenticate-operation-grid-2col > .authenticate-operation-right{
    grid-row:2!important;
  }

  .authenticate-operation-upload,
  .authenticate-operation-status,
  .authenticate-operation-upload .authenticate-dropzone,
  .authenticate-operation-status .authenticate-status{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  .authenticate-operation-upload .authenticate-dropzone{
    min-height:360px!important;
  }

  .authenticate-operation-status{
    margin-top:10px!important;
  }
}


/* AEO — bordo destro upload: estensione finale, asse sinistro invariato */
@media(min-width:761px){
  .authenticate-operation-grid-2col > .authenticate-operation-right{
    left:28px!important;
    width:calc(100% + 28px)!important;
  }
}

/* AEO — responsive: sotto 980px una sola colonna ovunque */
html,body{max-width:100%;overflow-x:hidden;}
@media(max-width:980px){
  .aeo-auth-premise-copy{display:grid!important;grid-template-columns:minmax(0,1fr)!important;column-gap:0!important;row-gap:24px!important;}
  .aeo-auth-premise-copy>*{grid-column:1/-1!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;}
  .authenticate-operation-grid-2col{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:0!important;row-gap:32px!important;}
  .authenticate-operation-grid-2col>.authenticate-operation-left,.authenticate-operation-grid-2col>.authenticate-operation-right{grid-column:1/-1!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;position:static!important;left:auto!important;right:auto!important;transform:none!important;}
  .authenticate-operation-grid-2col>.authenticate-operation-left{grid-row:1!important;}
  .authenticate-operation-grid-2col>.authenticate-operation-right{grid-row:2!important;}
  .authenticate-operation-upload,.authenticate-operation-status,.authenticate-operation-upload .authenticate-dropzone,.authenticate-operation-status .authenticate-status{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;}
  .authenticate-choice-grid,.authenticate-form-grid,.production-form-grid{grid-template-columns:minmax(0,1fr)!important;}
}
@media(max-width:760px){
  .aeo-auth-premise,.authenticate-operation-grid-2col{padding-left:22px!important;padding-right:22px!important;}
  .authenticate-operation-title h1,#auth-page-title{font-size:clamp(38px,11vw,54px)!important;line-height:1!important;max-width:100%!important;}
  .authenticate-operation-upload .authenticate-dropzone{min-height:330px!important;}
}
\n\n/* AEO — box upload: stesso colore accent usato dagli anni della Biografia */\n.authenticate-operation-upload .authenticate-dropzone,\n.authenticate-dropzone{\n  background:var(--theme-accent)!important;\n  border-color:color-mix(in srgb,var(--theme-text) 44%,transparent)!important;\n  color:var(--theme-bg)!important;\n}\n.authenticate-dropzone .authenticate-empty,\n.authenticate-dropzone .authenticate-empty strong,\n.authenticate-dropzone .authenticate-empty span,\n.authenticate-dropzone .authenticate-empty small,\n.authenticate-dropzone .authenticate-plus{\n  color:var(--theme-bg)!important;\n}\n.authenticate-dropzone .authenticate-empty small,\n.authenticate-dropzone .authenticate-empty span:not(.authenticate-plus){\n  opacity:.78;\n}\n.authenticate-dropzone:focus-visible{\n  outline:2px solid var(--theme-text)!important;\n  outline-offset:3px;\n}\n

/* AEO — upload: stesso colore degli anni della sezione biografia/mostre */
.authenticate-page #authenticate-dropzone,
.authenticate-operation-upload #authenticate-dropzone,
.authenticate-dropzone{
  background:var(--theme-accent)!important;
  border-color:color-mix(in srgb,var(--theme-text) 38%,transparent)!important;
  color:var(--theme-bg)!important;
}

.authenticate-page #authenticate-dropzone .authenticate-plus,
.authenticate-page #authenticate-dropzone strong,
.authenticate-page #authenticate-dropzone span,
.authenticate-page #authenticate-dropzone small,
.authenticate-page #authenticate-dropzone .authenticate-empty{
  color:var(--theme-bg)!important;
  opacity:1!important;
}

/* Tema scuro: --theme-accent diventa automaticamente #69e2fd;
   il testo usa --theme-bg, quindi resta scuro e leggibile. */
html[data-theme="dark"] .authenticate-page #authenticate-dropzone,
html[data-theme="dark"] .authenticate-operation-upload #authenticate-dropzone{
  background:var(--theme-accent)!important;
  color:var(--theme-bg)!important;
  border-color:color-mix(in srgb,var(--theme-bg) 42%,transparent)!important;
}

html[data-theme="dark"] .authenticate-page #authenticate-dropzone .authenticate-plus,
html[data-theme="dark"] .authenticate-page #authenticate-dropzone strong,
html[data-theme="dark"] .authenticate-page #authenticate-dropzone span,
html[data-theme="dark"] .authenticate-page #authenticate-dropzone small,
html[data-theme="dark"] .authenticate-page #authenticate-dropzone .authenticate-empty{
  color:var(--theme-bg)!important;
}

/* Preview: quando il PNG è caricato, non tingere l'immagine. */
.authenticate-page #authenticate-preview-wrap{
  background:transparent!important;
}


/* AEO — separatore breve tra le due colonne introduttive */
@media(min-width:981px){
  .aeo-auth-premise-copy{
    position:relative!important;
  }
  .aeo-auth-premise-copy::after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:1px;
    height:72px;
    background:var(--theme-border,rgba(17,14,44,.18));
    transform:translate(-50%,-50%);
    pointer-events:none;
  }
}
@media(max-width:980px){
  .aeo-auth-premise-copy::after{
    display:none!important;
  }
}


/* AEO — stato e metadati più leggibili */
.authenticate-status-copy > strong,
#auth-status-title{
  font-size:17px!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:.035em!important;
}
#authenticate-status-detail{
  display:block!important;
  margin-top:7px!important;
  font-size:15px!important;
  line-height:1.6!important;
}
#authenticate-status-ids{
  display:block!important;
  margin-top:13px!important;
  font-size:13.5px!important;
  line-height:1.7!important;
  color:var(--theme-text)!important;
}
#authenticate-status-ids strong{
  font-weight:700!important;
  color:var(--theme-text)!important;
}
@media(max-width:760px){
  .authenticate-status-copy > strong,
  #auth-status-title{font-size:15px!important}
  #authenticate-status-detail{font-size:14px!important}
  #authenticate-status-ids{font-size:12.5px!important}
}


/* =========================================================
   AEO — MOBILE: moduli autenticazione/produzione senza cornice esterna
   Manteniamo solo le linee interne dei campi e dei singoli elementi.
   ========================================================= */
@media (max-width:760px){
  .authenticate-workspace-flow .authenticate-right{
    background:var(--theme-bg,#faf8f5)!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }

  .authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
  .authenticate-workspace-flow .production-panel.authenticate-path-panel{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
}


/* =========================================================
   AEO — MOBILE: pannelli autenticazione / produzione
   Fondo tecnico grigio come desktop, senza la vecchia cornice esterna.
   ========================================================= */
@media (max-width:760px){
  .authenticate-workspace-flow .authenticate-right{
    background:var(--theme-bg,#faf8f5)!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }

  .authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
  .authenticate-workspace-flow .production-panel.authenticate-path-panel{
    background:rgba(125,125,125,.075)!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
}


/* AEO — MOBILE: il fondo grigio deve respirare oltre il contenuto */
@media (max-width:760px){
  .authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
  .authenticate-workspace-flow .production-panel.authenticate-path-panel{
    width:calc(100% + 28px)!important;
    max-width:none!important;
    margin-left:-14px!important;
    margin-right:-14px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    box-sizing:border-box!important;
  }
}


/* AEO — MOBILE: respiro verticale del pannello grigio */
@media (max-width:760px){
  .authenticate-workspace-flow .authenticate-form.authenticate-path-panel,
  .authenticate-workspace-flow .production-panel.authenticate-path-panel{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
}


/* AUTENTICA — pallino live accanto al titolo “ADESSO È ORA” */
#aeo-auth-premise-title{
  display:flex!important;
  align-items:center!important;
  gap:.22em!important;
}
#aeo-auth-premise-title .aeo-auth-title-dot{
  display:inline-block;
  flex:0 0 auto;
  width:.14em;
  height:.14em;
  min-width:7px;
  min-height:7px;
  border-radius:50%;
  background:#e32727!important;
  animation:adesso-breathe 1.8s ease-in-out infinite;
}
@media(max-width:760px){
  #aeo-auth-premise-title{
    gap:.26em!important;
  }
}


/* AUTENTICA — affinamento pallino titolo */
#aeo-auth-premise-title .aeo-auth-title-dot{
  width:.17em!important;
  height:.17em!important;
  min-width:8px!important;
  min-height:8px!important;
  position:relative;
  top:.045em;
}
