/* Associazioni OS · Donazioni sul sito: [aso_dona], [aso_campagna], [aso_campagne], [aso_5x1000].
   I colori vengono dall'associazione (--d-brand, --d-scuro, --d-chiaro), il resto dal tema. */
.aso-dona{--d-bordo:rgba(0,0,0,.12);--d-tenue:rgba(0,0,0,.6);--d-ok:#0E7051;--d-err:#B0243E;font-size:16px;line-height:1.5;margin:0 0 24px}
.aso-dona *{box-sizing:border-box}
.aso-dona-titolo{margin:0 0 12px}
.aso-dona-intro,.aso-dona-per{margin:0 0 14px}
.aso-dona-vuoto{padding:16px;border:1px dashed var(--d-bordo);border-radius:12px;color:var(--d-tenue)}
.aso-dona-piccolo{font-size:13px;color:var(--d-tenue);margin:8px 0}
/* Il modulo della donazione. */
.aso-dona-modulo{display:flex;flex-direction:column;gap:12px;max-width:620px;padding:20px;border:1px solid var(--d-bordo);border-radius:16px;background:#fff}
.aso-dona-modulo label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;margin:0}
.aso-dona-modulo input[type=text],.aso-dona-modulo input[type=email],.aso-dona-modulo select{width:100%;padding:10px 12px;border:1px solid var(--d-bordo);border-radius:10px;font:inherit;font-weight:400;background:#fff;margin:0;height:auto}
.aso-dona-modulo input.errato{border-color:var(--d-err);box-shadow:0 0 0 3px rgba(176,36,62,.12)}
.aso-dona-importi{border:0;padding:0;margin:0}
.aso-dona-importi legend{font-weight:700;margin-bottom:8px;padding:0}
.aso-dona-scelte{display:flex;flex-wrap:wrap;gap:8px}
.aso-dona-modulo .aso-dona-chip{flex-direction:row;cursor:pointer}
.aso-dona-chip input{position:absolute;opacity:0;pointer-events:none}
.aso-dona-chip span{display:inline-block;min-width:72px;text-align:center;padding:10px 14px;border:2px solid var(--d-bordo);border-radius:12px;font-weight:700;font-size:16px;transition:all .15s}
.aso-dona-chip input:checked+span{border-color:var(--d-brand);background:var(--d-chiaro);color:var(--d-scuro)}
.aso-dona-chip input:focus-visible+span{outline:2px solid var(--d-brand);outline-offset:2px}
.aso-dona-libero{margin-top:10px!important}
.aso-dona-due,.aso-dona-tre{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.aso-dona-tre{grid-template-columns:110px 1fr 90px}
.aso-dona-ricevuta{border:1px solid var(--d-bordo);border-radius:12px;padding:10px 14px}
.aso-dona-ricevuta summary{cursor:pointer;font-weight:600;font-size:14px}
.aso-dona-ricevuta[open]{display:flex;flex-direction:column;gap:10px}
.aso-dona-modulo .aso-dona-check{flex-direction:row;align-items:flex-start;gap:8px;font-weight:400}
.aso-dona-check input{margin-top:4px}
.aso-dona-nascosto{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.aso-dona-esito{margin:0;font-size:14px;min-height:0}
.aso-dona-esito:empty{display:none}
.aso-dona-esito.ok{color:var(--d-ok);font-weight:600}
.aso-dona-esito.err{color:var(--d-err);font-weight:600}
.aso-dona-prova{background:#FFF7E0;border:1px solid #F0D58A;border-radius:10px;padding:8px 12px;font-size:13px;margin:0}
.aso-dona-bottone{display:inline-block;border:0;background:var(--d-brand);color:#fff!important;font:inherit;font-weight:700;padding:12px 22px;border-radius:12px;cursor:pointer;text-decoration:none!important;text-align:center}
.aso-dona-bottone:hover{background:var(--d-scuro)}
.aso-dona-bottone[disabled]{opacity:.6;cursor:default}
.aso-dona-largo{width:100%}
.aso-dona-secondario{background:transparent;color:var(--d-scuro)!important;border:2px solid var(--d-brand)}
.aso-dona-secondario:hover{background:var(--d-chiaro)}
.aso-dona-fatto{padding:18px 20px;border-radius:14px;background:var(--d-chiaro);color:var(--d-scuro)}
.aso-dona-fatto h3{margin:0 0 6px}
/* Il bonifico, il 5×1000, le righe da copiare. */
.aso-dona-box,.aso-dona-5x1000{max-width:620px;margin-top:16px;padding:18px 20px;border:1px solid var(--d-bordo);border-radius:16px;background:#fff}
.aso-dona-box h3,.aso-dona-5x1000 h3{margin:0 0 8px}
.aso-dona-bonifico summary{cursor:pointer;font-weight:700}
.aso-dona-riga{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--d-bordo);flex-wrap:wrap}
.aso-dona-riga span{min-width:90px;color:var(--d-tenue);font-size:13px}
.aso-dona-riga strong{flex:1;font-variant-numeric:tabular-nums;word-break:break-all}
.aso-dona-copia{border:1px solid var(--d-bordo);background:#fff;border-radius:8px;padding:5px 10px;font:inherit;font-size:13px;cursor:pointer}
.aso-dona-copia.fatto{border-color:var(--d-ok);color:var(--d-ok)}
.aso-dona-5x1000{background:var(--d-chiaro);border-color:transparent}
.aso-dona-cf{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border-radius:12px;padding:12px 16px;margin-top:6px}
.aso-dona-cf strong{font-size:24px;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--d-scuro)}
/* Le campagne. */
.aso-dona-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.aso-dona-camp{border:1px solid var(--d-bordo);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.aso-dona-camp.chiusa{opacity:.92}
.aso-dona-camp-img img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.aso-dona-camp-corpo{padding:16px 18px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.aso-dona-camp-titolo{margin:0;font-size:20px}
.aso-dona-camp-titolo a{color:inherit;text-decoration:none}
.aso-dona-camp-breve{margin:0;color:var(--d-tenue);flex:1}
.aso-dona-camp-testo p{margin:0 0 10px}
.aso-dona-barra{height:10px;border-radius:99px;background:rgba(0,0,0,.08);overflow:hidden}
.aso-dona-barra i{display:block;height:100%;background:var(--d-brand);border-radius:99px}
.aso-dona-cifre{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:14px;color:var(--d-tenue)}
.aso-dona-cifre strong{color:var(--d-scuro);font-size:18px}
.aso-dona-grazie ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.aso-dona-grazie li{background:var(--d-chiaro);color:var(--d-scuro);border-radius:99px;padding:3px 10px;font-size:13px}
.aso-dona-indietro{display:inline-block;margin-bottom:12px}
.aso-dona-sotto{margin:28px 0 12px}
.aso-dona-camp .aso-dona-blocco{margin:6px 0 0}
@media (max-width:560px){.aso-dona-due{grid-template-columns:1fr}.aso-dona-tre{grid-template-columns:90px 1fr 70px}.aso-dona-modulo{padding:16px}}
