:root{color-scheme:light;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--radius: 14px;--radius-sm: 9px;--font-body: "Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--font-display: "Bricolage Grotesque", var(--font-body);--bg: oklch(.975 .005 245);--surface: oklch(.998 .003 245);--surface-2: oklch(.955 .007 245);--border: oklch(.9 .01 245);--border-strong: oklch(.83 .014 245);--text: oklch(.3 .03 248);--text-muted: oklch(.52 .022 247);--primary: oklch(.56 .072 244);--primary-strong: oklch(.45 .072 246);--accent-strong: oklch(.58 .185 44);--accent: oklch(.66 .19 46);--on-solid: oklch(.99 .004 245);--danger: oklch(.55 .17 27);--success: oklch(.62 .14 150);--success-strong: oklch(.48 .13 152);--shadow: 0 1px 2px oklch(.4 .03 245 / .06), 0 6px 18px -8px oklch(.4 .05 245 / .18)}[data-theme=dark]{color-scheme:dark;--bg: oklch(.195 .018 248);--surface: oklch(.245 .021 248);--surface-2: oklch(.29 .024 248);--border: oklch(.36 .02 248);--border-strong: oklch(.44 .022 248);--text: oklch(.94 .012 245);--text-muted: oklch(.74 .018 245);--primary: oklch(.72 .082 244);--primary-strong: oklch(.8 .08 244);--accent-strong: oklch(.68 .185 48);--accent: oklch(.72 .18 52);--on-solid: oklch(.16 .015 248);--danger: oklch(.7 .15 27);--success: oklch(.74 .15 152);--success-strong: oklch(.82 .14 152);--shadow: 0 1px 2px oklch(0 0 0 / .3), 0 8px 22px -10px oklch(0 0 0 / .55)}*{box-sizing:border-box;margin:0}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.5;letter-spacing:-.006em;-webkit-font-smoothing:antialiased;min-height:100dvh}button{font-family:inherit}.wordmark{display:flex;align-items:baseline;gap:7px}.wordmark .mark{font-family:var(--font-display);font-weight:800;font-size:1.3rem;letter-spacing:-.03em}.wordmark .mark b{color:var(--primary)}.wordmark .suite{font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted)}.icon-btn{inline-size:38px;block-size:38px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-size:1.05rem;transition:border-color .2s,transform .2s}.icon-btn:hover{border-color:var(--primary);transform:translateY(-1px)}.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:var(--sp-5)}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--sp-6)}.login-card h1{font-family:var(--font-display);font-weight:700;font-size:1.6rem;letter-spacing:-.02em;margin-top:var(--sp-5)}.login-card .sub{color:var(--text-muted);font-size:.9rem;margin-top:var(--sp-2);margin-bottom:var(--sp-5)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.field label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.field input{font-family:inherit;font-size:.95rem;padding:11px 13px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.field input:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}a.btn-primary{display:inline-block;text-align:center;text-decoration:none}.btn-primary{width:100%;cursor:pointer;font-weight:700;font-size:.95rem;padding:12px;border-radius:var(--radius-sm);border:0;background:var(--accent-strong);color:var(--on-solid);transition:background .2s,transform .15s}.btn-primary:hover:not(:disabled){background:var(--accent)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{opacity:.6;cursor:default}.error{color:var(--danger);font-size:.85rem;margin-bottom:var(--sp-3)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border)}.topbar .right{display:flex;align-items:center;gap:var(--sp-3)}.btn-ghost{cursor:pointer;font-weight:600;font-size:.88rem;padding:9px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);transition:border-color .2s,color .2s}.btn-ghost:hover{border-color:var(--primary);color:var(--text)}.empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-7) var(--sp-5);text-align:center}.empty .glyph{font-size:1.8rem;color:var(--primary)}.empty h2{font-family:var(--font-display);font-weight:700;font-size:1.1rem;margin:var(--sp-3) 0 var(--sp-2)}.empty p{color:var(--text-muted);font-size:.9rem;max-width:42ch;margin:0 auto}.centered-loading{min-height:100dvh;display:grid;place-items:center;color:var(--text-muted)}.brand-nav{display:flex;align-items:center;gap:var(--sp-6)}.nav{display:flex;gap:var(--sp-4)}.nav a{font-size:.9rem;font-weight:600;color:var(--text-muted);text-decoration:none;padding:4px 2px;border-bottom:2px solid transparent}.nav a:hover{color:var(--text)}.nav a.active{color:var(--text);border-bottom-color:var(--primary)}.page{max-width:960px;margin:0 auto;padding:var(--sp-6) var(--sp-5)}.stack{display:flex;flex-direction:column;gap:var(--sp-5)}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--sp-3)}.page-head h1{overflow-wrap:anywhere;font-family:var(--font-display);font-weight:700;font-size:1.7rem;letter-spacing:-.02em}.ev-head-right{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-2)}.page-head h2{font-family:var(--font-display);font-weight:700;font-size:1.15rem}.muted{color:var(--text-muted);font-size:.9rem}.btn-sm{width:auto;font-size:.85rem;padding:8px 14px;text-decoration:none;display:inline-block}.btn-link{background:none;border:0;padding:2px 0;cursor:pointer;color:var(--primary);font-weight:600;font-size:.85rem}.btn-link.danger{color:var(--danger)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-5);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.field--full{grid-column:1 / -1}.field select,.field textarea{font-family:inherit;font-size:.95rem;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center}.actions .btn-primary,.actions .btn-ghost{width:auto}.confirm-inline{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.confirm-inline .danger{color:var(--accent-strong);border-color:color-mix(in oklab,var(--accent) 42%,transparent)}.tabs{display:flex;gap:var(--sp-2);border-bottom:1px solid var(--border)}.tab{display:inline-flex;align-items:center;gap:6px;background:none;border:none;width:auto;padding:var(--sp-2) var(--sp-3);margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.9rem;font-weight:600;cursor:pointer}.tab:hover{color:var(--text)}.tab--on{color:var(--text);border-bottom-color:var(--primary)}.tab-count{font-size:.72rem;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-muted)}.tab--on .tab-count{background:color-mix(in oklab,var(--primary) 18%,transparent);color:var(--primary-strong)}.tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.ev-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-4)}.ev-mese{font-family:var(--font-display);font-size:1.05rem;text-transform:capitalize}.ev-card{display:block;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-4);box-shadow:var(--shadow);transition:border-color .18s,transform .18s}.ev-card:hover{border-color:var(--primary);transform:translateY(-2px)}.ev-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-3)}.ev-card h3{font-family:var(--font-display);font-weight:700;font-size:1.05rem;line-height:1.25}.ev-meta{margin-top:var(--sp-2);font-size:.82rem;font-weight:600;color:var(--text)}.ev-completo{display:inline-block;margin-top:var(--sp-3)}.chip{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-muted)}.badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;border:1px solid transparent}.badge--bozza{background:var(--surface-2);color:var(--text-muted);border-color:var(--border-strong)}.badge--pubblicato{background:color-mix(in oklab,var(--primary) 18%,transparent);color:var(--primary-strong);border-color:color-mix(in oklab,var(--primary) 40%,transparent)}.badge--chiuso{background:transparent;color:var(--text-muted);border-color:var(--border)}.badge--fragile{background:color-mix(in oklab,var(--accent) 16%,transparent);color:var(--accent-strong);border-color:color-mix(in oklab,var(--accent) 42%,transparent)}.badge--confermato{background:color-mix(in oklab,var(--success) 18%,transparent);color:var(--success-strong);border-color:color-mix(in oklab,var(--success) 44%,transparent)}.sess-card{padding:var(--sp-4)}.sess-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-4)}.sess-dettagli{margin:calc(-1 * var(--sp-2)) 0 var(--sp-4)}.slots{margin-top:var(--sp-4);border-top:1px dashed var(--border);padding-top:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.slots-head{display:flex;justify-content:space-between;align-items:center}.slot-row{display:grid;grid-template-columns:130px 1fr 1fr 90px 32px;gap:var(--sp-2);align-items:center}.assign-row{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--border)}.assign-row select,.assign-row input{flex:1 1 130px}.assign-row .assign-contratto{flex:1 1 180px}.assign-row .btn-primary{flex:0 0 auto}.slot-row select,.slot-row input,.assign-row select,.assign-row input{font-family:inherit;font-size:.85rem;padding:8px 10px;min-inline-size:0;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.slot-row select:focus-visible,.slot-row input:focus-visible,.assign-row select:focus-visible,.assign-row input:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.info-squadra h2{margin-bottom:var(--sp-2)}.info-squadra p{white-space:pre-wrap;overflow-wrap:anywhere}.sess-logistica{list-style:none;margin:0 0 var(--sp-4);padding:0;display:grid;gap:var(--sp-2);overflow-wrap:anywhere}.calendario-turni .actions{margin:var(--sp-3) 0}.calendario-turni a.btn-primary,.calendario-turni a.btn-ghost{text-decoration:none}.note-box{background:var(--surface-2);border-radius:var(--radius-sm);padding:var(--sp-3) var(--sp-4);font-size:.9rem;color:var(--text-muted)}.tuo-turno h2{margin-bottom:var(--sp-3)}.tuo-turno__lista{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-5)}.tuo-turno__dati{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--sp-3) var(--sp-5);margin:0 0 var(--sp-4)}.tuo-turno__dati dt{font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.tuo-turno__dati dd{margin:2px 0 0;font-weight:600}.tuo-turno a{color:var(--primary)}.tuo-turno__azioni{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.tuo-turno__ritiro{margin-top:var(--sp-4)}.tuo-turno__indirizzo{display:block;font-weight:400;overflow-wrap:anywhere}.tuo-turno__azioni a.btn-ghost{text-decoration:none}.scadenza,.push-invito{display:grid;gap:var(--sp-3);justify-items:start}.scadenza h2,.push-invito h2,.scadenza p,.push-invito p{margin:0}.prossimi a{color:var(--primary)}.prossimi h2{margin-bottom:var(--sp-3)}.prossimi__lista{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-3)}.prossimi__turno{display:grid;grid-template-columns:minmax(7.5rem,auto) 1fr auto;align-items:center;gap:var(--sp-2) var(--sp-4)}.prossimi__turno+.prossimi__turno{padding-top:var(--sp-3);border-top:1px solid var(--border)}.prossimi__quando{font-weight:700;font-variant-numeric:tabular-nums}.prossimi__cosa{display:grid;min-inline-size:0}.prossimi__evento{font-weight:600;overflow-wrap:anywhere}@media(max-width:520px){.prossimi__turno{grid-template-columns:1fr auto}.prossimi__quando{grid-column:1 / -1}}.disp-stato{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);margin:0 0 var(--sp-3)}.disp-stato p{margin:0}.wiki__testa{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.wiki__corpo{max-width:70ch;line-height:1.6;overflow-wrap:anywhere}.wiki__corpo :is(h1,h2,h3,h4){font-size:1.05rem;margin:var(--sp-4) 0 var(--sp-2)}.wiki__corpo :is(ul,ol){padding-inline-start:var(--sp-5)}.wiki a{color:var(--primary)}.wiki__corpo blockquote{margin:var(--sp-3) 0;padding:var(--sp-2) var(--sp-4);border-inline-start:3px solid var(--accent);background:var(--surface-2)}.wiki__corpo table{display:block;overflow-x:auto;border-collapse:collapse}.wiki__corpo :is(th,td){border:1px solid var(--border);padding:4px var(--sp-2);text-align:start}.wiki__piede{font-size:.85rem;margin-top:var(--sp-4)}.ev-wiki{display:inline-block;margin-top:var(--sp-3);margin-inline-end:var(--sp-2)}.slot-list{list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-2)}.slot-chip{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.dot{inline-size:8px;block-size:8px;border-radius:999px}.dot--autonomo{background:var(--primary)}.dot--supporto{background:var(--accent-strong)}.matching{display:flex;flex-direction:column;gap:var(--sp-3)}.matching-actions{display:flex;gap:var(--sp-2)}.matching-preview{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.matching-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2);font-size:.88rem}.matching-scoperto{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.matching-vie{margin-inline-start:var(--sp-4);font-size:.82rem}.team{display:flex;flex-direction:column;gap:var(--sp-3)}.team-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);font-size:.8rem}.team-fragile{color:var(--accent-strong);font-weight:600}.team-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2)}.team-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-top:1px dashed var(--border)}.team-row:first-child{border-top:none}.team-assign,.team-assigned{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.team-assign select{font-family:inherit;font-size:.85rem;padding:6px 10px;min-inline-size:0;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.team-assign select:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.team-nome{font-size:.88rem;font-weight:600}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.slot-row{grid-template-columns:1fr 1fr}.nav{gap:var(--sp-3)}}.managed-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-3)}.badge-line{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-top:var(--sp-2)}.hint{font-size:.8rem;max-width:28ch}.check{display:flex;align-items:center;gap:var(--sp-2);font-size:.9rem}.check input{inline-size:auto}.ok-note{color:var(--primary-strong);font-size:.85rem;font-weight:600}.comp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.comp-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.comp-row .btn-link.danger{margin-inline-start:auto}.operatori-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--sp-5);align-items:start}.distr-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2)}.distr-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-top:1px dashed var(--border);font-size:.88rem}.distr-row:first-child{border-top:none}.distr-nome{font-weight:600}.distr-sotto{color:var(--success-strong);font-weight:600}.distr-sopra{color:var(--text-muted)}@media(max-width:720px){.operatori-layout{grid-template-columns:minmax(0,1fr)}}.op-col{display:flex;flex-direction:column;gap:var(--sp-3)}.op-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.op-row{inline-size:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:start;color:inherit;font:inherit}.op-row:hover{border-color:var(--border-strong)}.op-row.is-selected{border-color:var(--primary);background:color-mix(in oklab,var(--primary) 8%,var(--surface));color:var(--text)}.btn-primary:focus-visible,.btn-ghost:focus-visible,.btn-link:focus-visible,.icon-btn:focus-visible,.op-row:focus-visible,.nav a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.check input[type=checkbox]{inline-size:16px;block-size:16px;accent-color:var(--primary)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.ev-card:hover,.icon-btn:hover{transform:none}}.copertura{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px dashed var(--border)}.head-actions{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.inline-filter{display:flex;align-items:center;gap:var(--sp-2)}.inline-filter select{font-family:inherit;font-size:.85rem;padding:6px 9px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text)}.inline-filter select:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.pool{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:var(--sp-2)}.pool-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.pool-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border-radius:var(--radius-sm);font-size:.9rem}.notifiche{position:relative}.notifiche-toggle{position:relative;display:inline-grid;place-items:center;padding:9px 11px;line-height:1}.notifiche-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;font-size:.7rem;font-weight:700;line-height:1;color:var(--on-solid);background:var(--danger);border-radius:999px}.notifiche-pop{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 2 * var(--sp-5)));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:50;overflow:hidden}.notifiche-pop__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border-bottom:1px solid var(--border)}.notifiche-pop__titolo{font-weight:700;font-size:.9rem}.notifiche-azioni{display:flex;gap:2px}.notifiche-azione{display:inline-grid;place-items:center;padding:6px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer;transition:transform .16s ease-out,color .16s ease,background-color .16s ease}.notifiche-azione:focus-visible{color:var(--text);background:var(--surface-2)}.notifiche-azione:active{transform:scale(.9)}.notifiche-azione:disabled{opacity:.35;cursor:default}@media(hover:hover)and (pointer:fine){.notifiche-azione:not(:disabled):hover{color:var(--text);background:var(--surface-2)}.notifiche-azione--danger:not(:disabled):hover{color:var(--danger)}}.notifiche-conferma{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border);background:var(--surface-2);font-size:.82rem}.notifiche-conferma .muted{flex:1;color:var(--text-muted)}.notifiche-pop__vuoto{margin:0;padding:var(--sp-5);text-align:center;color:var(--text-muted);font-size:.88rem}.notifiche-lista{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}.notifiche-riga{display:grid;grid-template-rows:1fr;transition:grid-template-rows .16s ease-out,opacity .16s ease-out}.notifiche-riga[data-uscente]{grid-template-rows:0fr;opacity:0}.notifiche-riga__inner{position:relative;overflow:hidden;min-height:0}.notifiche-item{width:100%;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:var(--sp-3) calc(var(--sp-4) + 20px) var(--sp-3) var(--sp-4);background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);font:inherit}.notifiche-lista li:last-child .notifiche-item{border-bottom:none}.notifiche-item:hover{background:var(--surface-2)}.notifiche-item--nuova{background:color-mix(in oklab,var(--primary) 8%,transparent)}.notifiche-item--nuova .notifiche-item__testo{font-weight:600}.notifiche-x{position:absolute;top:6px;right:6px;display:inline-grid;place-items:center;padding:4px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-muted);opacity:.5;cursor:pointer;transition:transform .16s ease-out,opacity .16s ease,color .16s ease,background-color .16s ease}.notifiche-x:focus-visible{opacity:1;color:var(--danger);background:var(--surface-2)}.notifiche-x:active{transform:scale(.9)}@media(hover:hover)and (pointer:fine){.notifiche-x:hover{opacity:1;color:var(--danger);background:var(--surface-2)}}@media(prefers-reduced-motion:reduce){.notifiche-riga{transition:opacity .16s ease-out}.notifiche-riga[data-uscente]{grid-template-rows:1fr}.notifiche-azione:active,.notifiche-x:active{transform:none}}.notifiche-item__testo{font-size:.88rem}.notifiche-item__tempo{font-size:.75rem;color:var(--text-muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.tabbar,.solo-mobile{display:none}@media(max-width:699px){.topbar .nav,.topbar .solo-desktop{display:none}.topbar{padding:var(--sp-3) var(--sp-4)}.page{padding:var(--sp-5) var(--sp-4);padding-bottom:calc(64px + env(safe-area-inset-bottom) + var(--sp-5))}.solo-mobile{display:block}.tabbar{position:fixed;inset:auto 0 0 0;z-index:40;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.tabbar a{display:grid;justify-items:center;align-content:center;gap:3px;min-height:56px;padding:6px 4px;text-decoration:none;color:var(--text-muted);font-size:.7rem;font-weight:600}.tabbar a.active{color:var(--primary);font-weight:800}.tabbar a:active{background:var(--surface-2)}.tabbar__glyph{font-size:1.15rem;line-height:1}}.movimenti{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-4);font-size:.85rem}.movimenti__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-3)}.movimenti__gruppo+.movimenti__gruppo{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--border)}.movimenti__evento{display:block;font-weight:700;color:var(--text);text-decoration:none;margin-bottom:4px}a.movimenti__evento:hover{text-decoration:underline}.movimenti__gruppo ul{list-style:none;margin:0;padding:0}.movimenti__riga{display:grid;grid-template-columns:14px auto 1fr auto;align-items:baseline;gap:var(--sp-2);padding:2px 0}.movimenti__segno{font-weight:800;text-align:center}.movimenti__riga--modificata .movimenti__segno{color:var(--text-muted)}.movimenti__riga--nuova .movimenti__segno{color:var(--primary)}.movimenti__chi{font-weight:600}.movimenti__cosa{color:var(--text-muted)}.movimenti__quando{color:var(--text-muted);font-size:.75rem;white-space:nowrap}.badge--neutro{background:var(--surface-2);color:var(--text-muted)}.ev-copertura{margin-inline-end:var(--sp-2)}.movimenti{max-height:45vh;overflow-y:auto}.movimenti__altre{margin:2px 0 0 22px;font-size:.78rem}.turni-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-2) var(--sp-3)}.turni-mese{min-inline-size:11rem}.turni-obiettivi{list-style:none;padding:0;display:grid;gap:var(--sp-1, 4px)}.turni-obiettivo{display:grid;grid-template-columns:minmax(0,1fr) minmax(6rem,10rem) 4.5rem;align-items:center;gap:var(--sp-3);padding-block:var(--sp-2);border-top:1px solid var(--border)}.turni-obiettivo:first-child{border-top:0}.turni-chi{display:grid;min-inline-size:0}.turni-chi label{font-weight:600}.turni-chi .muted{font-size:.8rem}.turni-numero{inline-size:100%;text-align:end}.turni-tabella{inline-size:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}.turni-tabella th,.turni-tabella td{text-align:start;padding:var(--sp-2) var(--sp-2);border-bottom:1px solid var(--border)}.turni-tabella th{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.turni-scoperti,.turni-proposte{display:grid;gap:var(--sp-2);padding-inline-start:var(--sp-4)}@media(max-width:699px){.turni-obiettivo{grid-template-columns:minmax(0,1fr) 4.5rem}.turni-obiettivo input[type=range]{grid-column:1 / -1;grid-row:2}.turni-anteprima{overflow-x:auto}}.scheda-totali{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:var(--sp-3);margin:0}.scheda-cifra{display:grid;gap:2px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-sm)}.scheda-cifra dt{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.scheda-cifra dd{margin:0;font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums}.scheda-cifra dd.scheda-mancanti{font-size:.78rem;font-weight:400;color:var(--text-muted)}.scheda-avviso{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3)}.scheda-viste .scheda-csv{margin-inline-start:auto}.scheda-scroll{overflow-x:auto}.scheda-tabella .num{text-align:end;white-space:nowrap}.scheda-manca{color:var(--text-muted);font-style:italic;font-size:.85em}.scheda-dettaglio td{background:var(--surface-2)}.scheda-dettaglio ul{list-style:none;padding:0;margin:0;display:grid;gap:var(--sp-1, 4px)}.scheda-giorno{display:inline-block;min-inline-size:7.5rem;font-variant-numeric:tabular-nums}.mio-mese-attivita-sotto{display:none}.mio-mese a{color:var(--primary)}@media(max-width:699px){.mio-mese,.mio-mese tbody,.mio-mese tfoot{display:block}.mio-mese thead,.mio-mese .mio-mese-attivita-col,.mio-mese .mio-mese-ore-col{display:none}.mio-mese tr{display:grid;grid-template-columns:1fr auto;align-items:start;gap:2px var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--border)}.mio-mese td{display:block;padding:0;border:0}.mio-mese td.scheda-giorno{grid-column:1 / -1;font-weight:600}.mio-mese-attivita-sotto{display:block;font-size:.85rem}.mio-mese tfoot tr{border-bottom:0;font-weight:700}}.stato-impegnato{color:var(--danger)}.stato-fuori{color:var(--text-muted)}.seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:var(--surface-2);border-radius:var(--radius);border:1px solid var(--border);max-width:320px}.seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;cursor:pointer;font-family:var(--font-body);font-weight:600;font-size:.92rem;color:var(--text-muted);padding:9px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:7px;transition:color .25s}.seg button .gi{font-size:1.05rem}.seg button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin:var(--sp-2) 0 var(--sp-3)}.cal-head .mon{font-family:var(--font-display);font-weight:700;font-size:1.2rem;letter-spacing:-.02em}.cal-head .hint{font-size:.76rem;color:var(--text-muted)}.cal-nav{display:flex;align-items:center;gap:var(--sp-2)}.cal-nav button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;border-radius:var(--radius-sm);padding:6px 10px;font-size:.88rem;font-weight:600;transition:border-color .2s,background .2s}.cal-nav button:hover{border-color:var(--primary)}.cal-legend{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);margin:0 0 var(--sp-4)}.cal-legend .lg{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;color:var(--text-muted);background:none;border:0;border-radius:6px;padding:3px 6px;cursor:pointer;font-family:inherit}.cal-legend .lg:hover{background:var(--surface-2)}.cal-legend .lg[data-spento=true]{opacity:.5;text-decoration:line-through}.cal-legend .lg[data-spento=true] .sw{background:var(--text-muted)}.cal-legend .sw{inline-size:11px;block-size:11px;border-radius:4px;background:oklch(.56 .13 var(--h))}[data-theme=dark] .cal-legend .sw{background:oklch(.64 .12 var(--h))}.cal-month{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);min-inline-size:0}.cal-dows{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--surface-2);border-bottom:1px solid var(--border)}.cal-dow{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);text-align:center;padding:7px 0}.cal-week{display:grid;grid-template-columns:1fr;min-block-size:64px;border-bottom:1px solid var(--border)}.cal-week:last-child{border-bottom:0}.cal-week>.cal-daynums,.cal-week>.cal-lanes{grid-area:1 / 1}.cal-daynums{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-dnum{padding:5px 0 0 7px;border-inline-start:1px solid var(--border);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:600;color:var(--text-muted)}.cal-dnum:first-child{border-inline-start:0}.cal-dnum.empty{background:color-mix(in oklch,var(--surface-2) 55%,transparent)}.cal-dnum.today .ddigit{background:var(--accent-strong);color:var(--on-solid);border-radius:999px;padding:1px 7px;display:inline-block}.ddigit--nuovo{background:none;border:0;padding:1px 7px;border-radius:999px;font:inherit;color:inherit;cursor:pointer}.ddigit--nuovo:hover{background:var(--accent-strong);color:var(--on-solid)}.cal-dnum .ddigit--nuovo:focus-visible{outline:2px solid var(--accent-strong);outline-offset:1px}.cal-lanes{margin-top:26px;padding-bottom:5px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:23px;row-gap:4px;pointer-events:none}.cal-bar{pointer-events:auto;align-self:stretch;margin:0 2px;--bar-bg: oklch(.945 .052 var(--h));--bar-fg: oklch(.38 .092 var(--h));--bar-solid: oklch(.47 .125 var(--h));--bar-on: oklch(.99 .012 var(--h));background:var(--bar-bg);color:var(--bar-fg);border:1px solid transparent;border-radius:7px;font-family:var(--font-body);font-weight:600;font-size:.72rem;line-height:1;display:flex;align-items:center;gap:5px;padding:0 7px;white-space:nowrap;overflow:hidden;cursor:pointer;min-inline-size:0;transition:filter .2s,transform .15s,box-shadow .2s}[data-theme=dark] .cal-bar{--bar-bg: oklch(.345 .062 var(--h));--bar-fg: oklch(.87 .06 var(--h));--bar-solid: oklch(.62 .12 var(--h));--bar-on: oklch(.16 .02 var(--h))}.cal-bar .lbl{flex:1;min-inline-size:0;overflow:hidden;text-overflow:ellipsis}.cal-bar .mk{flex:none;font-size:.76rem}.cal-bar:hover{filter:brightness(.97) saturate(1.05);transform:translateY(-1px);box-shadow:var(--shadow)}[data-theme=dark] .cal-bar:hover{filter:brightness(1.12)}.cal-bar:active{transform:translateY(0) scale(.99)}.cal-bar:focus-visible{outline:2px solid var(--bar-solid);outline-offset:1px}.cal-bar[data-st=conf]{background:var(--bar-solid);color:var(--bar-on)}.cal-bar[data-st=bozza]{border-color:var(--bar-solid);border-style:dashed}.cal-bar[data-st=none]{background:color-mix(in oklch,var(--bar-bg) 75%,transparent);color:color-mix(in oklch,var(--bar-fg) 85%,var(--text-muted))}.cal-bar[data-cap=start],.cal-bar[data-cap=mid]{border-top-right-radius:0;border-bottom-right-radius:0;margin-inline-end:0}.cal-bar[data-cap=end],.cal-bar[data-cap=mid]{border-top-left-radius:0;border-bottom-left-radius:0;margin-inline-start:0}.cal-bar .cont-l,.cal-bar .cont-r{opacity:.65;flex:none}.cal-bar .cont-r{margin-inline-start:auto}.cal-bar[aria-current=true]{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px var(--bar-solid)}.cal-more{pointer-events:auto;align-self:center;margin:0 4px;font-size:.68rem;font-weight:700;color:var(--text-muted);cursor:pointer}.cal-detail{margin-top:var(--sp-5)}.cal-evlist-head{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--text);margin:0 0 var(--sp-3)}.cal-evlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3)}.ev-card--selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in oklch,var(--primary) 35%,transparent)}.cal-empty{text-align:center;padding:var(--sp-7) var(--sp-4);color:var(--text-muted)}.cal-empty .glyph{font-size:1.8rem;opacity:.8}.cal-empty h3{font-family:var(--font-display);font-weight:700;color:var(--text);margin:var(--sp-3) 0 var(--sp-2);font-size:1.05rem}.cal-empty p{font-size:.9rem;max-width:30ch;margin:0 auto}@media(min-width:760px){.page:has(.cal-wide){max-width:none}.cal-body{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,24vw,420px);gap:clamp(24px,3vw,56px);align-items:start}.cal-week{min-block-size:104px}.cal-lanes{grid-auto-rows:26px;row-gap:5px}.cal-bar{font-size:.78rem}.cal-detail{margin-top:0;position:sticky;top:80px;max-block-size:calc(100vh - 100px);overflow-y:auto}}@media(prefers-reduced-motion:reduce){.cal-bar,.seg button{transition:none}}.disp-layout{display:grid;gap:var(--sp-5);align-items:start}.disp-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--border)}.disp-week:last-child{border-bottom:0}.disp-week>[role=gridcell]{border-inline-start:1px solid var(--border);min-inline-size:0}.disp-week>[role=gridcell]:first-child{border-inline-start:0}.disp-day{position:relative;display:block;inline-size:100%;min-block-size:52px;padding:5px 0 0 7px;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:.82rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:start;cursor:pointer}.disp-day--vuota{block-size:100%;background:color-mix(in oklch,var(--surface-2) 55%,transparent)}.disp-day:hover:not(:disabled){background:var(--surface-2)}.disp-day:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.disp-day--disponibile{background:color-mix(in oklch,var(--success) 18%,transparent);color:var(--success-strong)}.disp-day--disponibile:hover:not(:disabled){background:color-mix(in oklch,var(--success) 26%,transparent)}.disp-day--parziale{background:color-mix(in oklch,var(--success) 8%,transparent)}.disp-ora{display:block;margin-block-start:2px;font-size:.66rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.disp-day--impegnata{background:var(--surface-2);color:var(--text-muted)}.disp-day--scelto{box-shadow:inset 0 0 0 2px var(--primary)}.disp-day--chiuso{cursor:not-allowed;opacity:.55}.disp-day.today .ddigit{background:var(--accent-strong);color:var(--on-solid);border-radius:999px;padding:1px 7px;display:inline-block}.disp-alert{position:absolute;inset-block-end:5px;inset-inline-end:6px;inline-size:16px;block-size:16px;border-radius:999px;background:var(--accent-strong);color:var(--on-solid);font-size:.68rem;font-weight:800;line-height:16px;text-align:center}.disp-legend{margin-block-start:var(--sp-3)}.cal-legend .disp-sw--disponibile{background:color-mix(in srgb,var(--success) 45%,var(--surface))}.cal-legend .disp-sw--impegnata{background:var(--border-strong)}.cal-legend .disp-sw--chiuso{background:var(--surface-2);outline:1px dashed var(--border-strong)}.disp-right>.card{scroll-margin-block:var(--sp-4) calc(64px + env(safe-area-inset-bottom) + var(--sp-4))}.disp-list{list-style:none;padding:0;display:grid;gap:var(--sp-2)}.disp-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3)}.disp-item-actions{display:inline-flex;gap:var(--sp-3)}@media(min-width:760px){.disp-layout{grid-template-columns:minmax(0,1fr) clamp(300px,28vw,400px);gap:clamp(24px,3vw,48px)}.disp-day{min-block-size:72px}}.disp-pannello{display:grid;gap:var(--sp-3);scroll-margin-block:var(--sp-4) calc(64px + env(safe-area-inset-bottom) + var(--sp-4))}.disp-pannello-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.disp-pannello-head strong:first-letter{text-transform:uppercase}.disp-pannello .disp-item{padding-block:var(--sp-2);border-top:1px solid var(--border)}.disp-hint{margin-block-start:var(--sp-2);font-size:.82rem}.disp-toast-area{position:fixed;inset-inline:0;inset-block-end:calc(var(--sp-5) + env(safe-area-inset-bottom));display:flex;justify-content:center;pointer-events:none;z-index:50}.disp-toast{pointer-events:auto;display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-sm);background:var(--text);color:var(--bg);box-shadow:var(--shadow);font-size:.9rem}.disp-toast .btn-link{color:var(--bg);font-weight:700;text-decoration:underline}@media(max-width:699px){.disp-toast-area{inset-block-end:calc(64px + env(safe-area-inset-bottom) + var(--sp-3))}}.cal-sposta{display:flex;flex-direction:column;gap:var(--sp-3);margin-bottom:var(--sp-4)}.cal-conflitti ul{margin:var(--sp-2) 0 0;padding-inline-start:var(--sp-4);font-size:.82rem}.cal-bar[draggable=true]{cursor:grab}.cal-bar[draggable=true]:active{cursor:grabbing}@media(pointer:coarse){.btn-link,.btn-sm,.icon-btn,.tab,.cal-nav button,.cal-legend .lg,.notifiche-toggle,.notifiche-azione,.notifiche-x{min-block-size:44px;min-inline-size:44px}.btn-link{display:inline-flex;align-items:center}.notifiche-x{opacity:1}}
