*{box-sizing:border-box}
:root{--green:#2e4e45;--green-dark:#1f3932;--green-soft:#edf4f1;--gold:#aa7a31;--ink:#202824;--muted:#66716c;--line:#d9e0dd;--surface:#fff;--page:#f4f6f5;--danger:#9b1c1c;--shadow:0 10px 32px rgba(31,57,50,.09)}
html{scroll-behavior:smooth}body{font-family:Arial,Helvetica,sans-serif;background:var(--page);color:var(--ink);margin:0;line-height:1.45}body.guide-open{overflow:hidden}.container{max-width:1040px;margin:auto;padding:22px}.banner{text-align:center;margin-bottom:10px}.banner img{max-width:100%;height:auto}.container>h1{text-align:center;margin:12px 0 3px;font-size:clamp(27px,4vw,38px);color:var(--green-dark)}.sottotitolo-gratis{text-align:center;color:var(--gold);font-size:18px;font-weight:700;margin:0 0 13px}.titolo-concorso{text-align:center}.titolo-concorso h2{display:inline-block;font-size:16px;margin:4px 0 16px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:400}.card{background:var(--surface);padding:28px;margin:18px 0;border:1px solid #e1e6e4;border-radius:16px;box-shadow:var(--shadow)}.registration-card{padding:0;overflow:hidden}.form-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:25px 28px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,#f4f8f6)}.form-heading h2{margin:0;color:var(--green-dark);font-size:27px}.form-heading p{margin:5px 0 0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px!important;font-weight:700;color:var(--gold)!important}.required-note{font-size:12px;color:var(--muted);white-space:nowrap}.registration-card form{padding:6px 28px 28px}.form-section{padding:23px 0 8px;border-bottom:1px solid #edf0ee}.form-section:last-child{border-bottom:0}.section-title{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--green-dark);font-size:18px}.section-title span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--green);color:#fff;font-size:13px}.support-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.support-button{min-height:72px;display:flex;align-items:center;gap:14px;padding:13px 17px;border-radius:12px;border:1px solid var(--green);text-align:left;text-decoration:none;cursor:pointer;font-family:inherit;transition:.15s}.support-button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(32,61,52,.13)}.support-button-primary{background:var(--green);color:#fff}.support-button-primary:hover{background:var(--green-dark)}.support-button-secondary{background:#fff;color:var(--green)}.support-button-secondary:hover{background:var(--green-soft)}.support-button strong{display:block;font-size:15px;margin-bottom:3px}.support-button small{display:block;font-size:12px;line-height:1.3;opacity:.82;font-weight:400}.support-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.18);font-size:18px;font-weight:700}.support-button-secondary .support-icon{background:var(--green-soft)}form{width:100%}.campo{margin-bottom:14px}label{display:block;margin-bottom:6px;font-weight:700;font-size:14px;color:#303b36}input,select{width:100%;padding:12px 13px;margin:2px 0;border:1px solid #b9c4bf;border-radius:8px;font-size:15px;background:#fff;transition:.15s}input:hover,select:hover{border-color:#86958e}input:focus,select:focus{outline:3px solid rgba(46,78,69,.13);border-color:var(--green)}input[type=file]{padding:9px;background:#fafbfa}.riga{display:flex;gap:16px;margin-bottom:2px;align-items:flex-start}.riga .campo{flex:1 1 0;min-width:0}.codice-box{flex:0 0 265px;width:265px}button{background:#39443f;color:#fff;border:0;padding:10px 17px;border-radius:8px;font-size:14px;cursor:pointer;font-weight:700;transition:.15s}button:hover{background:#505d57}.campo>button{margin-top:7px}.form-actions{display:flex;align-items:center;gap:10px;margin-top:16px}.btn-primary{background:var(--green);padding:12px 24px}.btn-primary:hover{background:var(--green-dark)}.btn-annulla{background:#747d79}.box-accettazione{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.box-regola{border:1px solid var(--line);border-radius:10px;padding:16px;text-align:left;background:#fafcfb}.box-regola h3{margin:0 0 8px;font-size:15px}.box-regola p{margin:5px 0}.box-regola label{font-size:13px;font-weight:400;margin-top:10px}.box-regola input{width:auto;margin-right:6px}.box-regola a{color:var(--green);font-weight:700}.footer{display:flex;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin-top:34px;font-size:13px;line-height:1.5}.footer-dx{text-align:right}.footer a{color:var(--green)}#msgInvioEmail,#msgEmail{display:block;margin-top:7px;font-size:13px;color:var(--green);font-weight:700}.field-help-invio{align-self:center;margin-left:1px}@media(max-width:760px){.container{padding:12px}.card{padding:20px}.registration-card{padding:0}.registration-card form{padding:3px 18px 20px}.form-heading{padding:21px 18px;align-items:flex-start;flex-direction:column}.support-actions{grid-template-columns:1fr}.riga{flex-direction:column;gap:0}.codice-box{width:100%;flex:1 1 auto}.box-accettazione{grid-template-columns:1fr}.footer{flex-direction:column;text-align:center}.footer-dx{text-align:center}.required-note{white-space:normal}}

/* PremioLetterario v6 */
.existing-registration{margin:0 0 22px;padding:18px;border:1px solid #c9d8d2;border-left:5px solid #2e4e45;border-radius:8px;background:#f5f9f7}
.existing-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.existing-actions button.is-selected{outline:3px solid rgba(46,78,69,.25)}
.existing-work-info{padding:12px;margin:12px 0;background:#fff;border-radius:6px;line-height:1.6}.deadline-note{font-size:.92rem;color:#633;margin-top:10px}
.poetry-uploads{display:grid;gap:14px;margin-top:12px}.poetry-upload{padding:14px;border:1px solid #d7dfdc;border-radius:8px;background:#fafcfa}.poetry-upload label{display:block;margin-bottom:8px}.field-note{font-size:.93rem;color:#555;line-height:1.5}
[hidden]{display:none!important}


/* Iscrizione esistente per categoria */
.existing-actions-top{margin:12px 0 18px}.existing-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.existing-work-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;display:flex;flex-direction:column;min-height:190px}.existing-work-card h4{margin:0 0 10px;color:var(--green-dark);font-size:18px}.existing-work-content{flex:1}.existing-work-content p{margin:5px 0}.existing-work-card .work-action{margin-top:14px;width:100%}.existing-work-card .work-action:disabled{opacity:.5;cursor:not-allowed}.no-work{color:var(--muted);font-style:italic}.current-poetry{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #c9d8d2;border-radius:8px;background:#fff}.current-poetry span{overflow-wrap:anywhere}.delete-poetry{background:#8b3434;padding:8px 12px;flex:0 0 auto}.delete-poetry:hover{background:#6f2727}.new-poetry{margin-top:7px}.existing-registration:focus{outline:3px solid rgba(46,78,69,.18);outline-offset:3px}@media(max-width:760px){.existing-work-grid{grid-template-columns:1fr}}

/* 2.0 Beta - partecipazione a nuove edizioni e annullamento iscrizione */
.profile-confirmation { margin-top: 18px; }
.profile-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px 22px;
  margin: 16px 0 18px;
  padding: 16px;
  border: 1px solid #d7e0dc;
  border-radius: 8px;
  background: #fff;
}
.cancel-work-action {
  margin-top: 9px;
  background: transparent !important;
  color: #8b1e2d !important;
  border: 1px solid #8b1e2d !important;
}
.cancel-work-action:hover { background: #fff2f3 !important; }
@media (max-width: 700px){ .profile-summary{grid-template-columns:1fr;} }

/* Storico delle partecipazioni alle edizioni precedenti */
.previous-editions{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.previous-editions h3{margin:0 0 6px;color:var(--green-dark)}
.previous-editions-intro{margin:0 0 14px;color:var(--muted);font-size:.94rem}
.previous-editions-list{display:grid;gap:14px}
.previous-edition-group{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px}
.previous-edition-group h4{margin:0 0 10px;color:#8b1f35;font-size:1rem}
.previous-work{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #eee}
.previous-work:first-of-type{border-top:0}
.previous-work-main{display:flex;align-items:center;gap:12px;min-width:0}
.previous-work-main strong{min-width:78px;color:var(--green-dark)}
.previous-work-title{overflow-wrap:anywhere}
.previous-work-meta{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:.9rem}
.previous-pdf-link{font-weight:700;color:#8b1f35}
@media(max-width:760px){.previous-work{align-items:flex-start;flex-direction:column}.previous-work-meta{white-space:normal}}

.btn-esci-iscrizione{
  display:inline-flex;align-items:center;justify-content:center;min-height:38px;
  padding:0 16px;border:1px solid #7d8783;border-radius:5px;background:#fff;
  color:#34443f;font:inherit;font-weight:600;text-decoration:none;box-sizing:border-box;
}
.btn-esci-iscrizione:hover{background:#f1f3f2;color:#23312d;}

/* Esci accanto alle azioni dell'autore riconosciuto */
.existing-actions .btn-esci-iscrizione{
  min-height:0;
  padding:9px 14px;
  border-color:#55645f;
  background:#fff;
  color:#34443f;
  line-height:1.2;
}
.existing-actions .btn-esci-iscrizione:hover{
  background:#eef2f0;
}

.current-work-preview{
  margin:12px 0 16px;
  padding:12px 14px;
  border:1px solid #cbd8d2;
  border-radius:8px;
  background:#f7faf8;
}
.current-work-preview div{margin-top:6px;}
.current-work-preview a{font-weight:600;}

.privacy-request-panel{margin-top:24px;padding:18px;border:1px solid #d8c7c7;border-left:4px solid #7b2638;border-radius:8px;background:#fffafa}
.privacy-request-panel h3{margin-top:0;color:#7b2638}
.privacy-request-button{background:#fff;color:#7b2638;border:1px solid #7b2638}
.privacy-request-button:hover:not(:disabled){background:#7b2638;color:#fff}
.privacy-request-button:disabled{opacity:.65;cursor:not-allowed}
.privacy-request-message{margin:10px 0 0;font-size:.95em}

.resend-countdown{margin-top:6px;font-size:.9rem;color:#5d5d5d;}


/* Autocomplete comuni italiani */
.citta-box{position:relative}
.comuni-suggestions{position:absolute;left:0;right:0;top:100%;z-index:1000;background:#fff;border:1px solid #bbb;border-radius:6px;box-shadow:0 5px 15px rgba(0,0,0,.14);max-height:260px;overflow-y:auto}
.comune-suggestion{display:block;width:100%;border:0;border-bottom:1px solid #eee;background:#fff;color:#222;text-align:left;padding:9px 11px;cursor:pointer;font:inherit}
.comune-suggestion:hover,.comune-suggestion:focus{background:#f2f2f2;outline:none}
.input-provincia[readonly]{background:#f4f4f4;cursor:default}
/* Avviso anonimato opera accanto al titolo della sezione Opera */
.opera-anonima-note {
  font-size: 13px;
  font-weight: 600;
  color: #8a4b00;
  margin-left: 4px;
}

@media (max-width: 700px) {
  .opera-anonima-note {
    display: block;
    margin: 4px 0 0 39px;
    line-height: 1.35;
  }
}

