/* area riservata: iscrizione, accesso, dashboard, premio */
button.btn{border:0;cursor:pointer;font:inherit;font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.95rem}
#iscr{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line);background:var(--night);color:var(--chalk);border-radius:4px}
#iscr::backdrop{background:rgba(0,0,0,.65)}
#iscr form{display:grid;gap:1rem;padding:1.6rem 1.3rem 1.4rem}
#iscr h2{font-size:clamp(1.7rem,6vw,2.2rem);margin:0}
#iscr .sub{color:var(--muted);font-size:1rem;margin-top:-.4rem}
#iscr label.f{display:grid;gap:.3rem;font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--muted)}
#iscr input[type=text],#iscr input[type=email],#iscr input[type=password]{font:inherit;font-family:var(--f-t);font-size:16px;text-transform:none;letter-spacing:0;color:var(--chalk);background:var(--stone);border:1px solid var(--line);border-radius:2px;padding:.75rem .8rem}
#iscr input:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
#iscr .pv{max-height:7.5rem;color:var(--chalk) !important;font-size:.92rem !important;overflow-y:auto;border:1px solid var(--line);background:var(--stone);padding:.2rem .9rem .7rem;font-size:.88rem;line-height:1.5;color:var(--muted)}
#iscr .pv h3{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;color:var(--gold);margin:.8rem 0 .2rem}
#iscr .pv p{margin:.25rem 0}
#iscr .ck{display:grid;grid-template-columns:22px 1fr;gap:.6rem;align-items:start;font-size:.98rem;cursor:pointer}
#iscr .ck input{width:20px;height:20px;margin:.15rem 0 0;accent-color:var(--wine-hi)}
#iscr .ck small{display:block;color:var(--muted);font-size:.85rem}
#iscr .err{color:#f08a8a;font-size:.92rem;min-height:1.2em}
#iscr .acts{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
#iscr .x{position:absolute;top:.6rem;right:.7rem;background:none;border:0;color:var(--muted);font-size:1.6rem;line-height:1;cursor:pointer;padding:.3rem .5rem}
#iscr .ok{padding:2rem 1.3rem;display:grid;gap:1rem}

