
@font-face{font-family:"Agrandir";src:url("fonts/Agrandir-Regular.woff2") format("woff2");font-weight:400 600;unicode-range:U+0000-0026,U+0028-2018,U+201A-FFFF}
@font-face{font-family:"TT Firs Neue";src:url("fonts/TTFirsNeue-Black.ttf") format("truetype");font-weight:900}
:root{--blu:#0033A0;--bluc:#EAF0FC;--blub:#C3D2F3;--ink:#101B33;--ink2:#4A5873;--ink3:#6B7890;--sf:#F2F4F8;--ca:#fff;--bo:#E1E6EF;--ri:#EEF1F6;--all:#A8470F;--allc:#FCEBDD;--ve:#1B7F4B;--vec:#E6F5EC;--am:#9A6400;--amc:#FFF3D6;--vi:#5B3FA8;--vic:#F1ECFB;--om:0 1px 2px rgba(16,27,51,.05),0 8px 24px rgba(16,27,51,.06);--t:"Agrandir","Segoe UI",system-ui,sans-serif;--h:"TT Firs Neue","Segoe UI",system-ui,sans-serif}
*{box-sizing:border-box}html,body{margin:0;background:var(--sf);color:var(--ink);font:16px/1.45 var(--t);-webkit-text-size-adjust:100%}
button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--blu);outline-offset:2px}
a{color:var(--blu)}
[hidden]{display:none!important}
.solo-pc{display:none}
@media (min-width:960px){.solo-pc{display:block}}
/* impianto */
.app{display:flex;min-height:100vh}
nav.lato{display:none}
main{flex:1;min-width:0}
.pag{max-width:620px;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom))}
header.testa{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 14px}
header.testa img{height:24px;display:block}
.vedi{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink3);white-space:nowrap}
.vedi select{border:1px solid var(--bo);background:var(--ca);border-radius:10px;padding:6px 8px;font-size:14px;max-width:190px;color:var(--ink)}
.banda{font-size:12.5px;color:var(--ink2);background:var(--ca);border:1px dashed var(--blub);border-radius:12px;padding:8px 12px;margin-bottom:14px}
h1{font-family:var(--h);font-weight:900;font-size:27px;line-height:1.15;margin:0 0 4px;letter-spacing:-.01em}
.sub{color:var(--ink2);margin:0 0 16px;font-size:15px}
h2{font-size:16.5px;margin:0 0 2px}
.s{font-size:13.5px;color:var(--ink3);margin:0 0 10px}
.carta{background:var(--ca);border:1px solid var(--bo);border-radius:18px;box-shadow:var(--om);padding:16px;margin-bottom:14px}
.carta.blu{background:var(--bluc);border-color:var(--blub);box-shadow:none}
.riga{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--ri)}
.riga:first-of-type,.carta>h2+.s+.riga,.carta>.riga:first-child{border-top:0}
.riga .t{flex:1;min-width:0}.riga b{display:block;font-weight:600}.riga small{display:block;color:var(--ink3);font-size:13px}
.imp,.num{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.gr{font-family:var(--h);font-weight:900;font-size:38px;line-height:1.05;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.ico{flex:none;width:40px;height:40px;border-radius:12px;background:var(--bluc);color:var(--blu);display:grid;place-items:center}
.ico svg{width:20px;height:20px}
.chip{display:inline-block;font-size:12px;font-weight:600;border-radius:20px;padding:2px 9px;white-space:nowrap;vertical-align:middle}
.ok{background:var(--vec);color:var(--ve)}.att{background:var(--amc);color:var(--am)}.err{background:var(--allc);color:var(--all)}.nb{background:var(--bluc);color:var(--blu)}.gri{background:var(--ri);color:var(--ink2)}
.prop{display:inline-block;font-size:11.5px;font-weight:600;color:var(--vi);background:var(--vic);border:1px dashed #B9A6E6;border-radius:20px;padding:1px 8px;white-space:nowrap;vertical-align:middle}
.propbox{border:1px dashed #B9A6E6;background:#FBF9FE;border-radius:14px;padding:10px 12px;font-size:14px;color:var(--ink2);margin:10px 0}
.avviso{background:var(--bluc);border:1px solid var(--blub);border-radius:14px;padding:12px 14px;font-size:14px;margin-bottom:14px}
.avviso.am{background:var(--amc);border-color:#F1D79B}
/* bottoni */
.pri{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;border:0;border-radius:16px;background:var(--blu);color:#fff;font-size:17px;font-weight:600;box-shadow:0 8px 24px rgba(0,51,160,.2);padding:10px 16px;text-align:center}
.pri.gr2{min-height:84px;font-size:19px;border-radius:20px}
.pri svg,.sec svg{width:22px;height:22px;flex:none}.pri.gr2 svg{width:28px;height:28px}
.pri:active{transform:scale(.99)}.pri[disabled]{opacity:.45;cursor:default;box-shadow:none}
.sec{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid var(--bo);border-radius:13px;background:var(--ca);font-weight:600;font-size:15px;color:var(--blu);padding:8px 14px}
.sec.pic{min-height:38px;font-size:14px;padding:6px 12px;border-radius:11px}
.lnk{border:0;background:none;color:var(--blu);font-weight:600;padding:6px 2px;font-size:14px}
.fila{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.fila>*{flex:1}
.vicino{display:flex;gap:8px;flex-wrap:wrap}
/* barre */
.barra{height:10px;border-radius:10px;background:var(--ri);overflow:hidden;margin:8px 0 4px}.barra i{display:block;height:100%;background:var(--blu);border-radius:10px}
.barra.ve i{background:var(--ve)}
/* moduli */
label.l{display:block;font-weight:600;font-size:14px;margin:12px 0 5px}
.in{display:block;width:100%;font-size:17px;padding:11px 12px;border:1px solid var(--bo);border-radius:12px;background:var(--ca)}
textarea.in{resize:vertical}
.seg{display:flex;gap:6px;flex-wrap:wrap}.seg button{flex:1;min-height:44px;border:1px solid var(--bo);background:var(--ca);border-radius:12px;font-weight:600;font-size:14.5px;padding:6px 10px}
.seg button[aria-pressed=true]{background:var(--bluc);border-color:var(--blu);color:var(--blu)}
/* schede a tab */
.tabs{display:flex;gap:6px;margin:0 0 14px;overflow-x:auto}.tabs button{border:1px solid var(--bo);background:var(--ca);border-radius:20px;padding:7px 14px;font-weight:600;font-size:14px;white-space:nowrap}
.tabs button[aria-selected=true]{background:var(--blu);border-color:var(--blu);color:#fff}
/* presenze */
.gio{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--ri)}
.gio:first-child{border-top:0}
.gio .d{flex:none;width:46px;text-align:center;line-height:1.1}.gio .d b{display:block;font-size:19px;font-variant-numeric:tabular-nums}.gio .d small{font-size:12px;color:var(--ink3);text-transform:capitalize}
.gio .t{flex:1;min-width:0}.gio .t b{font-weight:600;display:block}.gio .t small{display:block;color:var(--ink3);font-size:13px}
.gio.fermo{opacity:.55}
.conf{min-height:40px;border:0;border-radius:12px;background:var(--blu);color:#fff;font-weight:600;padding:6px 14px;font-size:14.5px}
.spunta{flex:none;width:30px;height:30px;border-radius:50%;background:var(--vec);color:var(--ve);display:grid;place-items:center}.spunta svg{width:18px;height:18px}
/* calendario */
.cal{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:8px}
.cal .h{font-size:11.5px;color:var(--ink3);text-align:center;font-weight:600;text-transform:uppercase}
.cal .c{min-height:54px;border:1px solid var(--ri);border-radius:10px;padding:4px;font-size:11.5px;background:var(--ca)}
.cal .c.fest{background:var(--ri);color:var(--ink3)}.cal .c.vuota{border:0;background:none}
.cal .c b{display:block;font-size:12.5px;font-variant-numeric:tabular-nums}
.cal .c span{display:block;border-radius:6px;padding:0 3px;margin-top:2px;background:var(--bluc);color:var(--blu);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal .c span.tu{background:var(--blu);color:#fff}
.cal.piano .c{position:relative;min-height:74px;text-align:left;font:inherit;display:flex;flex-direction:column;gap:1px;cursor:pointer;transition:transform .12s}
.cal.piano button.c:hover:not([disabled]){transform:translateY(-2px);border-color:var(--blu)}
.cal.piano button.c[disabled]{cursor:default}
.cal.piano .c small{font-size:10.5px;color:var(--ink2);line-height:1.15}
.pe{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif}
.cal.piano .c .pe{font-size:20px;line-height:1.1;background:none;padding:0;margin:0;color:inherit}
.c.p-casa{background:#E3EDFF;border-color:#C3D2F3}.c.p-ferie-pian{background:#FFF6B3;border-color:#EBD96A;border-style:dashed}.c.p-ferie-att{background:#FFF6B3;border-color:#EBD96A}.c.p-ferie-ok{background:#DDF5E7;border-color:#B5E3C8}.c.p-via{background:#FFE6D6;border-color:#F3C6A8}
table.sq td{white-space:nowrap}table.sq td.sq-casa{background:#F1F5FF}table.sq td.sq-via{background:#FFF1E8;color:var(--all)}table.sq td.we{color:var(--ink3)}
/* chat */
.msg{max-width:88%;padding:10px 14px;border-radius:16px;margin:8px 0;font-size:15px}
.msg.io{margin-left:auto;background:var(--blu);color:#fff;border-bottom-right-radius:6px}
.msg.lei{background:var(--ca);border:1px solid var(--bo);border-bottom-left-radius:6px}
.msg.lei p{margin:0 0 6px}.msg.lei p:last-child{margin:0}.msg.lei ul{margin:4px 0 6px;padding-left:18px}
.domande{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.domande button{border:1px solid var(--blub);background:var(--bluc);color:var(--blu);border-radius:20px;padding:7px 12px;font-weight:600;font-size:14px;text-align:left}
/* tabella studio */
.scorre{overflow-x:auto;margin:0 -4px;padding:0 4px}
table.st{border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}
table.st th,table.st td{border:1px solid var(--bo);padding:3px 5px;text-align:center;white-space:nowrap}
table.st th{background:var(--sf);font-weight:600}
table.st td.n{text-align:left;font-weight:600}
table.st td.we{background:var(--ri)}
table.st td.cod{color:var(--all);font-weight:600}
table.pr{width:100%;border-collapse:collapse;font-size:14.5px;font-variant-numeric:tabular-nums}
table.pr th{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink3);font-weight:600;text-align:left;padding:6px 8px;border-bottom:1px solid var(--bo)}
table.pr td{padding:8px;border-bottom:1px solid var(--ri);vertical-align:middle}
table.pr tr.clic{cursor:pointer}table.pr tr.clic:hover td{background:var(--sf)}
table.pr tr.fermo td{color:var(--ink3);background:#FAFBFC}
table.pr td.n{font-weight:600;white-space:nowrap}
/* gioco: eroe, tessere, pallini, coriandoli */
.azz{background:#E3EDFF}.men{background:#DDF5E7}.gia{background:#FFF6B3}.pes{background:#FFE6D6}.lil{background:#ECE6FB}.ros{background:#FFE3EC}
.eroe{border-radius:26px;padding:22px;margin-bottom:16px;background:linear-gradient(120deg,#E3EDFF 0%,#F3EEFF 55%,#FFF7C2 100%);display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.eroe .etxt{flex:1;min-width:240px}.eroe h1{margin:0 0 6px}.eroe p{margin:0 0 14px;color:var(--ink2);font-size:16px;max-width:560px}
.emo{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;font-weight:400}
.pill{border:0;border-radius:40px;background:var(--blu);color:#fff;font-weight:600;font-size:16px;padding:12px 20px;min-height:48px;box-shadow:0 6px 18px rgba(0,51,160,.22);transition:transform .15s}
.pill:hover{transform:translateY(-1px) scale(1.02)}.pill:active{transform:scale(.97)}
.pill.chiaro{background:#fff;color:var(--blu);box-shadow:0 1px 2px rgba(16,27,51,.08)}
.sett{display:flex;gap:8px}
.pal{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:var(--ink3);font-size:12px;font-weight:600;text-transform:capitalize}
.pal span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:19px;font-weight:700;background:#fff;color:var(--ink3);border:2px dashed var(--blub)}
.pal.fatto span{background:var(--ve);color:#fff;border:2px solid var(--ve)}
.pal.manca span{animation:pulsa 1.6s ease-in-out infinite;color:var(--blu);border-color:var(--blu)}
@keyframes pulsa{50%{transform:scale(1.1);box-shadow:0 0 0 8px rgba(0,51,160,.08)}}
.tessere{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
.tess{position:relative;display:flex;flex-direction:column;gap:2px;border-radius:22px;padding:16px;text-decoration:none;color:var(--ink);min-height:150px;transition:transform .18s,box-shadow .18s}
.tess:hover{transform:translateY(-4px) rotate(-.6deg);box-shadow:0 14px 30px rgba(16,27,51,.12)}
.tess:hover .temo{transform:scale(1.2) rotate(8deg)}
.temo{font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;font-size:34px;line-height:1;display:inline-block;transition:transform .2s;margin-bottom:8px}
.ttit{font-weight:600;font-size:14.5px;color:var(--ink2)}
.tgr{font-family:var(--h);font-weight:900;font-size:27px;line-height:1.1;font-variant-numeric:tabular-nums}
.tpic{font-size:13.5px;color:var(--ink2);margin-top:auto}
.anello{--p:50;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--blu) calc(var(--p)*1%),rgba(255,255,255,.9) 0);position:relative;flex:none;margin:2px 0 6px}
.anello::before{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}
.anello b{position:relative;font-family:var(--h);font-weight:900;font-size:16px}
.anello.grande{width:132px;height:132px}.anello.grande::before{inset:15px}.anello.grande b{font-size:30px}
.due{display:grid;grid-template-columns:1fr;gap:0}
a.carta{display:block;text-decoration:none;color:inherit;transition:transform .18s}a.carta:hover{transform:translateY(-3px)}
.sfida{display:flex!important;gap:14px;align-items:flex-start}.sfida .temo{font-size:40px}.sfida>div{flex:1}
.barra.alta{height:16px;border-radius:16px}.barra.alta i{border-radius:16px;background:linear-gradient(90deg,#0033A0,#4DA3FF)}
.bolle{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.bolla{background:var(--ca);border:1px solid var(--bo);border-radius:30px;padding:7px 14px;font-size:14px;text-decoration:none;color:var(--ink2)}
.bolla:hover{border-color:var(--blu);color:var(--blu)}
.medaglie{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.med{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:28px;font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;background:#fff;border-radius:18px;padding:8px 10px;min-width:74px;box-shadow:0 1px 2px rgba(16,27,51,.06)}
.med small{font-family:var(--t);font-size:11.5px;color:var(--ink2);font-weight:600}
.med.spenta{filter:grayscale(1);opacity:.5}
.cor{position:fixed;top:-12px;width:10px;height:14px;z-index:20;pointer-events:none;animation:cade 1.6s cubic-bezier(.2,.6,.4,1) forwards}
@keyframes cade{to{transform:translate(var(--dx),105vh) rotate(var(--r));opacity:.9}}
h1 .emo{font-size:.85em}
@media (prefers-reduced-motion: reduce){.pal.manca span{animation:none}.tess,.temo,.pill,a.carta{transition:none}}
.eroe-p{padding:20px 22px}.eroe-p .etxt p{margin:0}.eroe-p h1{margin-bottom:4px}
.temo.grande{font-size:56px;margin:0}
.t-azz{background:linear-gradient(120deg,#E3EDFF,#F4F8FF)}.t-men{background:linear-gradient(120deg,#DDF5E7,#F3FBF6)}.t-gia{background:linear-gradient(120deg,#FFF6B3,#FFFCE3)}.t-pes{background:linear-gradient(120deg,#FFE6D6,#FFF6EF)}.t-lil{background:linear-gradient(120deg,#ECE6FB,#F8F5FE)}.t-ros{background:linear-gradient(120deg,#FFE3EC,#FFF5F8)}
.carta.piena{border:0;box-shadow:none}
.strada-t{display:flex;gap:0;margin-top:14px;overflow-x:auto;padding-bottom:4px}
.tappa{flex:1;min-width:110px;text-align:center;position:relative;padding:0 6px}
.tappa::before{content:"";position:absolute;top:27px;left:-50%;width:100%;height:6px;background:var(--ri);border-radius:6px}
.tappa:first-child::before{display:none}.tappa.fatta::before{background:var(--ve)}.tappa.prossima::before{background:linear-gradient(90deg,var(--ve),var(--blub))}
.nodo{position:relative;display:grid;place-items:center;width:60px;height:60px;margin:0 auto 8px;border-radius:50%;background:var(--ri);font-size:28px;font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;filter:grayscale(1);opacity:.6}
.tappa.fatta .nodo{background:var(--vec);filter:none;opacity:1;box-shadow:0 0 0 3px var(--ve)}
.tappa.prossima .nodo{background:#fff;filter:none;opacity:1;box-shadow:0 0 0 3px var(--blu);animation:pulsa 1.6s ease-in-out infinite}
.tappa b{display:block;font-size:14px;font-weight:600}.tappa small{display:block;font-size:12.5px;color:var(--ink3)}
.tessere .tess{background:#fff;border:1px solid var(--bo)}
.tessere .tess:nth-child(4n+1),.tessere .tess:nth-child(4n+4){background:var(--bluc);border-color:var(--blub)}
.tessere .tess .tgr{color:var(--blu)}
.tessere .tess.premio{background:#FFF6B3;border-color:#EBD96A}
.livelli,.personaggi{display:grid;gap:10px}
.liv[disabled]{opacity:.45;cursor:default}
.liv{display:block;width:100%;text-align:left;border:2px solid var(--bo);background:var(--ca);border-radius:18px;padding:14px 16px}
.liv[aria-pressed=true]{border-color:var(--blu);background:var(--bluc)}
.liv b{display:block;font-size:17px}.liv small{display:block;color:var(--ink2);font-size:14px;margin-top:2px}
.chiedi{display:flex;gap:8px;align-items:center;background:var(--ca);border:1px solid var(--bo);border-radius:40px;padding:6px 8px 6px 14px;margin-bottom:14px;box-shadow:var(--om)}
.chiedi .in{border:0;background:none;padding:8px 4px;font-size:15.5px;min-width:0;flex:1}.chiedi .in:focus{outline:none}.chiedi:focus-within{border-color:var(--blu)}
.chiedi .conf{border-radius:30px;flex:none}
.msgv{border:1px solid var(--blub);background:var(--bluc);border-radius:18px 18px 18px 6px;padding:14px 16px;max-width:640px}
.msgv .mitt{display:flex;gap:10px;align-items:center}.msgv .mitt small{color:var(--ink3);font-size:12.5px;margin-left:auto}
/* vuoto */
.vuoto{text-align:center;color:var(--ink2);padding:26px 10px}
.vuoto .ic{width:56px;height:56px;border-radius:18px;background:var(--bluc);color:var(--blu);display:grid;place-items:center;margin:0 auto 10px}.vuoto .ic svg{width:28px;height:28px}
.vuoto h2{color:var(--ink);font-size:18px;margin-bottom:6px}.vuoto p{margin:0 auto 14px;max-width:380px;font-size:15px}
.provavuoto{display:block;margin:22px auto 0;border:0;background:none;color:var(--ink3);font-size:13px;text-decoration:underline;padding:8px}
/* menu */
.gruppo{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink3);font-weight:600;margin:16px 0 6px}
.voce{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:none;padding:10px 4px;border-radius:12px;font-weight:600;color:var(--ink);text-decoration:none}
.voce .ico{width:36px;height:36px;border-radius:11px}.voce .ico svg{width:18px;height:18px}
.voce[aria-current=page]{background:var(--bluc);color:var(--blu)}
.voce small{display:block;font-weight:400;color:var(--ink3);font-size:12.5px}
nav.sotto{position:fixed;left:0;right:0;bottom:0;background:var(--ca);border-top:1px solid var(--bo);display:flex;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:4}
nav.sotto a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11.5px;font-weight:600;color:var(--ink3);text-decoration:none;padding:4px 2px;border-radius:10px;min-height:48px;justify-content:center}
nav.sotto a svg{width:22px;height:22px}
nav.sotto a[aria-current=page]{color:var(--blu)}
/* foglio e messaggio */
.velo{position:fixed;inset:0;background:rgba(16,27,51,.25);z-index:8;display:flex;align-items:flex-end;justify-content:center}
.foglio{background:var(--sf);width:100%;max-width:620px;max-height:92vh;overflow-y:auto;border-radius:22px 22px 0 0;padding:16px 16px calc(22px + env(safe-area-inset-bottom))}
.foglio .tf{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.foglio h1{font-size:22px}
.chiudi{flex:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--bo);background:var(--ca);font-size:18px;color:var(--ink2)}
.toast{z-index:10;position:fixed;left:50%;bottom:calc(80px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--ca);border:1px solid var(--bo);box-shadow:var(--om);border-radius:14px;padding:12px 16px;font-size:15px;max-width:calc(100vw - 32px);width:max-content;display:none}
.toast button{margin-left:12px;border:0;background:none;color:var(--blu);font-weight:700;padding:4px}
.foto{width:44px;height:44px;border-radius:10px;background:var(--ri);flex:none;display:grid;place-items:center;color:var(--ink3);font-size:11px;overflow:hidden}.foto img{width:100%;height:100%;object-fit:cover}
.griglia2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.box{border:1px solid var(--ri);border-radius:14px;padding:12px;background:var(--ca)}
.box small{display:block;color:var(--ink3);font-size:12.5px}
.box .gr{font-size:28px}
details>summary{cursor:pointer;color:var(--ink2);font-size:14px;font-weight:600;padding:4px 0}
ul.cr{list-style:none;padding:0;margin:6px 0}ul.cr li{display:flex;gap:10px;padding:7px 0;border-top:1px solid var(--ri);font-size:15px}ul.cr li:first-child{border-top:0}
ul.cr li .pt{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700}
.pt.si{background:var(--vec);color:var(--ve)}.pt.no{background:var(--ri);color:var(--ink3)}
.scala{display:flex;gap:6px}.scala button{flex:1;min-height:48px;border:1px solid var(--bo);border-radius:12px;background:var(--ca);font-weight:700;font-size:17px}
.scala button[aria-pressed=true]{background:var(--blu);color:#fff;border-color:var(--blu)}
@media (min-width:960px){
  nav.lato{display:block;flex:none;width:280px;background:var(--ca);border-right:1px solid var(--bo);padding:18px 14px 30px;position:sticky;top:0;height:100vh;overflow-y:auto}
  nav.lato img{height:24px;margin:4px 6px 4px}
  nav.sotto{display:none}
  nav.lato{width:260px}
  .pag{max-width:1200px;padding:22px 36px 48px}
  header.testa{justify-content:flex-end}
  header.testa img{display:none}
  h1{font-size:32px}
  /* sul PC le schede vanno su due colonne; titoli, bottoni principali e schede larghe occupano tutta la riga */
  #vista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;align-items:start}
  #vista>*{grid-column:1/-1;min-width:0}
  #vista>.carta,#vista>details.carta,#vista>.griglia2{grid-column:auto}
  #vista>.largo,#vista>.carta.largo{grid-column:1/-1}
  #vista>.pri{justify-self:start;width:auto;min-width:340px;max-width:520px}
  #vista>.provavuoto{justify-self:center}
  .solo-tel{display:none!important}
  .tessere .tess:nth-child(n){background:#fff;border-color:var(--bo)}
  .tessere .tess:nth-child(8n+1),.tessere .tess:nth-child(8n+3),.tessere .tess:nth-child(8n+6),.tessere .tess:nth-child(8n+8){background:var(--bluc);border-color:var(--blub)}
  .tessere .tess.premio:nth-child(n){background:#FFF6B3;border-color:#EBD96A}
  .livelli{grid-template-columns:repeat(3,1fr)}
  .personaggi{grid-template-columns:repeat(5,1fr)}
  .tessere{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
  .due{grid-template-columns:1fr 1fr;gap:0 20px}
  .eroe{padding:30px 34px}.eroe h1{font-size:36px}
  .eroe-p{padding:22px 30px}.eroe-p h1{font-size:32px}.temo.grande{font-size:68px}
  .pal span{width:52px;height:52px;font-size:22px}
  .foglio{max-width:640px}
  .toast{bottom:24px}
  .velo{align-items:center}.foglio{border-radius:22px}
}
/* schede dei gruppi: link che sembrano le schede delle pagine */
.tabs a{border:1px solid var(--bo);background:var(--ca);border-radius:20px;padding:7px 14px;font-weight:600;font-size:14px;white-space:nowrap;text-decoration:none;color:var(--ink)}
.tabs a[aria-selected=true]{background:var(--blu);border-color:var(--blu);color:#fff}
.tabs.schede{margin-top:-4px}
.voce small{display:block;font-weight:400;color:var(--ink3);font-size:12px;line-height:1.3;white-space:normal}
/* da telefono la testata delle pagine resta bassa: titolo ed emoji sulla stessa riga */
@media (max-width:959px){.eroe-p{padding:14px 16px;flex-wrap:nowrap;margin-bottom:12px}.eroe-p .etxt{min-width:0}.eroe-p h1{font-size:24px;margin:0}.eroe-p .etxt p{font-size:14.5px;margin-top:4px}.eroe-p .temo.grande{font-size:38px}}

/* 14/11 sera: più sobria. Icone lineari al posto delle emoji, testate a tinta unita, niente rotazioni */
.segno{flex:none;width:40px;height:40px;border-radius:12px;background:var(--bluc);color:var(--blu);display:inline-grid;place-items:center;margin-bottom:10px}
.segno svg{width:20px;height:20px}
.riga .segno,.chiedi .segno{margin:0;width:36px;height:36px;border-radius:11px}.riga .segno svg,.chiedi .segno svg{width:18px;height:18px}
.tessere .tess:nth-child(n) .segno{background:#fff;border:1px solid var(--blub)}
.tessere .tess.premio .segno{background:#fff;border-color:#EBD96A;color:#6B5A00}
.sfida .segno{width:48px;height:48px}.sfida .segno svg{width:24px;height:24px}
.eroe,.eroe-p,.t-azz,.t-men,.t-gia,.t-pes,.t-lil,.t-ros{background:#fff;border:1px solid var(--bo);box-shadow:0 1px 2px rgba(16,27,51,.04)}
.eroe{border-left:4px solid var(--blu)}
.tess:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,27,51,.08)}
.tess:hover .temo{transform:none}
.carta.piena.azz,.carta.piena.men,.carta.piena.gia,.carta.piena.pes,.carta.piena.lil,.carta.piena.ros{background:#fff;border:1px solid var(--bo);box-shadow:var(--om)}

/* ======== 15/11 · impaginazione A «cruscotto»: testata piccola, colonne decise, niente buchi ======== */
.testa-p{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin:0 0 14px}
.testa-p .tp{min-width:0;flex:1 1 320px}
.testa-p h1{font-size:24px;margin:0}
.testa-p .tp p{margin:4px 0 0;color:var(--ink2);font-size:14.5px;max-width:760px}
.testa-p .tabs{display:flex;gap:6px;overflow-x:auto;max-width:100%;padding-bottom:2px;margin:0}
.testa-p .tabs a{padding:6px 12px;font-size:13.5px}
.carta .ct{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.carta .ct h2{margin:0}.carta .ct .s{margin:2px 0 0}
.carta .ct .pri.pic,.carta .ct .sec.pic{width:auto;flex:none;min-height:40px;padding:8px 14px;font-size:14px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.carta .ct .pri.pic svg{width:18px;height:18px}
.carta.evid{border:2px solid var(--blu)}
/* righe che portano a una pagina */
a.riga.rl{text-decoration:none;color:var(--ink);border-radius:10px;margin:0 -6px;padding:10px 6px}
a.riga.rl:hover{background:var(--sf)}
.riga .v{font-family:var(--h);font-weight:900;font-size:17px;white-space:nowrap;font-variant-numeric:tabular-nums}
/* la settimana: cinque giorni affiancati */
.sett5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.gg{border:1px solid var(--bo);border-radius:12px;padding:9px 10px;background:var(--ca);text-align:left;font:inherit;color:var(--ink);display:flex;flex-direction:column;gap:3px;min-height:96px;min-width:0}
button.gg:not([disabled]):hover{border-color:var(--blu)}
.gg .gd{font-size:12.5px;color:var(--ink3)}.gg .gd b{font-size:17px;color:var(--ink);font-weight:600;margin-right:4px}
.gg .dv{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis}
.gg .or{font-size:12.5px;color:var(--ink3)}
.gg .chip{margin-top:auto;align-self:flex-start;font-size:11.5px}
.gg.ca{background:#F5F8FE;border-color:var(--blub)}.gg.fe{background:var(--amc);border-color:#F1DFAE}
.gg.fermo{background:var(--ri);color:var(--ink3)}.gg.oggi{outline:2px solid var(--blu);outline-offset:1px}
.premio-c{background:#FFF6B3!important;border-color:#EBD96A!important;text-decoration:none;color:var(--ink)}
a.carta.perc-c{text-decoration:none;color:var(--ink)}.perc-c .medaglie{margin-top:12px}
/* menu laterale: nome sotto il logo, Chiedi in fondo */
.chi-lato{font-size:13px;color:var(--ink3);margin:2px 6px 4px}
.voce.esci{margin-top:10px}
.chiedi-lato{display:none}
@media (max-width:959px){
  .sett5{grid-template-columns:repeat(5,minmax(58px,1fr));overflow-x:auto}
  .gg{min-height:84px;padding:8px}.gg .or{display:none}
  .carta .ct{flex-wrap:wrap}
}
@media (min-width:960px){
  #vista{display:block}
  .pag{max-width:1320px;padding:24px 32px 48px}
  header.testa{display:none}
  nav.lato{width:248px;padding:18px 12px 18px;display:flex!important;flex-direction:column}
  nav.lato .gruppo{margin:14px 6px 4px;font-size:11.5px}
  nav.lato .voce{padding:7px 6px;gap:10px;font-size:15px}
  nav.lato .voce .ico{width:32px;height:32px;border-radius:10px}
  .chiedi-lato{display:block;margin-top:auto;padding-top:14px}
  .chiedi-lato .in{font-size:14px;padding:9px 12px;border-radius:12px}
  .testa-p h1{font-size:28px}
  .carta{border-radius:14px;padding:16px 18px;margin-bottom:16px}
  .colonne{display:grid;gap:0 18px;align-items:start}
  .colonne.cA{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}
  .colonne.cU{grid-template-columns:repeat(2,minmax(0,1fr))}
  .colonne>div{min-width:0}
  #vista>.pri{width:auto;min-width:300px;max-width:460px;display:inline-flex}
}
.tre{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tre>.carta{margin:0}
@media (max-width:959px){.tre{grid-template-columns:1fr;gap:0}.tre>.carta{margin-bottom:14px}}
.barre{display:flex;align-items:flex-end;gap:6px;height:120px;margin:0 0 14px;padding-bottom:18px}
.barre .bc{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}
.barre .bc i{display:block;width:100%;max-width:34px;background:var(--blub);border-radius:6px 6px 2px 2px;min-height:4px}
.barre .bc.ora i{background:var(--blu)}
.barre .bc small{position:absolute;bottom:-18px;font-size:11px;color:var(--ink3)}
@media (min-width:960px){nav.lato img{align-self:flex-start;width:auto;height:22px}}
/* calendario: i colori dicono dove sei, il testo lo conferma; niente emoji */
.cal.piano .c .pe{display:none}
.cal.piano .c small{font-size:11.5px;margin-top:auto}
.cal.piano .c{min-height:62px}
.cal .c.fest{opacity:.8}
.leg{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:10px 0 0;font-size:12.5px;color:var(--ink3)}
.leg i{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:-8px;border:1px solid var(--bo);background:#fff}
.leg .l-ca{background:#E3EDFF;border-color:#C3D2F3}.leg .l-fa{background:#FFF6B3;border-color:#EBD96A}.leg .l-fo{background:#DDF5E7;border-color:#B5E3C8}
table.pr .conf{padding:4px 12px;min-height:30px;font-size:13px;background:var(--bluc);color:var(--blu);border:1px solid var(--blub)}
.testa-p.lunga{flex-direction:column;align-items:flex-start}.testa-p.lunga .tp{flex:none}
@media (max-width:959px){
  .sett5{grid-template-columns:1fr;gap:6px;overflow:visible}
  .gg{flex-direction:row;align-items:center;min-height:0;padding:9px 12px;gap:10px}
  .gg .gd{width:62px;flex:none}.gg .dv{flex:1}.gg .or{display:block}
  .gg .chip{margin:0}
}
@media (max-width:959px){.gg .dv{flex:none;overflow:visible;min-width:64px}.gg .or{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
/* vedi come: Francesco guarda l'area di un collega */
.vedi-come{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink3);margin:6px 6px 4px}
.vedi-come select{flex:1;min-width:0;border:1px solid var(--bo);background:var(--ca);border-radius:10px;padding:6px 8px;font-size:14px;color:var(--ink)}
.banda-come{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--bluc);border:1px solid var(--blub);border-left:4px solid var(--blu);border-radius:12px;padding:10px 14px;margin-bottom:14px;font-size:14.5px}
.banda-come>span{flex:1 1 280px}.banda-come .vedi-come{margin:0}
