@import "https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;900&family=Rajdhani:wght@400;500;600;700&family=Share+Tech+Mono&display=swap";html{--cp-bg:#07070d;--cp-bg-2:#0d0d1a;--cp-panel:#101022db;--cp-cyan:#00f0ff;--cp-magenta:#ff2a6d;--cp-yellow:#f9f002;--cp-violet:#b026ff;--cp-green:#39ff14;--cp-text:#d6f7ff;--cp-dim:#7b8fb0;--cp-font-display:"Orbitron", "Rajdhani", sans-serif;--cp-font-mono:"Share Tech Mono", ui-monospace, monospace;--cp-cut:14px;--lumo-font-family:"Rajdhani", "Segoe UI", sans-serif;--lumo-font-size-m:1.05rem;--lumo-base-color:var(--cp-bg);--lumo-body-text-color:var(--cp-text);--lumo-header-text-color:#fff;--lumo-secondary-text-color:var(--cp-dim);--lumo-tertiary-text-color:#56607a;--lumo-primary-color:var(--cp-cyan);--lumo-primary-color-50pct:#00f0ff80;--lumo-primary-color-10pct:#00f0ff1f;--lumo-primary-text-color:var(--cp-cyan);--lumo-primary-contrast-color:#000;--lumo-error-color:var(--cp-magenta);--lumo-error-text-color:var(--cp-magenta);--lumo-success-color:var(--cp-green);--lumo-success-text-color:var(--cp-green);--lumo-contrast-5pct:#00f0ff0d;--lumo-contrast-10pct:#00f0ff1a;--lumo-contrast-20pct:#00f0ff33;--lumo-border-radius-s:0;--lumo-border-radius-m:0;--lumo-border-radius-l:0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background-color:var(--cp-bg);background-image:radial-gradient(at 15% -10%,#b026ff38,#0000 55%),radial-gradient(at 110% 110%,#00f0ff29,#0000 50%),linear-gradient(#00f0ff0b 1px,#0000 1px),linear-gradient(90deg,#00f0ff0b 1px,#0000 1px);background-size:auto,auto,42px 42px,42px 42px;background-attachment:fixed}body:after{content:"";pointer-events:none;z-index:10000;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 3px);position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--cp-font-display);letter-spacing:.06em;text-transform:uppercase}::selection{background:var(--cp-magenta);color:#000}a{color:var(--cp-yellow)}vaadin-app-layout::part(navbar){border-bottom:1px solid var(--cp-magenta);background:linear-gradient(90deg,#07070df5,#1e0628f5);box-shadow:0 0 18px #ff2a6d73}vaadin-app-layout::part(drawer){background:#07070df7;border-right:1px solid #00f0ff59}.cp-logo{font-family:var(--cp-font-display);letter-spacing:.22em;color:var(--cp-cyan);text-shadow:0 0 6px var(--cp-cyan), 0 0 18px #00f0ff99;white-space:nowrap;margin:0 .6em;font-size:1.35rem;font-weight:900}.cp-logo .cp-logo-slash{color:var(--cp-magenta);text-shadow:0 0 8px var(--cp-magenta)}.cp-utente{font-family:var(--cp-font-mono);color:var(--cp-yellow);white-space:nowrap;margin-left:auto;padding-right:.5em}vaadin-side-nav-item::part(content){font-family:var(--cp-font-display);letter-spacing:.12em;font-size:.82rem}vaadin-side-nav-item[current]::part(content){color:var(--cp-yellow);text-shadow:0 0 8px #f9f00299}vaadin-side-nav-item[current]{border-left:3px solid var(--cp-yellow);background:linear-gradient(90deg,#f9f0021f,#0000)}.cp-pagina{padding:var(--lumo-space-l);box-sizing:border-box;width:100%;max-width:1500px;margin:0 auto}@media (width<=640px){.cp-pagina{padding:var(--lumo-space-s)}}.cp-titolo{font-family:var(--cp-font-display);color:#fff;text-shadow:2px 0 var(--cp-magenta), -2px 0 var(--cp-cyan);margin:0 0 .2em;font-size:clamp(1.6rem,4vw,2.8rem);font-weight:900;position:relative}.cp-titolo:before,.cp-titolo:after{content:attr(data-text);pointer-events:none;width:100%;position:absolute;top:0;left:0;overflow:hidden}.cp-titolo:before{color:var(--cp-cyan);clip-path:inset(0 0 60%);animation:3.2s step-end infinite cp-glitch-1}.cp-titolo:after{color:var(--cp-magenta);clip-path:inset(55% 0 0);animation:2.7s step-end infinite cp-glitch-2}@keyframes cp-glitch-1{0%,92%,to{opacity:0;transform:none}93%{opacity:.9;transform:translate(-4px,-1px)}96%{opacity:.9;transform:translate(3px,1px)}}@keyframes cp-glitch-2{0%,88%,to{opacity:0;transform:none}89%{opacity:.9;transform:translate(4px,1px)}94%{opacity:.9;transform:translate(-3px)}}@media (prefers-reduced-motion:reduce){.cp-titolo:before,.cp-titolo:after{animation:none}}.cp-sottotitolo{font-family:var(--cp-font-mono);color:var(--cp-dim);margin:0 0 var(--lumo-space-l);letter-spacing:.05em}.cp-sottotitolo b{color:var(--cp-yellow);font-weight:400}.cp-panel{background:var(--cp-panel);padding:var(--lumo-space-m) var(--lumo-space-l);clip-path:polygon(0 0, calc(100% - var(--cp-cut)) 0, 100% var(--cp-cut), 100% 100%, var(--cp-cut) 100%, 0 calc(100% - var(--cp-cut)));box-sizing:border-box;border:1px solid #00f0ff73;position:relative;box-shadow:inset 0 0 24px #00f0ff12}.cp-panel.magenta{border-color:#ff2a6d99;box-shadow:inset 0 0 24px #ff2a6d17}.cp-panel.giallo{border-color:#f9f0028c;box-shadow:inset 0 0 24px #f9f00212}.cp-panel.viola{border-color:#b026ff99;box-shadow:inset 0 0 24px #b026ff1a}.cp-panel-titolo{font-family:var(--cp-font-display);letter-spacing:.25em;text-transform:uppercase;color:var(--cp-cyan);margin:0 0 var(--lumo-space-s);align-items:center;gap:.5em;font-size:.78rem;display:flex}.cp-panel-titolo:before{content:"//";color:var(--cp-magenta)}.cp-panel.magenta .cp-panel-titolo{color:var(--cp-magenta)}.cp-panel.magenta .cp-panel-titolo:before{color:var(--cp-cyan)}.cp-panel.giallo .cp-panel-titolo{color:var(--cp-yellow)}.cp-panel.viola .cp-panel-titolo{color:#d68bff}.cp-griglia{gap:var(--lumo-space-m);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));width:100%;display:grid}@media (width<=400px){.cp-griglia{grid-template-columns:1fr}}.cp-campo{margin-bottom:var(--lumo-space-s);flex-direction:column;min-width:0;display:flex}.cp-campo-label{font-family:var(--cp-font-mono);color:var(--cp-dim);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.cp-campo-valore{color:var(--cp-text);white-space:pre-line;overflow-wrap:anywhere;font-size:1.08rem}.cp-campo-valore.mono{font-family:var(--cp-font-mono);color:var(--cp-yellow)}.cp-campo-valore a{color:var(--cp-cyan);border-bottom:1px dashed #00f0ff80;text-decoration:none}.cp-vuoto{color:#4b5570;font-style:italic}.cp-riga-azioni{flex-wrap:wrap;align-items:center;gap:.3em;display:flex}.cp-sapere{margin:0;padding:0;list-style:none}.cp-sapere li{overflow-wrap:anywhere;border-bottom:1px solid #00f0ff1f;padding:.55em .4em .55em 1.8em;line-height:1.45;position:relative}.cp-sapere li:before{content:"▸";color:var(--cp-magenta);text-shadow:0 0 6px var(--cp-magenta);position:absolute;left:.4em}.cp-sapere li:last-child{border-bottom:none}.cp-sapere strong{color:var(--cp-yellow);font-weight:600}.cp-sapere a{color:var(--cp-cyan)}.cp-card{cursor:pointer;flex-direction:column;gap:.35em;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.cp-card:hover,.cp-card:focus-visible{border-color:var(--cp-magenta);outline:none;transform:translateY(-2px);box-shadow:inset 0 0 28px #ff2a6d2e,0 0 14px #ff2a6d59}.cp-card-nome{font-family:var(--cp-font-display);color:#fff;letter-spacing:.06em;text-transform:uppercase;font-size:1.1rem;font-weight:700}.cp-card-meta{font-family:var(--cp-font-mono);color:var(--cp-dim);font-size:.85rem}.cp-chip{font-family:var(--cp-font-mono);border:1px solid var(--cp-cyan);color:var(--cp-cyan);white-space:nowrap;background:#00f0ff12;margin:0 .3em .3em 0;padding:.1em .55em;font-size:.78rem;display:inline-block}.cp-chip.oggi{border-color:var(--cp-yellow);color:#000;background:var(--cp-yellow);box-shadow:0 0 10px #f9f00299}.cp-chip.magenta{border-color:var(--cp-magenta);color:var(--cp-magenta);background:#ff2a6d14}.cp-settimana{gap:var(--lumo-space-s);grid-template-columns:repeat(6,minmax(180px,1fr));width:100%;display:grid;overflow-x:auto}@media (width<=1100px){.cp-settimana{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.cp-giorno{padding:var(--lumo-space-s);min-height:120px}.cp-giorno.oggi{border-color:var(--cp-yellow);box-shadow:inset 0 0 30px #f9f0021f,0 0 18px #f9f00240}.cp-giorno-nome{font-family:var(--cp-font-display);letter-spacing:.2em;color:var(--cp-cyan);margin-bottom:var(--lumo-space-s);justify-content:space-between;font-weight:700;display:flex}.cp-giorno.oggi .cp-giorno-nome{color:var(--cp-yellow)}.cp-slot{border-left:3px solid var(--cp-magenta);cursor:pointer;background:#ff2a6d0f;margin-bottom:.45em;padding:.45em .55em;transition:background .1s;display:block}.cp-slot:hover,.cp-slot:focus-visible{background:#ff2a6d2e;outline:none}.cp-slot-ora{font-family:var(--cp-font-mono);color:var(--cp-yellow);font-size:.9rem}.cp-slot-comune{text-transform:uppercase;letter-spacing:.04em;font-weight:700}.cp-slot-meta{font-family:var(--cp-font-mono);color:var(--cp-dim);font-size:.78rem}.cp-login-box{width:min(420px,92vw);margin:8vh auto 0}.cp-login-box vaadin-login-form{--lumo-base-color:transparent}vaadin-login-form-wrapper{background:0 0}vaadin-button{font-family:var(--cp-font-display);letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}vaadin-button[theme~=primary]{background:var(--cp-cyan);color:#000;box-shadow:0 0 12px #00f0ff99}vaadin-button[theme~=error][theme~=primary]{background:var(--cp-magenta);color:#000;box-shadow:0 0 12px #ff2a6d99}vaadin-text-field,vaadin-text-area,vaadin-password-field,vaadin-select,vaadin-combo-box,vaadin-email-field{--vaadin-input-field-background:#00f0ff0f}vaadin-text-field::part(input-field),vaadin-text-area::part(input-field),vaadin-password-field::part(input-field),vaadin-select::part(input-field),vaadin-combo-box::part(input-field){font-family:var(--cp-font-mono);border-bottom:1px solid #00f0ff80}vaadin-grid{--vaadin-grid-cell-background:transparent;background:var(--cp-panel);font-family:var(--cp-font-mono);border:1px solid #00f0ff59}vaadin-grid::part(header-cell){color:var(--cp-magenta);font-family:var(--cp-font-display);letter-spacing:.12em;background:#ff2a6d1f;font-size:.75rem}vaadin-grid::part(cell){background:0 0;border-top-color:#00f0ff1f}vaadin-dialog-overlay::part(overlay){border:1px solid var(--cp-magenta);background:#0b0b17;box-shadow:0 0 30px #ff2a6d66}vaadin-notification-card::part(overlay){border:1px solid var(--cp-cyan);font-family:var(--cp-font-mono);background:#0b0b17}vaadin-notification-card[theme~=error]::part(overlay){border-color:var(--cp-magenta);color:var(--cp-magenta)}vaadin-notification-card[theme~=success]::part(overlay){border-color:var(--cp-green);color:var(--cp-green)}vaadin-upload{border:1px dashed var(--cp-cyan);padding:var(--lumo-space-m);background:#00f0ff0a}.cp-editor-turno{gap:var(--lumo-space-s);border-left:2px solid var(--cp-magenta);padding-left:var(--lumo-space-s);margin-bottom:var(--lumo-space-xs);flex-wrap:wrap;align-items:baseline;display:flex}.cp-terminale{font-family:var(--cp-font-mono);color:var(--cp-green);white-space:pre-wrap;margin:0}.cp-scheda{gap:var(--lumo-space-m);margin-top:var(--lumo-space-m);grid-template-columns:minmax(0,3fr) minmax(300px,2fr);align-items:start;display:grid}.cp-scheda-colonna{gap:var(--lumo-space-m);flex-direction:column;min-width:0;display:flex}@media (width<=900px){.cp-scheda{grid-template-columns:1fr}}@media print{body{background:#fff}body:after,vaadin-button,.cp-titolo:before,.cp-titolo:after{display:none!important}.cp-panel{clip-path:none;box-shadow:none;background:#fff;border:1px solid #000}.cp-titolo,.cp-panel-titolo,.cp-campo-valore,.cp-sapere li,.cp-sapere strong,.cp-campo-valore.mono{color:#000!important;text-shadow:none!important}}
