:root{--color-bg: #f1f5f9;--color-surface: #ffffff;--color-surface-subtle: #f8fafc;--color-surface-card: #fcfdff;--color-border: #e2e8f0;--color-border-light: #dbe7f3;--color-border-input: #cbd5e1;--color-text: #0f172a;--color-text-muted: #475569;--color-text-subtle: #64748b;--color-brand: #0f766e;--color-brand-bg: #f0fdfa;--color-brand-border: #0f766e;--color-accent: #2563eb;--color-accent-bg: #eff6ff;--color-accent-light: #e0f2fe;--color-accent-dark: #0c4a6e;--color-danger: #dc2626;--color-danger-bg: #fef2f2;--color-danger-border: #fecaca;--color-danger-text: #991b1b;--color-success-text: #166534;--color-error-text: #b91c1c;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--radius-sm: 4px;--radius-md: 8px;--radius-full: 999px;--shadow-card: 0 2px 8px rgba(15, 23, 42, .08);--shadow-panel: 0 24px 70px rgba(15, 23, 42, .12);--shadow-drawer: -12px 0 40px rgba(15, 23, 42, .18);--topbar-height: 56px;--sidebar-width: 240px;--drawer-width: min(420px, 100%);--content-max-width: 1080px;--z-sidebar: 20;--z-topbar: 30;--z-drawer: 50;--stato-bozza-bg: #dbeafe;--stato-bozza-text: #1e40af;--stato-pubblicato-bg: #dcfce7;--stato-pubblicato-text: #166534;--stato-completo-bg: #ffedd5;--stato-completo-text: #9a3412;--stato-annullato-bg: #fee2e2;--stato-annullato-text: #7f1d1d;--stato-chiuso-bg: #e2e8f0;--stato-chiuso-text: #475569;--iscrizione-attiva-bg: #dcfce7;--iscrizione-attiva-text: #166534;--iscrizione-cancellata-bg: #e2e8f0;--iscrizione-cancellata-text: #475569;--iscrizione-annullata-bg: #fee2e2;--iscrizione-annullata-text: #991b1b}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh;background:var(--color-bg)}#app{min-height:100vh}.role-badge[data-v-fecc57ab]{display:inline-block;padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.role-badge[data-role=DOCENTE][data-v-fecc57ab]{background:var(--color-brand-bg);color:var(--color-brand)}.role-badge[data-role=STUDENTE][data-v-fecc57ab]{background:var(--color-accent-bg);color:var(--color-accent)}.role-badge[data-role=ADMIN][data-v-fecc57ab]{background:#f3e8ff;color:#6b21a8}.role-badge[data-role=CONFIGURATORE][data-v-fecc57ab],.role-badge[data-role=NON_AUTORIZZATO][data-v-fecc57ab]{background:var(--color-border);color:var(--color-text-subtle)}.switcher[data-v-a75d8713]{display:flex;align-items:center;gap:var(--space-2)}.switcher-label[data-v-a75d8713]{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--color-text-subtle)}.switcher-options[data-v-a75d8713]{display:inline-flex;gap:2px;padding:3px;background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md)}.switcher-option[data-v-a75d8713]{padding:.3rem .6rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap}.switcher-option[data-v-a75d8713]:hover{color:var(--color-text)}.switcher-option.is-active[data-v-a75d8713]{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--shadow-card)}@media(max-width:900px){.switcher-label[data-v-a75d8713]{display:none}}.topbar[data-v-e5d4e423]{position:sticky;top:0;z-index:var(--z-topbar);height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:0 var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.topbar-left[data-v-e5d4e423]{display:flex;align-items:center;gap:var(--space-3)}.brand-logo[data-v-e5d4e423]{height:34px;width:auto;flex-shrink:0;object-fit:contain}.brand[data-v-e5d4e423]{display:flex;align-items:baseline;gap:var(--space-2);font-weight:800;font-size:1.1rem;letter-spacing:.01em}.brand-name[data-v-e5d4e423]{color:#142e57}.brand-school[data-v-e5d4e423]{color:var(--color-brand)}.topbar-right[data-v-e5d4e423]{display:flex;align-items:center;gap:var(--space-3)}.identity[data-v-e5d4e423]{font-size:.9rem;font-weight:600;color:var(--color-text-muted);max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-button[data-v-e5d4e423]{display:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;padding:0 8px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer}.menu-button span[data-v-e5d4e423]{display:block;height:2px;border-radius:2px;background:var(--color-text)}@media(max-width:900px){.menu-button[data-v-e5d4e423]{display:flex}.identity[data-v-e5d4e423]{display:none}}.nav-icon[data-v-7b3d9d48]{flex-shrink:0}.calendar[data-v-4ef66273]{padding:var(--space-4)}.calendar-month[data-v-4ef66273]{margin:0 0 var(--space-3);font-weight:700;color:var(--color-text);text-align:center}.calendar-grid[data-v-4ef66273]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.weekday[data-v-4ef66273]{text-align:center;font-size:.7rem;font-weight:700;color:var(--color-text-subtle);padding-bottom:var(--space-2)}.day[data-v-4ef66273]{display:grid;place-items:center;aspect-ratio:1;font-size:.82rem;color:var(--color-text-muted);border-radius:var(--radius-sm)}.day.has-lesson[data-v-4ef66273]{background:var(--color-accent-bg);color:var(--color-accent);font-weight:700}.day.is-today[data-v-4ef66273]{background:var(--color-accent);color:#fff;font-weight:700}.sidebar[data-v-7ed73564]{width:var(--sidebar-width);flex-shrink:0;padding:var(--space-5) var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-5);min-height:0;overflow-y:auto}.nav[data-v-7ed73564]{display:grid;gap:var(--space-2)}.nav-section-label[data-v-7ed73564]{margin:var(--space-3) 0 var(--space-1) var(--space-2);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-subtle)}.nav-link[data-v-7ed73564]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-text-muted);text-decoration:none;font-weight:700}.nav-link[data-v-7ed73564]:hover{background:var(--color-surface-subtle);color:var(--color-text)}.nav-link.is-active[data-v-7ed73564]{background:var(--color-accent-bg);color:var(--color-accent)}.nav-label[data-v-7ed73564]{font-size:.98rem}.sidebar-calendar[data-v-7ed73564]{margin:0 calc(-1 * var(--space-4));border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.help-card[data-v-7ed73564]{margin-top:auto;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-brand-bg);border:1px solid var(--color-border-light)}.help-title[data-v-7ed73564]{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:.92rem;font-weight:800;color:var(--color-brand)}.help-text[data-v-7ed73564]{margin:var(--space-2) 0 var(--space-3);font-size:.82rem;color:var(--color-text-muted)}.help-link[data-v-7ed73564]{font-size:.85rem;font-weight:700;color:var(--color-accent);text-decoration:none}.help-link[data-v-7ed73564]:hover{text-decoration:underline}@media(max-width:900px){.sidebar[data-v-7ed73564]{position:fixed;top:var(--topbar-height);left:0;bottom:0;z-index:var(--z-sidebar);transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-panel);overflow-y:auto}.sidebar.is-open[data-v-7ed73564]{transform:translate(0)}}.drawer-root[data-v-794db58d]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-drawer);display:flex;justify-content:flex-end}.drawer-overlay[data-v-794db58d]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a59}.drawer-panel[data-v-794db58d]{position:relative;width:var(--drawer-width);height:100%;display:flex;flex-direction:column;background:var(--color-surface);box-shadow:var(--shadow-drawer);border-left:4px solid var(--color-brand)}.drawer-panel[data-variant=danger][data-v-794db58d]{border-left-color:var(--color-danger)}.drawer-head[data-v-794db58d]{display:flex;align-items:start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5);border-bottom:1px solid var(--color-border)}.drawer-eyebrow[data-v-794db58d]{margin:0;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-subtle)}.drawer-title[data-v-794db58d]{margin:.25rem 0 0;font-size:1.3rem;color:var(--color-text)}.drawer-close[data-v-794db58d]{border:0;background:transparent;font-size:1.6rem;line-height:1;color:var(--color-text-subtle);cursor:pointer}.drawer-body[data-v-794db58d]{padding:var(--space-5);overflow-y:auto}.drawer-enter-active[data-v-794db58d],.drawer-leave-active[data-v-794db58d]{transition:opacity .2s ease}.drawer-enter-active .drawer-panel[data-v-794db58d],.drawer-leave-active .drawer-panel[data-v-794db58d]{transition:transform .2s ease}.drawer-enter-from[data-v-794db58d],.drawer-leave-to[data-v-794db58d]{opacity:0}.drawer-enter-from .drawer-panel[data-v-794db58d],.drawer-leave-to .drawer-panel[data-v-794db58d]{transform:translate(100%)}.detail-grid[data-v-15f5b059]{margin:0 0 var(--space-4);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}dt[data-v-15f5b059]{font-size:.8rem;color:var(--color-text-subtle);margin:0}dd[data-v-15f5b059]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.hint[data-v-15f5b059]{color:var(--color-text-muted);line-height:1.6;margin:0 0 var(--space-4)}.argomento-field[data-v-15f5b059]{display:grid;gap:.4rem;margin:0 0 var(--space-4)}.argomento-field span[data-v-15f5b059]{font-size:.85rem;font-weight:700;color:var(--color-text-muted)}.argomento-field textarea[data-v-15f5b059],.argomento-field input[data-v-15f5b059]{width:100%;padding:.7rem .8rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:#fff;color:var(--color-text);resize:vertical}.argomento-field input[data-v-15f5b059]{text-transform:uppercase}.success[data-v-15f5b059]{color:var(--color-success-text);margin:0 0 var(--space-3)}.error[data-v-15f5b059]{color:var(--color-error-text);margin:0 0 var(--space-3)}.drawer-actions[data-v-15f5b059]{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-4)}.primary-button[data-v-15f5b059],.danger-button[data-v-15f5b059],.secondary-button[data-v-15f5b059]{padding:.7rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;white-space:nowrap}.primary-button[data-v-15f5b059]{border:0;background:var(--color-brand);color:#fff}.danger-button[data-v-15f5b059]{border:0;background:var(--color-danger);color:#fff}.secondary-button[data-v-15f5b059]{border:1px solid var(--color-border-input);background:var(--color-surface-subtle);color:var(--color-text)}.primary-button[data-v-15f5b059]:disabled,.danger-button[data-v-15f5b059]:disabled{opacity:.6}.dialog-root[data-v-15f5b059]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-drawer);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.dialog-overlay[data-v-15f5b059]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a59}.dialog-panel[data-v-15f5b059]{position:relative;width:min(28rem,100%);padding:var(--space-5, 1.5rem);border-radius:var(--radius-md);background:var(--color-surface-card);box-shadow:0 20px 50px #0f172a40}.dialog-title[data-v-15f5b059]{margin:0 0 var(--space-2);font-size:1.1rem}.dialog-subject[data-v-15f5b059]{margin:0 0 var(--space-3);font-weight:700;color:var(--color-text-muted)}.notice[data-v-15f5b059]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-drawer);max-width:min(24rem,calc(100vw - 2rem));padding:var(--space-3) var(--space-4);text-align:center;pointer-events:none;border-radius:var(--radius-md);font-weight:600;box-shadow:0 10px 30px #0f172a33}.notice-success[data-v-15f5b059]{background:var(--color-status-pubblicato-bg, #e6f4ea);color:var(--color-success-text);border:1px solid var(--color-success-text)}.notice-error[data-v-15f5b059]{background:var(--color-error-bg, #fef2f2);color:var(--color-error-text);border:1px solid var(--color-error-text)}.status-badge[data-v-564fc55f]{display:inline-block;padding:.3rem .65rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:700;white-space:nowrap}.status-badge[data-stato=BOZZA][data-v-564fc55f]{background:var(--stato-bozza-bg);color:var(--stato-bozza-text)}.status-badge[data-stato=PUBBLICATO][data-v-564fc55f]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text)}.status-badge[data-stato=COMPLETO][data-v-564fc55f]{background:var(--stato-completo-bg);color:var(--stato-completo-text)}.status-badge[data-stato=ANNULLATO][data-v-564fc55f]{background:var(--stato-annullato-bg);color:var(--stato-annullato-text)}.status-badge[data-stato=CHIUSO][data-v-564fc55f]{background:var(--stato-chiuso-bg);color:var(--stato-chiuso-text)}.info-grid[data-v-287ca933]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:0 0 var(--space-5);padding:0 0 var(--space-5);border-bottom:1px solid var(--color-border-light)}dt[data-v-287ca933]{font-size:.8rem;color:var(--color-text-subtle);margin:0}dd[data-v-287ca933]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.info-row[data-v-287ca933]{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;margin:0 0 var(--space-4);border-bottom:1px solid var(--color-border-light)}.info-label[data-v-287ca933]{font-size:.82rem;color:var(--color-text-subtle)}.info-val[data-v-287ca933]{font-weight:700;color:var(--color-text);font-size:.9rem}.info-block[data-v-287ca933]{margin:0 0 var(--space-4);padding:var(--space-4);background:var(--color-surface-subtle);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.block-label[data-v-287ca933]{margin:0 0 var(--space-2);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.block-text[data-v-287ca933]{margin:0;font-size:.95rem;color:var(--color-text-muted);line-height:1.6}.roster-section[data-v-287ca933]{margin-top:var(--space-5)}.roster-head[data-v-287ca933]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.register-link[data-v-287ca933]{font-size:.82rem;font-weight:700;color:var(--color-accent);text-decoration:none;white-space:nowrap}.register-link[data-v-287ca933]:hover{text-decoration:underline}.roster-list[data-v-287ca933]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.roster-item[data-v-287ca933]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-subtle);border:1px solid var(--color-border-light)}.roster-name[data-v-287ca933]{font-weight:700;color:var(--color-text);font-size:.9rem}.roster-classe[data-v-287ca933]{font-size:.72rem;font-weight:700;color:var(--color-accent);background:var(--color-accent-bg);border-radius:var(--radius-full);padding:.05rem .5rem}.lessons-section[data-v-287ca933]{margin-top:var(--space-5)}.lessons-title[data-v-287ca933]{margin:0 0 var(--space-4);font-size:1rem;font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.lessons-count[data-v-287ca933]{font-size:.82rem;font-weight:400;color:var(--color-text-subtle)}.lesson-list[data-v-287ca933]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.lesson-item[data-v-287ca933]{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-subtle);border:1px solid var(--color-border-light)}.lesson-item.is-annullata[data-v-287ca933]{opacity:.5}.lesson-num[data-v-287ca933]{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border-radius:var(--radius-full);background:var(--color-accent-bg);color:var(--color-accent);font-size:.75rem;font-weight:700}.lesson-item.is-annullata .lesson-num[data-v-287ca933]{background:var(--color-border);color:var(--color-text-subtle)}.lesson-info[data-v-287ca933]{flex:1;min-width:0}.lesson-date[data-v-287ca933]{margin:0;font-weight:700;color:var(--color-text);font-size:.9rem}.lesson-meta[data-v-287ca933]{margin:.2rem 0 0;font-size:.82rem;color:var(--color-text-subtle)}.lesson-note[data-v-287ca933]{margin:.3rem 0 0;font-size:.82rem;color:var(--color-text-muted);font-style:italic}.hint[data-v-287ca933]{color:var(--color-text-muted);margin:0}.copyright[data-v-7049610b]{margin:0;font-size:calc(.85rem - 2pt)}.layout[data-v-e034d8c8]{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;background:var(--color-bg);font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--color-text)}.layout-body[data-v-e034d8c8]{flex:1;min-height:0;display:flex;align-items:stretch}.content-scroll[data-v-e034d8c8]{flex:1;min-width:0;overflow-y:auto}.content[data-v-e034d8c8]{flex:1;min-width:0;width:100%;max-width:var(--content-max-width);margin:0 auto;padding:var(--space-6) var(--space-5)}.app-footer[data-v-e034d8c8]{display:flex;justify-content:flex-end;padding:var(--space-1) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted)}.sidebar-scrim[data-v-e034d8c8]{display:none}@media(max-width:900px){.sidebar-scrim[data-v-e034d8c8]{display:block;position:fixed;inset:var(--topbar-height) 0 0 0;z-index:calc(var(--z-sidebar) - 1);background:#0f172a59}}.card[data-v-a2f8c250]{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-card);box-shadow:var(--shadow-card)}.card-head[data-v-a2f8c250]{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;align-items:start}.card-actions[data-v-a2f8c250]{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.item-title[data-v-a2f8c250]{margin:0;font-weight:700;color:var(--color-text)}.item-meta[data-v-a2f8c250]{margin:.25rem 0 0;font-size:.95rem;color:var(--color-text-subtle)}.item-note[data-v-a2f8c250]{margin:var(--space-3) 0 0;font-size:.95rem;color:var(--color-text-subtle)}.detail-button[data-v-a2f8c250]{padding:.5rem .9rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font:inherit;font-weight:700;white-space:nowrap;cursor:pointer;text-decoration:none;display:inline-block}.detail-button[data-v-a2f8c250]:hover{background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.publish-button[data-v-a2f8c250]{padding:.5rem .9rem;border:0;border-radius:var(--radius-md);background:var(--color-accent);color:#fff;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.annulla-button[data-v-a2f8c250]{padding:.5rem .9rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-error-text, #dc2626);font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.annulla-button[data-v-a2f8c250]:hover{background:var(--color-error-bg, #fef2f2);border-color:var(--color-error-text, #dc2626)}.metrics[data-v-a2f8c250]{margin:var(--space-4) 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.metrics dt[data-v-a2f8c250]{font-size:.8rem;color:var(--color-text-subtle);margin:0}.metrics dd[data-v-a2f8c250]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.progress[data-v-a2f8c250]{margin:var(--space-4) 0 0}.progress-head[data-v-a2f8c250]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-2);font-size:.85rem;color:var(--color-text-subtle)}.progress-head strong[data-v-a2f8c250]{color:var(--color-text)}.progress-track[data-v-a2f8c250]{height:8px;border-radius:var(--radius-full);background:var(--color-border-light);overflow:hidden}.progress-fill[data-v-a2f8c250]{display:block;height:100%;border-radius:var(--radius-full);background:var(--color-accent);transition:width .2s ease}.lesson-list[data-v-a2f8c250]{margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid;gap:var(--space-2)}.lesson-row[data-v-a2f8c250]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.lesson-row.is-firmata[data-v-a2f8c250]{border-color:var(--color-accent);background:var(--color-accent-bg)}.lesson-row.is-annullata[data-v-a2f8c250]{opacity:.5}.firma[data-v-a2f8c250]{position:relative;display:inline-flex;flex-shrink:0;cursor:pointer}.firma.is-disabled[data-v-a2f8c250]{cursor:not-allowed}.firma input[data-v-a2f8c250]{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:inherit}.firma-box[data-v-a2f8c250]{width:22px;height:22px;border-radius:var(--radius-sm);border:2px solid var(--color-border-input);background:#fff;display:grid;place-items:center}.firma input:checked+.firma-box[data-v-a2f8c250]{border-color:var(--color-accent);background:var(--color-accent)}.firma input:checked+.firma-box[data-v-a2f8c250]:after{content:"";width:6px;height:11px;margin-top:-2px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.firma.is-disabled .firma-box[data-v-a2f8c250]{background:var(--color-surface-subtle);border-color:var(--color-border-light)}.lesson-main[data-v-a2f8c250]{flex:1;min-width:0;display:flex;flex-direction:column}.lesson-when[data-v-a2f8c250]{font-weight:700;color:var(--color-text);font-size:.9rem}.lesson-sub[data-v-a2f8c250]{font-size:.8rem;color:var(--color-text-subtle)}.firma-tag[data-v-a2f8c250]{flex-shrink:0;padding:.2rem .55rem;border-radius:var(--radius-full);background:var(--color-accent);color:#fff;font-size:.72rem;font-weight:700}.hint[data-v-a2f8c250]{margin:var(--space-4) 0 0;color:var(--color-text-muted)}@media(max-width:900px){.card-head[data-v-a2f8c250]{flex-direction:column}.metrics[data-v-a2f8c250]{grid-template-columns:1fr 1fr}}.stat-box[data-v-29b33aaf]{position:relative;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);cursor:help;transition:border-color .15s ease}.stat-box[data-v-29b33aaf]:hover,.stat-box[data-v-29b33aaf]:focus-visible{border-color:var(--color-accent)}.stat-box.is-selezionabile[data-v-29b33aaf]{cursor:pointer}.stat-box.is-attiva[data-v-29b33aaf]{border-color:var(--color-accent);background:var(--color-accent-light);box-shadow:inset 0 0 0 1px var(--color-accent),var(--shadow-card)}.stat-box[data-v-29b33aaf]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.stat-label[data-v-29b33aaf]{display:block;padding-right:1.4rem;font-size:.82rem;color:var(--color-text-subtle)}.stat-info[data-v-29b33aaf]{position:absolute;top:.8rem;right:.8rem;width:1.1rem;height:1.1rem;border-radius:var(--radius-full);border:1px solid var(--color-border-input);color:var(--color-text-subtle);font-size:.7rem;font-weight:700;line-height:1rem;text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.stat-info[data-v-29b33aaf]:after{content:"";position:absolute;top:-.8rem;right:-.8rem;bottom:-.8rem;left:-.8rem}.stat-box:hover .stat-info[data-v-29b33aaf],.stat-box:focus-visible .stat-info[data-v-29b33aaf],.stat-box.is-aperto .stat-info[data-v-29b33aaf]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-surface)}.stat-hint[data-v-29b33aaf]{--hint-x: 50%;position:absolute;top:calc(100% + 10px);left:50%;z-index:20;width:280px;max-width:calc(100vw - 2rem);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-text);color:var(--color-surface);box-shadow:var(--shadow-panel);cursor:default;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.stat-hint[data-v-29b33aaf]:before{content:"";position:absolute;top:-5px;left:var(--hint-x);width:10px;height:10px;margin-left:-5px;background:var(--color-text);transform:rotate(45deg)}.stat-box:hover .stat-hint[data-v-29b33aaf],.stat-box:focus-visible .stat-hint[data-v-29b33aaf],.stat-box.is-aperto .stat-hint[data-v-29b33aaf]{opacity:1;visibility:visible;transform:translate(-50%)}.stat-box:first-child .stat-hint[data-v-29b33aaf],.stat-box:last-child .stat-hint[data-v-29b33aaf]{--hint-x: 2.5rem;left:0;transform:translateY(4px)}.stat-box:last-child .stat-hint[data-v-29b33aaf]{--hint-x: calc(100% - 2.5rem) ;left:auto;right:0}.stat-box:first-child:hover .stat-hint[data-v-29b33aaf],.stat-box:first-child:focus-visible .stat-hint[data-v-29b33aaf],.stat-box:first-child.is-aperto .stat-hint[data-v-29b33aaf],.stat-box:last-child:hover .stat-hint[data-v-29b33aaf],.stat-box:last-child:focus-visible .stat-hint[data-v-29b33aaf],.stat-box:last-child.is-aperto .stat-hint[data-v-29b33aaf]{transform:translateY(0)}.stat-hint-unita[data-v-29b33aaf]{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent-dark);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.stat-hint-testo[data-v-29b33aaf]{margin:var(--space-2) 0 0;font-size:.88rem;font-weight:600;line-height:1.4}.stat-hint-nota[data-v-29b33aaf]{margin:var(--space-2) 0 0;padding-top:var(--space-2);border-top:1px solid var(--color-text-muted);color:var(--color-border-input);font-size:.8rem;line-height:1.4}@media(prefers-reduced-motion:reduce){.stat-box[data-v-29b33aaf],.stat-info[data-v-29b33aaf],.stat-hint[data-v-29b33aaf]{transition:none}}@media(max-width:900px){.stat-box .stat-hint[data-v-29b33aaf],.stat-box:hover .stat-hint[data-v-29b33aaf],.stat-box:focus-visible .stat-hint[data-v-29b33aaf],.stat-box.is-aperto .stat-hint[data-v-29b33aaf]{--hint-x: 2.5rem;left:0;right:auto;transform:none}.stat-box:nth-child(2n) .stat-hint[data-v-29b33aaf]{--hint-x: calc(100% - 2.5rem) ;left:auto;right:0}}.card[data-v-8ef29fbd]{padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-card);box-shadow:var(--shadow-card)}.card-head[data-v-8ef29fbd]{display:flex;gap:var(--space-4);justify-content:space-between;align-items:start}.card-actions[data-v-8ef29fbd]{display:flex;gap:var(--space-2);align-items:center}.item-title[data-v-8ef29fbd]{margin:0;font-weight:700;color:var(--color-text)}.item-meta[data-v-8ef29fbd]{margin:.25rem 0 0;font-size:.95rem;color:var(--color-text-subtle)}.item-note[data-v-8ef29fbd]{margin:var(--space-3) 0 0;font-size:.95rem;color:var(--color-text-subtle)}.primary-button[data-v-8ef29fbd]{padding:.6rem 1rem;border:0;border-radius:var(--radius-md);background:var(--color-brand);color:#fff;font-weight:700;white-space:nowrap;cursor:pointer}.primary-button[data-v-8ef29fbd]:disabled{opacity:.6}.enrolled-badge[data-v-8ef29fbd]{padding:.35rem .65rem;border-radius:var(--radius-full);background:var(--iscrizione-attiva-bg);color:var(--iscrizione-attiva-text);font-size:.8rem;font-weight:700}.cancel-button[data-v-8ef29fbd]{padding:.35rem .65rem;border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text);font-size:.8rem;font-weight:700;cursor:pointer}.cancel-button[data-v-8ef29fbd]:disabled{opacity:.6}.metrics[data-v-8ef29fbd]{margin:var(--space-4) 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.metrics dt[data-v-8ef29fbd]{font-size:.8rem;color:var(--color-text-subtle);margin:0}.metrics dd[data-v-8ef29fbd]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.lesson-list[data-v-8ef29fbd]{margin:var(--space-4) 0 0;padding:0;list-style:decimal inside;color:var(--color-text-muted)}@media(max-width:900px){.card-head[data-v-8ef29fbd]{flex-direction:column}.metrics[data-v-8ef29fbd]{grid-template-columns:1fr 1fr}}.dashboard[data-v-bb9869a8]{display:grid;gap:var(--space-5)}.greeting[data-v-bb9869a8]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4)}.eyebrow[data-v-bb9869a8]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-bb9869a8]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}.subtitle[data-v-bb9869a8]{margin:.3rem 0 0;color:var(--color-text-muted)}.quick-actions[data-v-bb9869a8]{display:flex;gap:var(--space-3);flex-shrink:0}.btn[data-v-bb9869a8]{padding:.6rem 1rem;border-radius:var(--radius-md);font-weight:700;text-decoration:none;white-space:nowrap;cursor:pointer}.btn-primary[data-v-bb9869a8]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-outline[data-v-bb9869a8]{background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border-input)}.stat-grid[data-v-bb9869a8]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.stat-grid--docente[data-v-bb9869a8]{grid-template-columns:repeat(5,minmax(0,1fr))}.stat-grid--studente[data-v-bb9869a8]{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-value[data-v-bb9869a8]{display:block;margin-top:var(--space-2);font-size:1.8rem;color:var(--color-text)}.stat-rows[data-v-bb9869a8]{margin-top:var(--space-3);display:grid;gap:var(--space-2)}.stat-row[data-v-bb9869a8]{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.stat-row-tipo[data-v-bb9869a8]{font-size:.85rem;color:var(--color-text-muted)}.stat-row-count[data-v-bb9869a8]{font-size:1.1rem;color:var(--color-text);font-weight:700}.list-section[data-v-bb9869a8]{display:grid;gap:var(--space-4)}.section-head[data-v-bb9869a8]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.section-head h2[data-v-bb9869a8]{margin:0;font-size:1.1rem;color:var(--color-text)}.tabs[data-v-bb9869a8]{display:inline-flex;gap:4px;padding:4px;background:var(--color-surface-subtle);border-radius:var(--radius-md)}.tab[data-v-bb9869a8]{padding:.35rem .75rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:.85rem;font-weight:700;cursor:pointer}.tab.is-active[data-v-bb9869a8]{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--shadow-card)}.card-list[data-v-bb9869a8]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4)}.materia-card[data-v-bb9869a8]{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.materia-head[data-v-bb9869a8]{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-4)}.materia-head h3[data-v-bb9869a8]{margin:0;flex:1}.materia-count[data-v-bb9869a8]{color:var(--color-text-subtle);font-size:.9rem}.hint[data-v-bb9869a8]{margin:0;color:var(--color-text-muted)}.error[data-v-bb9869a8]{margin:0;color:var(--color-error-text)}@media(max-width:900px){.greeting[data-v-bb9869a8]{flex-direction:column}.stat-grid[data-v-bb9869a8]{grid-template-columns:1fr 1fr}.stat-grid--studente[data-v-bb9869a8]{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-grid--studente[data-v-bb9869a8] .stat-box:nth-child(2) .stat-hint{--hint-x: 50%;left:50%;right:auto;transform:translate(-50%)}.stat-grid--studente[data-v-bb9869a8] .stat-box:nth-child(3) .stat-hint{--hint-x: calc(100% - 2.5rem) ;left:auto;right:0}}.calendar[data-v-8d33b094]{padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-card)}.cal-nav[data-v-8d33b094]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.cal-month[data-v-8d33b094]{font-weight:700;font-size:.9rem;color:var(--color-text);text-transform:capitalize}.nav-btn[data-v-8d33b094]{width:28px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:1.1rem;line-height:1;cursor:pointer;display:grid;place-items:center}.nav-btn[data-v-8d33b094]:hover{background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.cal-grid[data-v-8d33b094]{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dow[data-v-8d33b094]{text-align:center;font-size:.7rem;font-weight:700;color:var(--color-text-subtle);padding:.3rem 0}.day[data-v-8d33b094]{display:grid;place-items:center;aspect-ratio:1;width:100%;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:.82rem;cursor:pointer}.day[data-v-8d33b094]:hover:not(:disabled):not(.is-blocked){background:var(--color-accent-bg);color:var(--color-accent)}.day.is-today[data-v-8d33b094]{font-weight:700;color:var(--color-text)}.day.is-selected[data-v-8d33b094]{background:var(--color-accent);color:#fff;font-weight:700}.day.is-selected[data-v-8d33b094]:hover{opacity:.85}.day.is-past[data-v-8d33b094]{opacity:.3;cursor:default}.day.is-blocked[data-v-8d33b094]:not(.is-selected){opacity:.35;cursor:not-allowed}.cal-counter[data-v-8d33b094]{margin:var(--space-3) 0 0;font-size:.8rem;color:var(--color-text-subtle);text-align:center;min-height:1.2em}.counter-done[data-v-8d33b094]{color:var(--color-accent);font-weight:700}.counter-hint[data-v-8d33b094],.counter-empty[data-v-8d33b094]{color:var(--color-text-subtle);font-style:italic}.editor-grid[data-v-3e26a7c2]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.cal-column[data-v-3e26a7c2]{display:flex;flex-direction:column;gap:var(--space-4)}.editor-panel[data-v-3e26a7c2]{padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface-card)}.panel-head[data-v-3e26a7c2]{display:flex;gap:var(--space-4);align-items:start;justify-content:space-between}.panel-label[data-v-3e26a7c2]{margin:0 0 var(--space-1);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.editor-panel h3[data-v-3e26a7c2]{margin:0 0 var(--space-4);font-size:1.1rem}.section-divider[data-v-3e26a7c2]{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-subtle);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:var(--space-2) 0}.section-divider[data-v-3e26a7c2]:before,.section-divider[data-v-3e26a7c2]:after{content:"";flex:1;height:1px;background:var(--color-border-light)}.field[data-v-3e26a7c2]{display:flex;flex-direction:column;gap:var(--space-2);font-size:.85rem;font-weight:600;color:var(--color-text-muted)}.field-row[data-v-3e26a7c2]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.editor-panel .field+.field[data-v-3e26a7c2],.editor-panel .field-row+.field[data-v-3e26a7c2],.editor-panel .field+.field-row[data-v-3e26a7c2],.editor-panel .field-row+.field-row[data-v-3e26a7c2],.editor-panel .section-divider+.field[data-v-3e26a7c2],.editor-panel .section-divider+.field-row[data-v-3e26a7c2],.editor-panel .hint[data-v-3e26a7c2]{margin-top:var(--space-3)}.editor-panel .field-row .field[data-v-3e26a7c2]{margin-top:0}.field-row .field input[type=time][data-v-3e26a7c2],.field-row .field select[data-v-3e26a7c2]{box-sizing:border-box;height:2.5rem;padding-top:0;padding-bottom:0}.field input[data-v-3e26a7c2],.field select[data-v-3e26a7c2],.field textarea[data-v-3e26a7c2]{width:100%;padding:.7rem .8rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:#fff;color:var(--color-text)}.checkbox-field[data-v-3e26a7c2]{align-content:end}.checkbox-field input[data-v-3e26a7c2]{width:1rem;height:1rem}.hint[data-v-3e26a7c2]{margin:0;color:var(--color-text-muted)}.primary-button[data-v-3e26a7c2]{flex-shrink:0;padding:.7rem 1rem;border:0;border-radius:var(--radius-md);background:var(--color-brand);color:#fff;font-weight:700;white-space:nowrap;cursor:pointer}.primary-button[data-v-3e26a7c2]:disabled{opacity:.55;cursor:default}.batch-message[data-v-3e26a7c2]{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.9rem;font-weight:600}.batch-ok[data-v-3e26a7c2]{background:var(--color-status-pubblicato-bg, #e6f4ea);color:var(--color-status-pubblicato, #1a7f37);border:1px solid var(--color-status-pubblicato, #1a7f37)}.batch-partial[data-v-3e26a7c2]{background:var(--color-status-completo-bg, #fff3e0);color:var(--color-status-completo, #b45309);border:1px solid var(--color-status-completo, #b45309)}.batch-error[data-v-3e26a7c2]{background:var(--color-error-bg, #fef2f2);color:var(--color-error-text, #dc2626);border:1px solid var(--color-error-text, #dc2626)}.batch-errors[data-v-3e26a7c2]{margin:var(--space-2) 0 0;padding-left:var(--space-4);font-size:.82rem;font-weight:400}.date-list[data-v-3e26a7c2]{padding:var(--space-3) var(--space-4);background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md);font-size:.85rem}.date-list-label[data-v-3e26a7c2]{margin:0 0 var(--space-2);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.date-list ul[data-v-3e26a7c2]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.date-list li[data-v-3e26a7c2]{padding:.2rem .6rem;background:var(--color-accent-bg);color:var(--color-accent);border-radius:var(--radius-full);font-weight:600;font-size:.8rem}@media(max-width:900px){.editor-grid[data-v-3e26a7c2],.field-row[data-v-3e26a7c2]{grid-template-columns:1fr}}.view[data-v-2f0619c6]{display:grid;gap:var(--space-5)}.view-head[data-v-2f0619c6]{display:flex;gap:var(--space-4);align-items:start;justify-content:space-between}.eyebrow[data-v-2f0619c6]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-2f0619c6]{margin:.4rem 0 0;font-size:1.8rem;color:var(--color-text)}.back-link[data-v-2f0619c6]{padding:.55rem .9rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font-weight:700;text-decoration:none;white-space:nowrap}.back-link[data-v-2f0619c6]:hover{background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.hint[data-v-2f0619c6]{margin:0;color:var(--color-text-muted)}@media(max-width:900px){.view-head[data-v-2f0619c6]{flex-direction:column}}.view[data-v-b11e1b08]{display:grid;gap:var(--space-5)}.view-head[data-v-b11e1b08]{display:flex;gap:var(--space-4);align-items:start;justify-content:space-between}.eyebrow[data-v-b11e1b08]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-b11e1b08]{margin:.4rem 0 0;font-size:1.8rem;color:var(--color-text)}.catalog-list[data-v-b11e1b08]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.catalog-item[data-v-b11e1b08]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3) var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-card)}.item-main[data-v-b11e1b08],.item-title[data-v-b11e1b08],.item-meta[data-v-b11e1b08],.item-note[data-v-b11e1b08]{margin:0}.item-title[data-v-b11e1b08]{font-weight:700;color:var(--color-text)}.item-meta[data-v-b11e1b08],.item-note[data-v-b11e1b08]{font-size:.95rem;color:var(--color-text-subtle)}.item-note[data-v-b11e1b08]{grid-column:1 / 2}.item-badge[data-v-b11e1b08]{align-self:start;justify-self:end;padding:.35rem .65rem;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent-dark);font-size:.8rem;font-weight:700}.hint[data-v-b11e1b08]{margin:0;color:var(--color-text-muted)}.error[data-v-b11e1b08]{margin:0;color:var(--color-error-text)}@media(max-width:900px){.view-head[data-v-b11e1b08]{flex-direction:column}.catalog-item[data-v-b11e1b08]{grid-template-columns:1fr}.item-note[data-v-b11e1b08],.item-badge[data-v-b11e1b08]{grid-column:auto;justify-self:start}}h3[data-v-b11e1b08]{margin:0 0 var(--space-3);font-size:1rem;font-weight:700;color:var(--color-text)}.materia-form[data-v-b11e1b08]{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-card);display:grid;gap:var(--space-3)}.form-row[data-v-b11e1b08]{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--space-3)}.form-label[data-v-b11e1b08]{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--color-text-subtle)}.form-label input[data-v-b11e1b08],.form-label select[data-v-b11e1b08],.form-label textarea[data-v-b11e1b08]{padding:.45rem .65rem;border:1px solid var(--color-border-input, var(--color-border));border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text);font-size:.95rem;resize:vertical}.form-check[data-v-b11e1b08]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--color-text-subtle);cursor:pointer}.form-actions[data-v-b11e1b08]{display:flex;gap:var(--space-3)}.btn[data-v-b11e1b08]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;font-size:.9rem;transition:opacity .15s}.btn[data-v-b11e1b08]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-b11e1b08]{background:var(--color-accent);color:#fff}.btn-ghost[data-v-b11e1b08]{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-sm[data-v-b11e1b08]{padding:.3rem .7rem;font-size:.82rem}.admin-message[data-v-b11e1b08]{margin:0;color:var(--color-success-text, var(--color-accent));font-size:.9rem}.materie-list .catalog-item[data-v-b11e1b08]{grid-template-columns:minmax(0,1fr) auto}.item-actions[data-v-b11e1b08]{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.is-inactive[data-v-b11e1b08]{opacity:.55}.badge-inactive[data-v-b11e1b08]{background:var(--color-surface-subtle);color:var(--color-text-muted, var(--color-text-subtle))}@media(max-width:900px){.form-row[data-v-b11e1b08],.materie-list .catalog-item[data-v-b11e1b08]{grid-template-columns:1fr}.item-actions[data-v-b11e1b08]{flex-direction:row;align-items:center;justify-content:flex-start}}.view[data-v-be434d37]{display:grid;gap:var(--space-5)}.view-head[data-v-be434d37]{display:flex;gap:var(--space-4);align-items:start;justify-content:space-between}.eyebrow[data-v-be434d37]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-be434d37]{margin:.4rem 0 0;font-size:1.8rem;color:var(--color-text)}.catalog-list[data-v-be434d37]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.catalog-item[data-v-be434d37]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3) var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-card);align-items:center}.item-main[data-v-be434d37],.item-title[data-v-be434d37],.item-meta[data-v-be434d37]{margin:0}.item-title[data-v-be434d37]{font-weight:700;color:var(--color-text)}.item-meta[data-v-be434d37]{font-size:.95rem;color:var(--color-text-subtle)}.item-actions[data-v-be434d37]{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.item-buttons[data-v-be434d37]{display:flex;gap:var(--space-2)}.filters[data-v-be434d37]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip[data-v-be434d37]{padding:.3rem .8rem;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text);font-size:.85rem;font-weight:600;cursor:pointer}.chip-active[data-v-be434d37]{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.stato[data-v-be434d37]{margin-left:var(--space-2);padding:.1rem .5rem;border-radius:999px;border:1px solid var(--color-border);font-size:.75rem;font-weight:700;color:var(--color-text-muted)}.btn-primary[data-v-be434d37]{background:var(--color-brand);color:#fff}.hint[data-v-be434d37]{margin:0;color:var(--color-text-muted)}.admin-message[data-v-be434d37]{margin:0;color:var(--color-success-text, var(--color-accent));font-weight:700}.error[data-v-be434d37]{margin:0;color:var(--color-error-text)}.btn[data-v-be434d37]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;font-size:.9rem;transition:opacity .15s}.btn[data-v-be434d37]:disabled{opacity:.6;cursor:not-allowed}.btn-ghost[data-v-be434d37]{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-sm[data-v-be434d37]{padding:.3rem .7rem;font-size:.82rem}@media(max-width:900px){.view-head[data-v-be434d37]{flex-direction:column}.catalog-item[data-v-be434d37]{grid-template-columns:1fr}.item-actions[data-v-be434d37]{align-items:flex-start}}.view[data-v-227f7f64]{display:grid;gap:var(--space-5)}.view-head[data-v-227f7f64]{display:grid;gap:.25rem}.eyebrow[data-v-227f7f64]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-227f7f64]{margin:0;font-size:1.8rem;color:var(--color-text)}.session-card[data-v-227f7f64]{padding:var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);max-width:640px}.identity-row[data-v-227f7f64]{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.identity-name[data-v-227f7f64]{margin:0;font-size:1.2rem;font-weight:700;color:var(--color-text)}.identity-mail[data-v-227f7f64]{margin:.25rem 0 0;font-size:.9rem;color:var(--color-text-subtle)}.status-grid[data-v-227f7f64]{margin:var(--space-5) 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}dt[data-v-227f7f64]{font-size:.8rem;color:var(--color-text-subtle);margin:0}dd[data-v-227f7f64]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.hint[data-v-227f7f64]{margin:0;color:var(--color-text-muted);line-height:1.6}.hint code[data-v-227f7f64]{font-size:.85em;padding:.05rem .3rem;border-radius:var(--radius-sm);background:var(--color-surface-subtle)}.error[data-v-227f7f64]{margin:0;color:var(--color-error-text)}.auth-actions[data-v-227f7f64]{margin-top:var(--space-4);display:flex;gap:var(--space-3)}.btn-auth[data-v-227f7f64]{padding:.6rem 1.1rem;border-radius:var(--radius-md);border:1px solid var(--color-border-light);font-weight:700;cursor:pointer}.btn-auth--google[data-v-227f7f64]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn-auth--logout[data-v-227f7f64]{background:var(--color-surface);color:var(--color-text)}.health-link[data-v-227f7f64]{display:inline-flex;margin-top:var(--space-4);color:var(--color-accent);font-weight:700}.view[data-v-e1bd9852]{display:grid;gap:var(--space-5)}.view-head[data-v-e1bd9852]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4)}.head-actions[data-v-e1bd9852]{display:flex;gap:var(--space-3);flex-wrap:wrap}.eyebrow[data-v-e1bd9852]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-e1bd9852]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}.btn-export[data-v-e1bd9852]{padding:.65rem 1.1rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-accent);font-weight:700;font-size:.9rem;cursor:pointer;white-space:nowrap}.btn-export[data-v-e1bd9852]:hover:not(:disabled){background:var(--color-accent-bg)}.btn-export[data-v-e1bd9852]:disabled{opacity:.55;cursor:default}.stat-bar[data-v-e1bd9852]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4)}.stat-value[data-v-e1bd9852]{display:block;margin-top:var(--space-2);font-size:1.8rem;color:var(--color-text)}.tabs[data-v-e1bd9852]{display:inline-flex;justify-self:start;gap:4px;padding:4px;background:var(--color-surface-subtle);border-radius:var(--radius-md)}.tab[data-v-e1bd9852]{padding:.35rem .75rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:.85rem;font-weight:700;cursor:pointer}.tab.is-active[data-v-e1bd9852]{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--shadow-card)}.filter-bar[data-v-e1bd9852]{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.filter-bar select[data-v-e1bd9852],.search-input[data-v-e1bd9852]{padding:.55rem .75rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.9rem}.search-input[data-v-e1bd9852]{flex:1;min-width:180px}.filter-count[data-v-e1bd9852]{font-size:.85rem;color:var(--color-text-muted);white-space:nowrap}.report-list[data-v-e1bd9852]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.report-item[data-v-e1bd9852]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.item-head[data-v-e1bd9852]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);width:100%;text-align:left;background:none;border:0;cursor:pointer}.item-head[data-v-e1bd9852]:hover{background:var(--color-surface-subtle)}.item-info[data-v-e1bd9852]{display:grid;gap:.25rem;min-width:0}.item-badges[data-v-e1bd9852]{display:flex;gap:var(--space-2)}.badge-tipo[data-v-e1bd9852]{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-full);background:var(--color-accent-bg);color:var(--color-accent);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-stato[data-v-e1bd9852]{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-full);font-size:.72rem;font-weight:700}.badge-stato--bozza[data-v-e1bd9852]{background:var(--color-surface-subtle);color:var(--color-text-muted)}.badge-stato--pubblicato[data-v-e1bd9852]{background:var(--color-status-pubblicato-bg, #e6f4ea);color:var(--color-status-pubblicato, #1a7f37)}.badge-stato--completo[data-v-e1bd9852]{background:var(--color-status-completo-bg, #fff3e0);color:var(--color-status-completo, #b45309)}.badge-stato--annullato[data-v-e1bd9852]{background:var(--color-error-bg, #fef2f2);color:var(--color-error-text, #dc2626)}.badge-stato--chiuso[data-v-e1bd9852]{background:var(--color-surface-subtle);color:var(--color-text-muted)}.item-title[data-v-e1bd9852]{margin:0;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-meta[data-v-e1bd9852]{margin:0;font-size:.88rem;color:var(--color-text-subtle)}.item-numbers[data-v-e1bd9852]{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.metric[data-v-e1bd9852]{text-align:right}.metric span[data-v-e1bd9852]{display:block;font-size:.75rem;color:var(--color-text-subtle)}.metric strong[data-v-e1bd9852]{font-size:1rem;color:var(--color-text)}.chevron[data-v-e1bd9852]{font-size:.75rem;color:var(--color-text-muted);width:1.2em;text-align:center}.item-detail[data-v-e1bd9852]{padding:0 var(--space-4) var(--space-4);display:grid;gap:var(--space-4);border-top:1px solid var(--color-border-light)}.detail-section h3[data-v-e1bd9852]{margin:var(--space-4) 0 var(--space-3);font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.iscritti-head[data-v-e1bd9852]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.register-link[data-v-e1bd9852]{font-size:.82rem;font-weight:700;color:var(--color-accent);text-decoration:none;white-space:nowrap}.register-link[data-v-e1bd9852]:hover{text-decoration:underline}.data-table[data-v-e1bd9852]{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th[data-v-e1bd9852]{padding:.4rem .6rem;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle);border-bottom:1px solid var(--color-border)}.data-table td[data-v-e1bd9852]{padding:.45rem .6rem;color:var(--color-text);border-bottom:1px solid var(--color-border-light)}.data-table tr:last-child td[data-v-e1bd9852]{border-bottom:0}.cell-firma[data-v-e1bd9852]{font-weight:700;color:var(--color-accent)}.row-annullata td[data-v-e1bd9852]{opacity:.5;text-decoration:line-through}.row-inattiva td[data-v-e1bd9852]{opacity:.55}.hint[data-v-e1bd9852]{margin:0;color:var(--color-text-muted)}.error[data-v-e1bd9852]{margin:0;color:var(--color-error-text)}@media(max-width:900px){.view-head[data-v-e1bd9852]{flex-direction:column}.stat-bar[data-v-e1bd9852]{grid-template-columns:1fr 1fr}.filter-bar[data-v-e1bd9852]{flex-direction:column;align-items:stretch}.search-input[data-v-e1bd9852]{min-width:0}.item-head[data-v-e1bd9852]{flex-direction:column;align-items:start}.item-numbers[data-v-e1bd9852]{gap:var(--space-3)}}.view[data-v-dbd002a1]{display:grid;gap:var(--space-5)}.view-head[data-v-dbd002a1]{display:flex;gap:var(--space-4);align-items:start;justify-content:space-between}.eyebrow[data-v-dbd002a1]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-dbd002a1]{margin:.4rem 0 0;font-size:1.8rem;color:var(--color-text)}.back-link[data-v-dbd002a1]{padding:.55rem .9rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font-weight:700;text-decoration:none;white-space:nowrap}.back-link[data-v-dbd002a1]:hover{background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.meta[data-v-dbd002a1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-4);margin:0;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}dt[data-v-dbd002a1]{font-size:.8rem;color:var(--color-text-subtle);margin:0}dd[data-v-dbd002a1]{margin:.25rem 0 0;font-weight:700;color:var(--color-text)}.hint[data-v-dbd002a1]{margin:0;color:var(--color-text-muted)}.error[data-v-dbd002a1]{margin:0;color:var(--color-error-text)}.table-scroll[data-v-dbd002a1]{overflow-x:auto;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.register[data-v-dbd002a1]{border-collapse:collapse;width:100%;min-width:480px}.register th[data-v-dbd002a1],.register td[data-v-dbd002a1]{border-bottom:1px solid var(--color-border-light);padding:var(--space-3) var(--space-4);text-align:center;vertical-align:middle}.student-col[data-v-dbd002a1]{text-align:left;position:sticky;left:0;background:var(--color-surface);min-width:180px}.lesson-col[data-v-dbd002a1]{min-width:120px}.lesson-prog[data-v-dbd002a1]{display:block;font-weight:700;color:var(--color-text);font-size:.85rem}.lesson-date[data-v-dbd002a1]{display:block;font-size:.72rem;color:var(--color-text-subtle);margin-top:.15rem}.lesson-col.is-annullata[data-v-dbd002a1]{opacity:.5}.lesson-annullata[data-v-dbd002a1]{display:block;font-size:.72rem;color:var(--color-text-subtle);margin-top:.3rem}.all-present[data-v-dbd002a1]{margin-top:.4rem;padding:.25rem .5rem;font-size:.72rem;font-weight:700;border:1px solid var(--color-border-input);border-radius:var(--radius-full);background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:pointer}.all-present[data-v-dbd002a1]:hover{border-color:var(--color-accent);color:var(--color-accent)}.student-name[data-v-dbd002a1]{display:block;font-weight:700;color:var(--color-text)}.student-classe[data-v-dbd002a1]{display:inline-block;margin-top:.2rem;font-size:.72rem;font-weight:700;color:var(--color-accent);background:var(--color-accent-bg);border-radius:var(--radius-full);padding:.05rem .5rem}.cell.is-annullata[data-v-dbd002a1]{opacity:.5}.cell-muted[data-v-dbd002a1]{color:var(--color-text-subtle)}.cell-actions[data-v-dbd002a1]{display:inline-flex;gap:.3rem}.pill[data-v-dbd002a1]{width:30px;height:30px;border-radius:var(--radius-full);border:1px solid var(--color-border-input);background:var(--color-surface-subtle);color:var(--color-text-subtle);font-weight:700;cursor:pointer}.pill[data-v-dbd002a1]:disabled{cursor:default;opacity:.6}.pill.present.active[data-v-dbd002a1]{background:var(--color-success-text);border-color:var(--color-success-text);color:#fff}.pill.absent.active[data-v-dbd002a1]{background:var(--color-danger);border-color:var(--color-danger);color:#fff}@media(max-width:900px){.view-head[data-v-dbd002a1]{flex-direction:column}}.view[data-v-e41fa3ce]{display:grid;gap:var(--space-5)}.page-header[data-v-e41fa3ce]{display:flex;justify-content:space-between;align-items:start}.eyebrow[data-v-e41fa3ce]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand)}h1[data-v-e41fa3ce]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}h2[data-v-e41fa3ce]{margin:0 0 var(--space-4);font-size:1.1rem;color:var(--color-text)}.subtitle[data-v-e41fa3ce]{margin:.3rem 0 0;color:var(--color-text-muted)}.block[data-v-e41fa3ce]{display:grid;gap:var(--space-3)}.sessione-card[data-v-e41fa3ce]{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:grid;gap:var(--space-3)}.sessione-head[data-v-e41fa3ce]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-3)}.sessione-titolo[data-v-e41fa3ce]{display:block;font-size:1rem;font-weight:700;color:var(--color-text)}.sessione-date[data-v-e41fa3ce]{display:block;font-size:.82rem;color:var(--color-text-muted);margin-top:2px}.sessione-note[data-v-e41fa3ce]{margin:0;font-size:.85rem;color:var(--color-text-muted)}.badge-aperta[data-v-e41fa3ce]{display:inline-block;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text);white-space:nowrap;flex-shrink:0}.materie-list[data-v-e41fa3ce]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.materia-row[data-v-e41fa3ce]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md);flex-wrap:wrap}.materia-info[data-v-e41fa3ce]{display:flex;align-items:center;gap:var(--space-3)}.materia-nome[data-v-e41fa3ce]{font-size:.95rem;color:var(--color-text)}.materia-tipo[data-v-e41fa3ce]{font-size:.75rem;color:var(--color-text-subtle)}.inline-form[data-v-e41fa3ce]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.input[data-v-e41fa3ce]{padding:.4rem .7rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.9rem;width:130px;color:var(--color-text);background:var(--color-surface)}.input[data-v-e41fa3ce]:focus{outline:2px solid var(--color-accent);outline-offset:1px}.form-msg[data-v-e41fa3ce]{width:100%;margin:0;font-size:.82rem}.form-msg-error[data-v-e41fa3ce]{color:var(--color-error-text)}.form-msg-ok[data-v-e41fa3ce]{color:var(--color-success-text)}.btn[data-v-e41fa3ce]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;text-decoration:none;white-space:nowrap}.btn-sm[data-v-e41fa3ce]{padding:.35rem .75rem;font-size:.85rem}.btn-primary[data-v-e41fa3ce]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-primary[data-v-e41fa3ce]:disabled{opacity:.6;cursor:not-allowed}.btn-outline[data-v-e41fa3ce]{background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border-input)}.btn-danger[data-v-e41fa3ce]{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.btn-danger[data-v-e41fa3ce]:disabled{opacity:.6;cursor:not-allowed}.table[data-v-e41fa3ce]{width:100%;border-collapse:collapse;font-size:.9rem}.table th[data-v-e41fa3ce]{text-align:left;padding:var(--space-2) var(--space-3);font-size:.78rem;color:var(--color-text-subtle);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border)}.table td[data-v-e41fa3ce]{padding:var(--space-3);border-bottom:1px solid var(--color-border-light);color:var(--color-text);vertical-align:middle}.table tr:last-child td[data-v-e41fa3ce]{border-bottom:none}.mono[data-v-e41fa3ce]{font-family:monospace;font-size:.92rem}.stato-badge[data-v-e41fa3ce]{display:inline-block;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;white-space:nowrap}.stato-badge[data-stato=PRE_ISCRITTO][data-v-e41fa3ce]{background:var(--stato-bozza-bg);color:var(--stato-bozza-text)}.stato-badge[data-stato=ACCETTATO][data-v-e41fa3ce]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text)}.stato-badge[data-stato=IN_CODA][data-v-e41fa3ce]{background:var(--stato-completo-bg);color:var(--stato-completo-text)}.stato-badge[data-stato=ESCLUSO][data-v-e41fa3ce],.stato-badge[data-stato=RITIRATO][data-v-e41fa3ce]{background:var(--stato-chiuso-bg);color:var(--stato-chiuso-text)}.storico-details[data-v-e41fa3ce]{border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.storico-summary[data-v-e41fa3ce]{padding:var(--space-3) var(--space-4);font-size:.9rem;font-weight:700;color:var(--color-text-muted);cursor:pointer;list-style:none;background:var(--color-surface-subtle)}.storico-summary[data-v-e41fa3ce]::-webkit-details-marker{display:none}.storico-summary[data-v-e41fa3ce]:before{content:"▶ ";font-size:.7rem}details[open] .storico-summary[data-v-e41fa3ce]:before{content:"▼ "}.mt[data-v-e41fa3ce]{margin-top:0}.hint[data-v-e41fa3ce]{margin:0;color:var(--color-text-muted)}.msg-error[data-v-e41fa3ce]{margin:0;color:var(--color-error-text);padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}.view[data-v-9092c5ad]{display:grid;gap:var(--space-5)}.page-header[data-v-9092c5ad]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);flex-wrap:wrap}.eyebrow[data-v-9092c5ad]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand)}h1[data-v-9092c5ad]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}h2[data-v-9092c5ad]{margin:0 0 var(--space-4);font-size:1.1rem;color:var(--color-text)}.subtitle[data-v-9092c5ad]{margin:.3rem 0 0;color:var(--color-text-muted)}.form-card[data-v-9092c5ad]{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:grid;gap:var(--space-4)}.form-grid[data-v-9092c5ad]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.field[data-v-9092c5ad]{display:grid;gap:var(--space-2)}.field-full[data-v-9092c5ad]{grid-column:1 / -1}.field-label[data-v-9092c5ad]{font-size:.82rem;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.input[data-v-9092c5ad]{padding:.5rem .75rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.9rem;color:var(--color-text);background:var(--color-surface);width:100%}.input[data-v-9092c5ad]:focus{outline:2px solid var(--color-accent);outline-offset:1px}textarea.input[data-v-9092c5ad]{resize:vertical;font-family:inherit}.materie-grid[data-v-9092c5ad]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.materia-check[data-v-9092c5ad]{display:flex;align-items:center;gap:var(--space-2);padding:.35rem .75rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.88rem;cursor:pointer;color:var(--color-text-muted);background:var(--color-surface-subtle)}.materia-check.is-checked[data-v-9092c5ad]{border-color:var(--color-accent);background:var(--color-accent-bg);color:var(--color-accent);font-weight:700}.materia-check input[type=checkbox][data-v-9092c5ad]{accent-color:var(--color-accent)}.form-actions[data-v-9092c5ad],.stat-row[data-v-9092c5ad]{display:flex;gap:var(--space-3)}.stat-chip[data-v-9092c5ad]{padding:.3rem .75rem;border-radius:var(--radius-full);font-size:.82rem;font-weight:700;background:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border-light)}.stat-chip-green[data-v-9092c5ad]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text);border-color:var(--stato-pubblicato-bg)}.sessione-row[data-v-9092c5ad]{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:grid;gap:var(--space-3)}.sessione-main[data-v-9092c5ad]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.sessione-info[data-v-9092c5ad]{display:grid;gap:2px}.sessione-titolo[data-v-9092c5ad]{font-size:1rem;font-weight:700;color:var(--color-text)}.sessione-date[data-v-9092c5ad]{font-size:.82rem;color:var(--color-text-muted)}.sessione-count[data-v-9092c5ad]{font-size:.8rem;color:var(--color-text-subtle)}.sessione-note[data-v-9092c5ad]{margin:0;font-size:.85rem;color:var(--color-text-muted)}.sessione-actions[data-v-9092c5ad]{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.materie-tags[data-v-9092c5ad]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tag[data-v-9092c5ad]{padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.78rem;background:var(--color-accent-light);color:var(--color-accent-dark);font-weight:600}.stato-badge[data-v-9092c5ad]{display:inline-block;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;white-space:nowrap}.stato-badge[data-stato=APERTA][data-v-9092c5ad]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text)}.stato-badge[data-stato=CHIUSA][data-v-9092c5ad]{background:var(--stato-chiuso-bg);color:var(--stato-chiuso-text)}.btn[data-v-9092c5ad]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;text-decoration:none;white-space:nowrap;display:inline-block;text-align:center}.btn-sm[data-v-9092c5ad]{padding:.35rem .75rem;font-size:.85rem}.btn-primary[data-v-9092c5ad]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-primary[data-v-9092c5ad]:disabled{opacity:.6;cursor:not-allowed}.btn-outline[data-v-9092c5ad]{background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border-input)}.btn-outline[data-v-9092c5ad]:disabled{opacity:.6;cursor:not-allowed}.hint[data-v-9092c5ad]{margin:0;color:var(--color-text-muted)}.msg-error[data-v-9092c5ad]{margin:0;color:var(--color-error-text);padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}@media(max-width:700px){.form-grid[data-v-9092c5ad]{grid-template-columns:1fr}.field-full[data-v-9092c5ad]{grid-column:1}}.view[data-v-f48c3844]{display:grid;gap:var(--space-5)}.page-header[data-v-f48c3844]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);flex-wrap:wrap}.eyebrow[data-v-f48c3844]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand)}h1[data-v-f48c3844]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}.subtitle[data-v-f48c3844]{margin:.3rem 0 0;color:var(--color-text-muted)}.filter-bar[data-v-f48c3844]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.filter-field[data-v-f48c3844]{display:grid;gap:var(--space-1);min-width:160px}.filter-field-sm[data-v-f48c3844]{min-width:90px;max-width:110px}.filter-label[data-v-f48c3844]{font-size:.75rem;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.input[data-v-f48c3844]{padding:.4rem .65rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.88rem;color:var(--color-text);background:var(--color-surface);width:100%}.input[data-v-f48c3844]:focus{outline:2px solid var(--color-accent);outline-offset:1px}.filter-btn[data-v-f48c3844]{margin-top:auto;align-self:flex-end}.result-count[data-v-f48c3844]{font-size:.85rem;color:var(--color-text-muted)}.table-wrapper[data-v-f48c3844]{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.table[data-v-f48c3844]{width:100%;border-collapse:collapse;font-size:.9rem}.table th[data-v-f48c3844]{text-align:left;padding:var(--space-2) var(--space-3);font-size:.75rem;color:var(--color-text-subtle);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border);background:var(--color-surface-subtle)}.table td[data-v-f48c3844]{padding:var(--space-3);border-bottom:1px solid var(--color-border-light);color:var(--color-text);vertical-align:middle}.table tr:last-child td[data-v-f48c3844]{border-bottom:none}.table tr:hover td[data-v-f48c3844]{background:var(--color-surface-subtle)}.col-num[data-v-f48c3844]{color:var(--color-text-subtle);font-size:.82rem;width:36px;text-align:right}.col-date[data-v-f48c3844]{font-size:.82rem;color:var(--color-text-muted);white-space:nowrap}.col-sessione[data-v-f48c3844]{font-size:.85rem;color:var(--color-text-muted);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studente-cell[data-v-f48c3844]{display:grid;gap:1px}.email[data-v-f48c3844]{font-size:.78rem;color:var(--color-text-subtle)}.mono[data-v-f48c3844]{font-family:monospace;font-size:.95rem;font-weight:700}.stato-badge[data-v-f48c3844]{display:inline-block;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;white-space:nowrap}.stato-badge[data-stato=PRE_ISCRITTO][data-v-f48c3844]{background:var(--stato-bozza-bg);color:var(--stato-bozza-text)}.stato-badge[data-stato=ACCETTATO][data-v-f48c3844]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text)}.stato-badge[data-stato=IN_CODA][data-v-f48c3844]{background:var(--stato-completo-bg);color:var(--stato-completo-text)}.stato-badge[data-stato=ESCLUSO][data-v-f48c3844]{background:var(--stato-annullato-bg);color:var(--stato-annullato-text)}.stato-badge[data-stato=RITIRATO][data-v-f48c3844]{background:var(--stato-chiuso-bg);color:var(--stato-chiuso-text)}.btn[data-v-f48c3844]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;text-decoration:none;white-space:nowrap;display:inline-block;text-align:center;font-size:.9rem}.btn-primary[data-v-f48c3844]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-outline[data-v-f48c3844]{background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border-input)}.hint[data-v-f48c3844]{margin:0;color:var(--color-text-muted)}.msg-error[data-v-f48c3844]{margin:0;color:var(--color-error-text);padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}.view[data-v-b01bd83b]{display:grid;gap:var(--space-5)}.page-header[data-v-b01bd83b]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);flex-wrap:wrap}.eyebrow[data-v-b01bd83b]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand)}h1[data-v-b01bd83b]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}h2[data-v-b01bd83b]{margin:0;font-size:1.15rem;color:var(--color-text)}h3[data-v-b01bd83b]{margin:var(--space-4) 0 var(--space-2);font-size:.95rem;color:var(--color-text)}.subtitle[data-v-b01bd83b]{margin:.3rem 0 0;color:var(--color-text-muted);max-width:60ch}.card[data-v-b01bd83b]{display:grid;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.card-head[data-v-b01bd83b]{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.hint-sm[data-v-b01bd83b]{font-size:.8rem;color:var(--color-text-subtle);margin:0}.hint-sm code[data-v-b01bd83b],.report-list code[data-v-b01bd83b]{font-family:monospace}.soglie-row[data-v-b01bd83b]{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.filter-bar[data-v-b01bd83b]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.filter-field[data-v-b01bd83b]{display:grid;gap:var(--space-1);min-width:160px}.filter-field-sm[data-v-b01bd83b]{min-width:90px;max-width:130px}.filter-label[data-v-b01bd83b]{font-size:.75rem;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.input[data-v-b01bd83b]{padding:.4rem .65rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.88rem;color:var(--color-text);background:var(--color-surface);width:100%}.input[data-v-b01bd83b]:focus{outline:2px solid var(--color-accent);outline-offset:1px}textarea.input[data-v-b01bd83b]{resize:vertical;font-family:inherit}.mono-input[data-v-b01bd83b]{font-family:monospace;font-size:.82rem}.csv-input[data-v-b01bd83b]{display:grid;gap:var(--space-2)}.compose-actions[data-v-b01bd83b]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.import-report[data-v-b01bd83b]{display:grid;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.report-summary[data-v-b01bd83b]{margin:0;font-size:.85rem;font-weight:700;color:var(--color-text-muted)}.report-list[data-v-b01bd83b]{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:220px;overflow-y:auto}.report-list li[data-v-b01bd83b]{display:flex;gap:var(--space-2);font-size:.82rem;padding:1px 0}.row-err[data-v-b01bd83b]{color:var(--color-error-text)}.pending-list[data-v-b01bd83b]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.pending-row[data-v-b01bd83b]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pending-email[data-v-b01bd83b]{flex:1 1 240px;font-size:.85rem}.pending-classe[data-v-b01bd83b]{max-width:120px}.btn-sm[data-v-b01bd83b]{padding:.35rem .7rem;font-size:.82rem}.corsi[data-v-b01bd83b]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.corso[data-v-b01bd83b]{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.corso-row[data-v-b01bd83b]{width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:none;cursor:pointer;text-align:left;flex-wrap:wrap}.corso-row[data-v-b01bd83b]:hover{background:var(--color-surface-subtle)}.corso-main[data-v-b01bd83b]{display:grid;gap:1px}.corso-sub[data-v-b01bd83b]{font-size:.8rem;color:var(--color-text-subtle)}.corso-meta[data-v-b01bd83b]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:.82rem;color:var(--color-text-muted)}.cap[data-v-b01bd83b]{font-weight:700}.dettaglio[data-v-b01bd83b]{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--color-border-light);background:var(--color-surface-subtle)}.table[data-v-b01bd83b]{width:100%;border-collapse:collapse;font-size:.88rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.table th[data-v-b01bd83b]{text-align:left;padding:var(--space-2) var(--space-3);font-size:.72rem;color:var(--color-text-subtle);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border)}.table td[data-v-b01bd83b]{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-light);color:var(--color-text)}.table tr:last-child td[data-v-b01bd83b]{border-bottom:none}.mono[data-v-b01bd83b]{font-family:monospace;font-weight:700}.stato-badge[data-v-b01bd83b]{display:inline-block;padding:.2rem .55rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;white-space:nowrap}.stato-badge[data-stato=BOZZA][data-v-b01bd83b]{background:var(--stato-bozza-bg);color:var(--stato-bozza-text)}.stato-badge[data-stato=PUBBLICATO][data-v-b01bd83b]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text)}.stato-badge[data-stato=COMPLETO][data-v-b01bd83b]{background:var(--stato-completo-bg);color:var(--stato-completo-text)}.stato-badge[data-stato=ANNULLATO][data-v-b01bd83b]{background:var(--stato-annullato-bg);color:var(--stato-annullato-text)}.stato-badge[data-stato=CHIUSO][data-v-b01bd83b]{background:var(--stato-chiuso-bg);color:var(--stato-chiuso-text)}.btn[data-v-b01bd83b]{padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none;text-decoration:none;white-space:nowrap;display:inline-block;text-align:center;font-size:.88rem}.btn[data-v-b01bd83b]:disabled{opacity:.55;cursor:default}.btn-primary[data-v-b01bd83b]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-outline[data-v-b01bd83b]{background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border-input)}.hint[data-v-b01bd83b]{margin:0;color:var(--color-text-muted)}.msg-error[data-v-b01bd83b]{margin:0;color:var(--color-error-text);padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}.msg-ok[data-v-b01bd83b]{margin:0;color:var(--stato-pubblicato-text);padding:var(--space-2) var(--space-4);background:var(--stato-pubblicato-bg);border-radius:var(--radius-md);font-size:.88rem}.view[data-v-51254c90]{display:grid;gap:var(--space-5)}.page-header[data-v-51254c90]{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);flex-wrap:wrap}.eyebrow[data-v-51254c90]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand)}h1[data-v-51254c90]{margin:.3rem 0 0;font-size:1.8rem;color:var(--color-text)}.subtitle[data-v-51254c90]{margin:.3rem 0 0;color:var(--color-text-muted)}.form-card[data-v-51254c90],.result-card[data-v-51254c90]{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);display:grid;gap:var(--space-4)}.field[data-v-51254c90]{display:grid;gap:var(--space-2)}.field-label[data-v-51254c90]{font-size:.82rem;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.input[data-v-51254c90]{padding:.5rem .75rem;border:1px solid var(--color-border-input);border-radius:var(--radius-md);font-size:.9rem;color:var(--color-text);background:var(--color-surface);width:100%}.input[data-v-51254c90]:focus{outline:2px solid var(--color-accent);outline-offset:1px}.form-actions[data-v-51254c90]{display:flex;gap:var(--space-3)}.result-head[data-v-51254c90]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.result-email[data-v-51254c90]{font-size:1rem;font-weight:700;color:var(--color-text)}.class-badge[data-v-51254c90]{display:inline-block;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:700;white-space:nowrap;background:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border-light)}.class-badge[data-class=DOCENTE][data-v-51254c90],.class-badge[data-class=STUDENTE][data-v-51254c90]{background:var(--stato-pubblicato-bg);color:var(--stato-pubblicato-text);border-color:var(--stato-pubblicato-bg)}.class-badge[data-class=NON_AUTORIZZATO][data-v-51254c90]{background:var(--color-danger-bg);color:var(--color-error-text);border-color:var(--color-danger-border)}.kv[data-v-51254c90]{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-2) var(--space-4);margin:0}.kv dt[data-v-51254c90]{font-size:.82rem;font-weight:700;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.kv dd[data-v-51254c90]{margin:0;color:var(--color-text);font-size:.9rem}.detail[data-v-51254c90]{margin:0;color:var(--color-text-muted);font-size:.88rem}.btn[data-v-51254c90]{padding:.55rem 1rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;border:none}.btn-primary[data-v-51254c90]{background:var(--color-accent);color:#fff;border:1px solid var(--color-accent)}.btn-primary[data-v-51254c90]:disabled{opacity:.6;cursor:not-allowed}.msg-error[data-v-51254c90]{margin:0;color:var(--color-error-text);padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/titillium-web-latin-ext-300-normal-BKKZ-LnS.woff2) format("woff2"),url(/assets/titillium-web-latin-ext-300-normal-C4mOs_zw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/titillium-web-latin-300-normal-ClR3VTtz.woff2) format("woff2"),url(/assets/titillium-web-latin-300-normal-CyvL0vd1.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/titillium-web-latin-ext-400-normal-Bot9mzhf.woff2) format("woff2"),url(/assets/titillium-web-latin-ext-400-normal-dam1wzvV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/titillium-web-latin-400-normal-BmGsO8Gb.woff2) format("woff2"),url(/assets/titillium-web-latin-400-normal--_2x2_rV.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/titillium-web-latin-ext-600-normal-u1udDzIn.woff2) format("woff2"),url(/assets/titillium-web-latin-ext-600-normal-CrXBuK16.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/titillium-web-latin-600-normal-DBtSc4_g.woff2) format("woff2"),url(/assets/titillium-web-latin-600-normal-DAj26wWp.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/titillium-web-latin-ext-700-normal-DeLo1m_T.woff2) format("woff2"),url(/assets/titillium-web-latin-ext-700-normal-CX1-8Oys.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Titillium Web;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/titillium-web-latin-700-normal-YDdGQjzo.woff2) format("woff2"),url(/assets/titillium-web-latin-700-normal-D73cfq1_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.landing[data-v-681b2644]{--blue-dark: #0b3659;--blue: #135987;--blue-light: #72b4e4;--navy-text: #142e57;--red: #e02526;--student-bg: #f1f7ff;--student-border: #d6e8fb;--student-accent: #4f83bc;--teacher-bg: #fff3f5;--teacher-border: #f7dce1;--teacher-accent: #ed4147;--header-h: 76px;position:relative;min-height:100vh;display:flex;flex-direction:column;font-family:Titillium Web,Segoe UI,system-ui,sans-serif;color:#fff;background-image:linear-gradient(90deg,#033358e0,#10588b99 45%,#2374ae47),var(--hero-image);background-size:cover;background-position:center 70%;background-color:var(--blue-dark)}.landing-header[data-v-681b2644]{height:var(--header-h);display:flex;align-items:center;padding:0 5vw;background:#04365bf2;border-bottom:1px solid rgba(255,255,255,.22)}.header-logo[data-v-681b2644]{height:68px;width:auto;object-fit:contain}.landing-main[data-v-681b2644]{flex:1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(420px,.9fr);align-items:center;gap:3vw;padding:3rem 6vw 5.5rem}.identity[data-v-681b2644]{align-self:start;padding-top:1rem}.school[data-v-681b2644]{display:flex;align-items:center;gap:1.1rem}.school-monogram[data-v-681b2644]{height:clamp(96px,9.4vw,158px);width:auto;object-fit:contain}.school-emblem[data-v-681b2644]{height:clamp(90px,8.8vw,148px);width:auto;object-fit:contain}.school-name[data-v-681b2644]{margin:0 0 0 .4rem;display:grid;line-height:1.15;font-size:clamp(1.5rem,2.6vw,2.2rem)}.school-line[data-v-681b2644]{font-weight:300}.school-line--main[data-v-681b2644]{font-weight:700}.title[data-v-681b2644]{margin:clamp(2rem,5vw,4rem) 0 0;font-size:clamp(64px,6vw + 1rem,100px);font-weight:700;line-height:.95;letter-spacing:-.01em;color:#fff;text-shadow:0 4px 24px rgba(3,36,62,.35)}.title span[data-v-681b2644]{background:linear-gradient(180deg,#ffffff 0%,var(--blue-light) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.subtitle[data-v-681b2644]{margin:.8rem 0 0;font-size:clamp(1.4rem,2vw,1.9rem);font-weight:300}.login-card[data-v-681b2644]{justify-self:end;width:100%;max-width:590px;padding:2.4rem 2.5rem 1.6rem;border-radius:24px;background:#fffffffa;color:var(--navy-text);box-shadow:0 24px 60px #03243e59}.card-brand[data-v-681b2644]{display:flex;align-items:center;justify-content:center;gap:.6rem;padding-bottom:1rem;margin:0 auto 1.2rem;max-width:330px;border-bottom:1px solid #e1e8f0;font-size:1.5rem;font-weight:700}.card-brand img[data-v-681b2644]{height:40px;width:auto;object-fit:contain}.login-card h2[data-v-681b2644]{margin:0 0 1.4rem;text-align:center;font-size:2.1rem;font-weight:700}.card-error[data-v-681b2644]{margin:0 0 1rem;padding:.7rem .9rem;border-radius:10px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:.95rem;line-height:1.4}.profile[data-v-681b2644]{margin-bottom:1rem;padding:1.1rem 1.2rem;border-radius:16px;border:1px solid var(--student-border);background:var(--student-bg)}.profile--docente[data-v-681b2644]{border-color:var(--teacher-border);background:var(--teacher-bg)}.profile-info[data-v-681b2644]{display:flex;align-items:center;gap:1.1rem}.profile-icon[data-v-681b2644]{flex:none;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:#dbe9fa;color:var(--student-accent)}.profile--docente .profile-icon[data-v-681b2644]{background:#fde1e5;color:var(--teacher-accent)}.profile h3[data-v-681b2644]{margin:0;font-size:1.5rem;font-weight:700}.profile p[data-v-681b2644]{margin:0;font-size:1.05rem;color:#4a5d78}.profile .profile-domain[data-v-681b2644]{font-weight:600;color:var(--navy-text)}.google-btn[data-v-681b2644]{width:100%;min-height:54px;display:flex;align-items:center;gap:.9rem;padding:0 1.1rem;border-radius:12px;border:1px solid #dfe5ec;background:#fff;box-shadow:0 2px 6px #142e5714;color:var(--navy-text);font:inherit;font-size:1.15rem;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.google-btn span[data-v-681b2644]{flex:1;text-align:center}.google-btn[data-v-681b2644]:hover{background:#f3f6fa;box-shadow:0 3px 10px #142e5724}.google-btn[data-v-681b2644]:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.card-note[data-v-681b2644]{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1.2rem 0 0;padding-top:1rem;border-top:1px solid #e1e8f0;font-size:.95rem;color:#4a5d78;text-align:center}.card-note svg[data-v-681b2644]{flex:none}.landing-footer[data-v-681b2644]{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.8rem 6vw;background:#03243eb8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:.9rem}.landing-footer p[data-v-681b2644]{margin:0}@media(max-width:1200px){.landing-main[data-v-681b2644]{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)}.login-card[data-v-681b2644]{padding:2rem 1.8rem 1.4rem}}@media(max-width:767px){.landing[data-v-681b2644]{--header-h: 64px;background-position:30% 70%}.header-logo[data-v-681b2644]{height:46px}.landing-main[data-v-681b2644]{grid-template-columns:minmax(0,1fr);gap:2rem;padding:2rem 16px 7rem}.identity[data-v-681b2644]{padding-top:0}.school[data-v-681b2644]{gap:.7rem}.school-name[data-v-681b2644]{font-size:1.15rem}.title[data-v-681b2644]{margin-top:1.6rem;font-size:clamp(48px,16vw,72px)}.login-card[data-v-681b2644]{justify-self:center;width:calc(100% + -0px);max-width:520px;padding:1.6rem 1.2rem 1.2rem}.profile-icon[data-v-681b2644]{width:60px;height:60px}.landing-footer[data-v-681b2644]{flex-direction:column;align-items:flex-start;gap:.4rem}}.view[data-v-6763a808]{display:grid;gap:var(--space-5)}.view-head[data-v-6763a808]{display:grid;gap:.25rem}.eyebrow[data-v-6763a808]{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-accent)}h1[data-v-6763a808]{margin:0;font-size:1.8rem;color:var(--color-text)}.config-form[data-v-6763a808]{max-width:44rem;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-card);display:grid;gap:var(--space-3)}.form-row[data-v-6763a808]{display:grid;grid-template-columns:3fr 1fr;gap:var(--space-3)}.form-row--due[data-v-6763a808]{grid-template-columns:1fr 1fr}.form-label[data-v-6763a808]{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--color-text-subtle)}.form-label input[data-v-6763a808]{padding:.45rem .65rem;border:1px solid var(--color-border-input, var(--color-border));border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text);font-size:.95rem}.campo[data-v-6763a808]{display:grid;gap:.35rem;align-content:start}.field-note[data-v-6763a808]{margin:0;font-size:.8rem;font-weight:400;color:var(--color-text-muted)}.form-check[data-v-6763a808]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--color-text-subtle);cursor:pointer}.form-actions[data-v-6763a808]{display:flex;flex-wrap:wrap;gap:var(--space-3)}.hint[data-v-6763a808]{margin:0;color:var(--color-text-muted)}.success[data-v-6763a808]{margin:0;color:var(--color-success-text, var(--color-accent));font-size:.9rem}.error[data-v-6763a808]{margin:0;color:var(--color-error-text)}@media(max-width:640px){.form-row[data-v-6763a808],.form-row--due[data-v-6763a808]{grid-template-columns:1fr}}