.accedi{flex:none;margin-left:auto;background:none;border:1px solid var(--gold);color:var(--gold);font-family:var(--f-d);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;padding:.42rem .9rem;border-radius:999px;cursor:pointer}
.accedi:hover{background:color-mix(in srgb,var(--gold) 14%,transparent)}
@media (max-width:820px){.nav-in{gap:.5rem}.nav .logo{width:92px}.menu-btn{order:1;font-size:0;gap:0;padding:.6rem .7rem}.accedi{margin-left:0;order:2}.nav-in .lang{order:3;margin-left:0}.lang a,.lang span{padding:.4rem .6rem}}
@media (min-width:821px){.nav-in .links{margin-left:0}.accedi{margin-left:1rem}}
#acc{width:min(460px,calc(100% - 24px));padding:0;border:1px solid var(--line);background:var(--night);color:var(--chalk);border-radius:4px}
#acc::backdrop{background:rgba(0,0,0,.65)}
#acc form{display:grid;gap:1rem;padding:1.6rem 1.3rem 1.4rem}
#acc h2{font-size:clamp(1.7rem,6vw,2.2rem);margin:0}
#acc .sub{color:var(--muted);font-size:1rem;margin-top:-.4rem}
#acc label.f{display:grid;gap:.3rem;font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--muted)}
#acc input[type=email],#acc input[type=password],#acc input[type=text]{font:inherit;font-family:var(--f-t);font-size:16px;text-transform:none;letter-spacing:0;color:var(--chalk);background:var(--stone);border:1px solid var(--line);border-radius:2px;padding:.75rem .8rem}
#acc .err{color:#f08a8a;font-size:.92rem;min-height:1.2em}
#acc .alt{font-size:.95rem;color:var(--muted)}
#acc .alt button{background:none;border:0;color:var(--gold);font:inherit;text-decoration:underline;cursor:pointer;padding:0}
#acc .x{position:absolute;top:.6rem;right:.7rem;background:none;border:0;color:var(--muted);font-size:1.6rem;line-height:1;cursor:pointer;padding:.3rem .5rem}
#area{position:fixed;inset:0;z-index:60;overflow-y:auto;background:var(--night);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
#area .top{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--night) 94%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
#area .top .in{max-width:1000px;margin:0 auto;padding:.7rem var(--gut);display:flex;align-items:center;gap:1rem}
#area .top .logo{width:110px}
#area .top .esci{margin-left:auto}
#area .in2{max-width:1000px;margin:0 auto;padding:2rem var(--gut) 4rem;display:grid;gap:2.2rem}
#area .ciao h1{font-family:var(--f-d);font-weight:600;text-transform:uppercase;font-size:clamp(2.2rem,8vw,3.6rem);line-height:.95;margin:.3rem 0 0}
#area .ciao p{color:var(--muted);margin-top:.6rem;max-width:36rem}
.blocco{background:var(--stone);border:1px solid var(--line);padding:1.4rem;display:grid;gap:1rem;align-content:start;min-width:0}
.blocco h2{font-size:clamp(1.6rem,4vw,2rem);margin:0}
.blocco .eyebrow{margin:0}
.lez{list-style:none;margin:0;padding:0;display:grid}
.lez li{display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;gap:.8rem;align-items:center;padding:.75rem 0;border-top:1px solid var(--line)}
.lez li:first-child{border-top:0}
.lez .n{font-family:var(--f-d);font-size:1.6rem;color:var(--gold);line-height:1}
.lez .t{font-size:1.02rem;line-height:1.25}
.lez .s{display:block;font-size:.85rem;color:var(--muted)}
.lez .fatta .s{color:#9cc98f}
.lez a.mini{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--chalk);background:var(--wine);text-decoration:none;padding:.45rem .7rem;border-radius:2px;white-space:nowrap}
.lez a.mini.alt{background:none;border:1px solid var(--line);color:var(--muted)}
.lez .chiusa{opacity:.55}
.borsa{display:flex;align-items:center;gap:1rem}
.borsa img{width:96px;height:96px;flex:none}
.borsa b{font-family:var(--f-d);font-weight:600;font-size:3.2rem;line-height:1;color:var(--gold)}
.borsa span{display:block;color:var(--muted);font-size:.95rem}
.regole{font-size:.92rem;color:var(--muted)}
.regole summary{cursor:pointer;color:var(--gold);font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}
.regole p{margin:.5rem 0 0}
.news{display:grid;gap:1rem}
.news article{border-top:1px solid var(--line);padding-top:1rem;display:grid;gap:.35rem}
.news article:first-child{border-top:0;padding-top:0}
.news time{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;color:var(--gold)}
.news h3{font-size:1.25rem;margin:0}
.news p{color:var(--muted);font-size:.98rem}
.pw{display:flex;gap:.4rem}.pw input{flex:1;min-width:0}.vedi{flex:none;background:none;border:1px solid var(--line);color:var(--muted);font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;padding:0 .7rem;border-radius:2px;cursor:pointer}
.affina{border:1px dashed var(--line);padding:.9rem 1rem;display:grid;gap:.4rem}.affina p{color:var(--muted);font-size:.98rem}
[hidden]{display:none!important}
.corso-dx{display:grid;gap:1.2rem;justify-items:start}
@media (min-width:821px){.corso-dx{justify-items:end}.corso-dx .lead{justify-self:stretch}}
#iscr .vantaggi{margin:-.3rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem;font-size:.95rem;color:var(--muted)}
#iscr .vantaggi b{color:var(--chalk);font-weight:500}
#iscr .assaggio{font-size:.95rem;color:var(--muted);border-top:1px solid var(--line);padding-top:.9rem}
.mailnov{display:flex;gap:.6rem;align-items:center;font-size:.95rem;color:var(--muted)}
.mailnov input{width:20px;height:20px;accent-color:var(--wine-hi)}
/* premio: la moneta che arriva */
#premio{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(10,5,7,.72);padding:max(16px,env(safe-area-inset-left,0px))}
#premio .card{position:relative;width:min(380px,100%);background:var(--night);border:1px solid var(--gold);border-radius:6px;padding:2rem 1.4rem 1.5rem;text-align:center;display:grid;gap:.8rem;justify-items:center;overflow:hidden}
#premio .card::before{content:"";position:absolute;inset:-40% -40% auto;height:120%;background:radial-gradient(circle at 50% 60%,color-mix(in srgb,var(--gold) 28%,transparent),transparent 60%);pointer-events:none}
#premio .moneta{position:relative;width:150px;height:150px;perspective:600px}
#premio .moneta img{width:100%;height:100%;animation:cade 1.1s cubic-bezier(.25,.9,.3,1.15) both, gira 1.1s ease-out both;filter:drop-shadow(0 10px 18px rgba(0,0,0,.5))}
#premio .piu{position:absolute;right:-14px;top:-6px;background:var(--wine-hi);color:var(--chalk);font-family:var(--f-d);font-weight:600;font-size:1.5rem;line-height:1;padding:.35rem .6rem;border-radius:999px;border:2px solid var(--night);animation:spunta .4s 1s both}
#premio .eyebrow{margin:0}
#premio h2{font-size:clamp(2rem,8vw,2.6rem);margin:0}
#premio p.msg{color:var(--chalk);font-size:1.1rem;line-height:1.4;max-width:20rem}
#premio .saldo{color:var(--muted);font-size:.95rem}
#premio .saldo b{color:var(--gold);font-family:var(--f-d);font-size:1.2rem}
#premio .scintilla{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:0;animation:scintilla 1.2s .9s ease-out both}
@keyframes cade{0%{transform:translateY(-160%) scale(.7)}70%{transform:translateY(6%) scale(1.02)}100%{transform:translateY(0) scale(1)}}
@keyframes gira{0%{rotate:y 0deg}100%{rotate:y 720deg}}
@keyframes spunta{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes scintilla{0%{opacity:1;transform:translate(0,0)}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
@media (prefers-reduced-motion:reduce){#premio .moneta img,#premio .piu,#premio .scintilla{animation:none}#premio .scintilla{display:none}}
/* dashboard dell'area riservata: voci che si aprono */
.dash{display:grid;gap:.8rem}
.voce{background:var(--stone);border:1px solid var(--line);border-radius:4px;min-width:0}
.voce>summary,.voce .riga{list-style:none;display:grid;grid-template-columns:2.6rem minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:1rem 1.1rem;cursor:pointer}
.voce>summary::-webkit-details-marker,.liv>summary::-webkit-details-marker{display:none}
.voce .ico{width:2.6rem;height:2.6rem;border-radius:50%;background:color-mix(in srgb,var(--gold) 14%,transparent);display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.voce .ico img{width:2.1rem;height:2.1rem}
.voce .vt b{display:block;font-family:var(--f-d);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:1.15rem;line-height:1.15}
.voce .vt small{display:block;color:var(--muted);font-size:.9rem;margin-top:.15rem}
.voce .fr::after{content:"";display:block;width:.6rem;height:.6rem;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg);transition:transform .2s;margin-right:.3rem}
.voce[open]>summary .fr::after{transform:rotate(-135deg)}
.voce[open]>summary{border-bottom:1px solid var(--line)}
.voce .corpo{padding:1.1rem;display:grid;gap:1rem}
.voce.chiusa{opacity:.6}.voce.chiusa .riga{cursor:default}
.lav{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;color:var(--gold);border:1px solid var(--gold);padding:.2rem .45rem;border-radius:2px;white-space:nowrap}
.desc{color:var(--muted);font-size:.98rem}
.liv{border-top:1px solid var(--line);padding-top:.6rem}
.liv:first-child{border-top:0;padding-top:0}
.liv>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:.8rem;align-items:baseline;padding:.3rem 0}
.liv>summary b{font-family:var(--f-d);font-weight:500;color:var(--gold);letter-spacing:.03em}
.liv>summary small{color:var(--muted);font-size:.85rem;white-space:nowrap}
.liv .vuoto{color:var(--muted);font-size:.95rem;padding:.4rem 0 .6rem}
.mov{list-style:none;margin:0;padding:0;display:grid}
.mov li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-top:1px solid var(--line);font-size:.98rem}
.mov li:first-child{border-top:0}
.mov b{color:var(--gold);font-family:var(--f-d)}
.mov:empty{display:none}
#area label.f{display:grid;gap:.3rem;font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--muted)}
#area input[type=text],#area input[type=email],#area textarea{font:inherit;font-family:var(--f-t);font-size:16px;color:var(--chalk);background:var(--night);border:1px solid var(--line);border-radius:2px;padding:.65rem .75rem;text-transform:none;letter-spacing:0}
#area input[readonly]{opacity:.7}
#area input:focus-visible,#area textarea:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.acts{display:flex;flex-wrap:wrap;gap:.6rem}
#area button.btn{border:0;cursor:pointer;font:inherit;font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.9rem;justify-self:start}
#area button.btn.line{border:1px solid var(--gold)}
.schede{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.schede:empty{display:none}
.schede li{border:1px solid var(--line);border-radius:4px;padding:.8rem .9rem;display:grid;gap:.35rem;background:var(--night)}
.schede .tt{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline}
.schede .tt b{font-size:1.1rem}
.schede .st{color:var(--gold);letter-spacing:.05em;white-space:nowrap}
.schede .det{color:var(--muted);font-size:.9rem}
.schede .ma{justify-self:start;font:inherit;font-size:.85rem;color:var(--gold);background:none;border:1px solid var(--gold);border-radius:999px;padding:.3rem .8rem;cursor:pointer}
.schede .ma[disabled]{opacity:.7;cursor:default;border-style:dashed}
.brano{display:grid;gap:.8rem}
.canc{border-top:1px solid var(--line);padding-top:.8rem;font-size:.92rem;color:var(--muted)}
.canc button{font:inherit;font-size:.9rem;background:none;border:0;color:#f08a8a;text-decoration:underline;cursor:pointer;padding:0}
.canc p{margin-top:.5rem}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:80;background:var(--gold);color:var(--night);font-family:var(--f-d);letter-spacing:.04em;padding:.7rem 1.1rem;border-radius:4px;box-shadow:0 8px 24px rgba(0,0,0,.4);max-width:calc(100% - 32px);text-align:center}
/* aggiunte del sito vero */
#iscr .pv a,#acc a{color:var(--gold)}
#acc .ok-msg{color:var(--gold);font-size:.95rem}
.voce .corpo .acts{align-items:center}
.lez .mini{font-family:var(--f-d);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--chalk);background:var(--wine);text-decoration:none;padding:.45rem .7rem;border-radius:2px;white-space:nowrap}
.lez .mini.alt{background:none;border:1px solid var(--line);color:var(--muted)}
.lez .lock{width:18px;height:18px;color:var(--muted)}
.quad{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.quad>li{border:1px solid var(--line);border-radius:4px;padding:.8rem .9rem;display:grid;gap:.5rem;background:var(--night)}
.quad .tt{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline;flex-wrap:wrap}
.quad .tt b{font-size:1.08rem}
.quad .tt time{color:var(--muted);font-size:.85rem}
.quad .vino{display:flex;justify-content:space-between;gap:.6rem;align-items:center;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:.5rem}
.quad .vino span{font-size:.98rem}
.quad .vino small{display:block;color:var(--muted);font-size:.85rem}
.pill{font:inherit;font-size:.85rem;color:var(--gold);background:none;border:1px solid var(--gold);border-radius:999px;padding:.3rem .8rem;cursor:pointer;text-decoration:none;white-space:nowrap}
.pill[disabled]{opacity:.7;cursor:default;border-style:dashed}
.err{color:#f08a8a;font-size:.92rem}
.err:empty{display:none}
.mini-form{display:grid;gap:.8rem;border-top:1px solid var(--line);padding-top:.9rem}
#area input[type=password]{font:inherit;font-family:var(--f-t);font-size:16px;color:var(--chalk);background:var(--night);border:1px solid var(--line);border-radius:2px;padding:.65rem .75rem}
.carica{color:var(--muted);font-style:italic}
/* sezione del sito che presenta l'area riservata */
.angolo{padding-block:clamp(3.5rem,8vw,6rem)}
.angolo .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(1.5rem,5vw,4rem);align-items:start}
@media (max-width:820px){.angolo .wrap{grid-template-columns:minmax(0,1fr)}}
.angolo ul{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.angolo li{border-left:2px solid var(--gold);padding-left:1rem;color:var(--muted)}
.angolo li b{display:block;color:var(--chalk);font-family:var(--f-d);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:1.05rem;margin-bottom:.15rem}
.angolo .ctas{margin-top:1.6rem}
.angolo .moneta34{width:120px;height:120px;margin-top:1.4rem;filter:drop-shadow(0 10px 18px rgba(0,0,0,.45))}

#iscr .nota-brano{margin:0 0 .2rem;padding:.7rem .9rem;border-left:3px solid var(--gold);background:var(--stone);color:var(--chalk);font-size:.98rem;line-height:1.45}
#iscr .nota-brano button{background:none;border:0;color:var(--gold);font:inherit;text-decoration:underline;cursor:pointer;padding:0}
.pl .acts-pl{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;flex:1 1 100%}
.pl .battuta{flex-basis:100%;margin:.2rem 0 0;font-style:italic;color:var(--muted);font-size:.98rem}
.dash .conferma{border:1px solid var(--gold);border-left-width:3px;background:var(--stone);padding:.9rem 1rem;display:grid;gap:.5rem;justify-items:start;margin-bottom:.4rem}
.dash .conferma > b{font-family:var(--f-d);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gold)}
.dash .conferma p{margin:0;color:var(--chalk);font-size:.98rem;line-height:1.5}
.borsa .in-attesa{color:#f0b46a !important;font-style:italic;font-size:.9rem !important}
.dash .conferma .m{color:var(--gold);word-break:break-all}
.consvino{margin-top:1.6rem;border:1px solid var(--line);padding:1.2rem 1.4rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.6rem}
.consvino p{flex:1 1 280px;margin:0;color:var(--muted)}
.consvino p b{color:var(--chalk);font-weight:500}
.mail-corso{flex-basis:100%;margin:.2rem 0 0;color:var(--muted);font-size:.95rem}
.mail-corso a{color:var(--gold)}
