/* ==========================================================================
   Legal Challenge – Area riservata · tema grafico 2026
   Si appoggia a Bootstrap 4 del plugin e ne ridisegna l'aspetto.
   ========================================================================== */

@font-face{font-family:'Fraunces';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/fraunces-latin-opsz-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:'Fraunces';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/fraunces-latin-ext-opsz-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/inter-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/inter-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --ink:#0f2a3d; --ink2:#173d58; --bg:#ffffff; --card:#f3f8fc; --mute:#5c7285;
  --line:#dbe8f2; --accent:#1d78c9; --accent-d:#155ea0; --sky:#7cc0f2;
  --ok:#1f8a5c; --warn:#b26a00; --bad:#c0392b;
  --r:14px; --shadow:0 24px 50px -30px rgba(15,42,61,.45);
  --ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- base ---------- */
html{scroll-behavior:smooth}
body.lc-body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:15.5px;line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
.lc-body h1,.lc-body h2,.lc-body h3{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.lc-body a{color:var(--accent)}
.lc-body a:hover{color:var(--accent-d)}
.lc-wrap{width:min(1240px,100% - 40px);margin:0 auto}
.lc-muted{color:var(--mute)}
.lc-nowrap{white-space:nowrap}
.lc-eyebrow{margin:0 0 10px;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.lc-center{text-align:center}

/* animazione d'ingresso */
.lc-rise{opacity:0;transform:translateY(16px);animation:lcRise .8s var(--ease) forwards;animation-delay:var(--d,0s)}
@keyframes lcRise{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.lc-rise{animation:none;opacity:1;transform:none}.lc-orb{animation:none!important}}

/* ---------- pulsanti ---------- */
.lc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 24px;border-radius:100px;border:1.5px solid transparent;font:600 15px/1 Inter,sans-serif;text-decoration:none!important;cursor:pointer;transition:background-color .25s,color .25s,border-color .25s,transform .25s var(--ease),box-shadow .25s}
.lc-btn i{transition:transform .3s var(--ease)}
.lc-btn:hover i.fa-arrow-right{transform:translateX(4px)}
.lc-btn-primary{background:var(--ink);color:#fff!important;box-shadow:0 12px 24px -14px rgba(15,42,61,.8)}
.lc-btn-primary:hover{background:var(--accent);transform:translateY(-1px)}
.lc-btn-primary:active{transform:translateY(0)}
.lc-btn-primary.is-loading{pointer-events:none;opacity:.85}
.lc-btn-primary.is-loading i{animation:lcSpin .8s linear infinite}
@keyframes lcSpin{to{transform:rotate(360deg)}}
.lc-btn-block{width:100%}
.lc-btn-sm{padding:8px 14px;font-size:13.5px;gap:7px}
.lc-btn-ghost{background:transparent;color:var(--ink)!important;border-color:var(--line)}
.lc-btn-ghost:hover{border-color:var(--ink)}
.lc-btn-dark{background:var(--ink);color:#fff!important}
.lc-btn-dark:hover{background:var(--accent)}

/* Bootstrap: pulsanti del pannello */
.lc-body .btn{border-radius:100px;font-weight:600;padding:.5rem 1.15rem;transition:all .2s}
.lc-body .btn-primary{background:var(--ink);border-color:var(--ink)}
.lc-body .btn-primary:hover,.lc-body .btn-primary:focus{background:var(--accent);border-color:var(--accent)}
.lc-body .btn-secondary,.lc-body .btn-outline-secondary{background:#fff;color:var(--ink);border-color:var(--line)}
.lc-body .btn-secondary:hover,.lc-body .btn-outline-secondary:hover{background:var(--card);color:var(--ink);border-color:var(--ink)}
.lc-body .btn-danger{background:var(--bad);border-color:var(--bad)}
.lc-body .btn-sm{padding:.3rem .75rem;font-size:.82rem}
.lc-body .btn:focus,.lc-body .form-control:focus{box-shadow:0 0 0 4px rgba(29,120,201,.18)}

/* ---------- avvisi ---------- */
.lc-notice,.lc-body .alert{display:flex;gap:12px;align-items:flex-start;border:0;border-radius:12px;padding:14px 44px 14px 16px;font-size:14.5px;margin:0 0 16px;animation:lcShake .5s var(--ease)}
.lc-notice i{margin-top:3px}
.lc-body .alert-warning,.lc-notice-warning{background:#fff4e2;color:#7a4a00}
.lc-body .alert-danger{background:#fdecea;color:#8e2a1f}
.lc-body .alert-info,.lc-notice-info{background:#e8f3fc;color:#0f4f87}
.lc-body .alert-success,.lc-notice-success{background:#e6f5ee;color:#16603f}
.lc-body .alert-secondary{background:var(--card);color:var(--mute)}
.lc-body .alert .close{position:absolute;top:10px;right:12px;padding:0;opacity:.6;text-shadow:none}
@keyframes lcShake{0%{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}100%{transform:none}}
.lc-body .alert-success,.lc-body .alert-info{animation:lcRise .5s var(--ease)}

/* ==========================================================================
   PAGINE DI ACCESSO
   ========================================================================== */
.lc-auth{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;min-height:100dvh}
.lc-auth-aside{position:relative;overflow:hidden;background:var(--ink);color:#fff;display:flex;align-items:flex-end;padding:56px;isolation:isolate}
.lc-auth-photo{position:absolute;inset:-4%;background-size:cover;background-position:62% 50%;filter:saturate(1.1);animation:lcZoom 22s ease-in-out infinite alternate;z-index:-3}
@keyframes lcZoom{from{transform:scale(1)}to{transform:scale(1.08) translate(-1.5%,-1%)}}
.lc-auth-veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(160deg,rgba(15,42,61,.30) 0%,rgba(15,42,61,.72) 45%,rgba(10,30,46,.96) 100%)}
.lc-orb{position:absolute;border-radius:50%;filter:blur(2px);z-index:-1;pointer-events:none}
.lc-orb-1{width:340px;height:340px;right:-90px;top:-80px;background:radial-gradient(circle at 30% 30%,rgba(124,192,242,.55),rgba(29,120,201,0) 70%);animation:lcFloat 14s ease-in-out infinite}
.lc-orb-2{width:220px;height:220px;left:-60px;top:38%;background:radial-gradient(circle at 50% 50%,rgba(29,120,201,.45),rgba(29,120,201,0) 70%);animation:lcFloat 18s ease-in-out infinite reverse}
.lc-orb-3{width:120px;height:120px;right:18%;bottom:22%;border:1px solid rgba(255,255,255,.25);filter:none;animation:lcFloat 11s ease-in-out infinite}
@keyframes lcFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(18px,-22px)}}
.lc-auth-aside-in{max-width:520px}
.lc-auth-aside .lc-eyebrow{color:var(--sky)}
.lc-auth-aside h1{color:#fff;font-size:clamp(38px,4.4vw,60px);line-height:1.04;margin:0 0 18px}
.lc-auth-aside h1 em,.lc-welcome h1 em{font-style:italic;color:var(--sky)}
.lc-auth-lead{font-size:17px;line-height:1.6;color:rgba(255,255,255,.82);margin:0 0 28px;max-width:30em}
.lc-auth-points{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lc-auth-points li{display:flex;align-items:center;gap:14px;font-size:15px;color:rgba(255,255,255,.92)}
.lc-auth-points i{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:var(--sky);backdrop-filter:blur(6px)}

.lc-auth-main{display:flex;flex-direction:column;padding:32px clamp(24px,5vw,72px) 0;background:
  radial-gradient(900px 500px at 110% -10%,rgba(29,120,201,.08),transparent 60%),var(--bg)}
.lc-auth-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.lc-logo img{display:block;height:40px;width:auto}
.lc-back{font-size:14px;font-weight:500;color:var(--ink)!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:100px;transition:background-color .2s}
.lc-back:hover{background:var(--card)}
.lc-back i{transition:transform .25s var(--ease)}
.lc-back:hover i{transform:translateX(-3px)}
.lc-auth-card{width:min(440px,100%);margin:auto;padding:48px 0}
.lc-auth-card h2{font-size:clamp(28px,3vw,36px);line-height:1.15;margin:0 0 10px}
.lc-auth-card > .lc-muted{margin:0 0 26px}

/* campi con etichetta mobile */
.lc-form{display:grid;gap:16px}
.lc-field{position:relative}
.lc-field .form-control{height:58px;padding:22px 48px 6px 46px;border:1.5px solid var(--line);border-radius:12px;font-size:16px;color:var(--ink);background:#fff;transition:border-color .2s,box-shadow .2s,background-color .2s}
.lc-field .form-control:hover{border-color:#bcd3e5}
.lc-field .form-control:focus{border-color:var(--accent);background:#fff}
.lc-field label{position:absolute;left:46px;top:18px;font-size:15.5px;color:var(--mute);pointer-events:none;transform-origin:left top;transition:transform .2s var(--ease),color .2s;margin:0}
.lc-field .form-control:focus + label,.lc-field .form-control:not(:placeholder-shown) + label{transform:translateY(-10px) scale(.76);color:var(--accent);font-weight:600}
.lc-field-ic{position:absolute;left:17px;top:21px;color:#9ab0c2;font-size:15px;transition:color .2s}
.lc-field .form-control:focus ~ .lc-field-ic{color:var(--accent)}
.lc-eye{position:absolute;right:8px;top:9px;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--mute);cursor:pointer;transition:background-color .2s,color .2s}
.lc-eye:hover{background:var(--card);color:var(--ink)}
.lc-field label.error,.lc-form label.error{position:static;display:block;transform:none;margin:6px 2px 0;font-size:13px;color:var(--bad);font-weight:500}
.lc-field .form-control.error{border-color:var(--bad)}
.lc-caps{margin:-6px 2px 0;font-size:13px;color:var(--warn)}
.lc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.lc-link{font-size:14.5px;font-weight:500}

/* interruttore "Ricordami" */
.lc-switch{display:inline-flex;align-items:center;gap:10px;font-size:14.5px;cursor:pointer;margin:0;user-select:none}
.lc-switch input{position:absolute;opacity:0;width:1px;height:1px}
.lc-switch-track{width:40px;height:23px;border-radius:100px;background:#cfdde9;position:relative;transition:background-color .25s}
.lc-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .25s var(--ease)}
.lc-switch input:checked + .lc-switch-track{background:var(--accent)}
.lc-switch input:checked + .lc-switch-track::after{transform:translateX(17px)}
.lc-switch input:focus-visible + .lc-switch-track{box-shadow:0 0 0 4px rgba(29,120,201,.25)}

.lc-help{margin:26px 0 0;padding:14px 16px;border-radius:12px;background:var(--card);font-size:13.5px;color:var(--mute);display:flex;gap:10px}
.lc-help i{color:var(--accent);margin-top:3px}

/* passaggi recupero password */
.lc-steps{list-style:none;display:flex;gap:6px;margin:0 0 22px;padding:0;font-size:12.5px;font-weight:600;color:var(--mute)}
.lc-steps li{display:flex;align-items:center;gap:7px;flex:1}
.lc-steps li:not(:last-child)::after{content:"";flex:1;height:2px;border-radius:2px;background:var(--line)}
.lc-steps span{width:24px;height:24px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--card);border:1.5px solid var(--line);font-size:11.5px}
.lc-steps li.on{color:var(--ink)}
.lc-steps li.on span{background:var(--ink);border-color:var(--ink);color:#fff}
.lc-steps li.done span{background:var(--accent);border-color:var(--accent);color:#fff}
.lc-steps li.done::after{background:var(--accent)!important}

/* misuratore password */
.lc-meter{height:5px;border-radius:5px;background:var(--line);overflow:hidden;margin-top:-6px}
.lc-meter span{display:block;height:100%;width:0;border-radius:5px;background:var(--bad);transition:width .35s var(--ease),background-color .35s}
.lc-meter-label{margin:-8px 2px 0;font-size:12.5px;color:var(--mute)}

/* ==========================================================================
   BACHECHE
   ========================================================================== */
.lc-dash-page{background:linear-gradient(180deg,var(--card) 0,#fff 520px)}
.lc-topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.lc-topbar-in{display:flex;align-items:center;gap:18px;min-height:72px}
.lc-topbar .lc-logo img{height:34px}
.lc-topbar-label{padding-left:18px;border-left:1px solid var(--line);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.lc-user{margin-left:auto;display:flex;align-items:center;gap:10px}
.lc-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--ink));color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em}
.lc-user-name{font-size:14.5px;font-weight:500;margin-right:6px}

.lc-welcome{position:relative;overflow:hidden;background:var(--ink);color:#fff;isolation:isolate}
.lc-welcome::before{content:"";position:absolute;inset:0;z-index:-2;background:
  linear-gradient(115deg,rgba(15,42,61,1) 30%,rgba(23,61,88,.92) 65%,rgba(29,120,201,.85) 100%)}
.lc-welcome .lc-orb-1{right:-60px;top:-140px}
.lc-welcome .lc-orb-2{left:auto;right:30%;top:40%}
.lc-welcome-in{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:44px 0 40px;flex-wrap:wrap}
.lc-welcome .lc-eyebrow{color:var(--sky)}
.lc-welcome h1{color:#fff;font-size:clamp(30px,3.6vw,46px);line-height:1.08;margin:0 0 8px}
.lc-welcome p{margin:0;color:rgba(255,255,255,.8)}
.lc-stats{list-style:none;margin:0;padding:0;display:flex;gap:12px;flex-wrap:wrap}
.lc-stats li{min-width:118px;padding:14px 18px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}
.lc-stats b{display:block;font:500 30px/1 Fraunces,Georgia,serif;color:#fff}
.lc-stats span{display:block;margin-top:6px;font-size:12.5px;color:rgba(255,255,255,.75)}

.lc-dash{padding:32px 0 56px}
.lc-dash-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}
.lc-side,.lc-side-wrap{position:sticky;top:96px}
.lc-side-wrap .lc-side{position:static}
.lc-body .lc-side.nav-pills{gap:4px;padding:10px;border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:var(--shadow)}
.lc-body .lc-side .nav-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;color:var(--ink);font-weight:500;font-size:14.5px;transition:background-color .2s,color .2s,transform .2s var(--ease)}
.lc-body .lc-side .nav-link i{width:18px;text-align:center;color:var(--accent);transition:color .2s}
.lc-body .lc-side .nav-link b{margin-left:auto;font-size:12px;font-weight:600;padding:2px 9px;border-radius:100px;background:var(--card);color:var(--mute)}
.lc-body .lc-side .nav-link:hover{background:var(--card);transform:translateX(2px)}
.lc-body .lc-side .nav-link.active{background:var(--ink);color:#fff}
.lc-body .lc-side .nav-link.active i{color:var(--sky)}
.lc-body .lc-side .nav-link.active b{background:rgba(255,255,255,.15);color:#fff}

.lc-content{min-width:0}
.lc-content > .tab-pane{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;box-shadow:var(--shadow)}
.lc-content > .tab-pane.fade{transition:opacity .3s ease,transform .3s var(--ease);transform:translateY(8px)}
.lc-content > .tab-pane.fade.show{transform:none}
.lc-pane-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px;flex-wrap:wrap}
.lc-pane-head h2{font-size:28px;margin:0 0 4px}
.lc-pane-head p{margin:0}
.lc-search{position:relative;margin:0;flex:0 1 330px}
.lc-search i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--mute);font-size:13px}
.lc-search input{width:100%;height:44px;padding:0 16px 0 40px;border:1.5px solid var(--line);border-radius:100px;font:inherit;font-size:14.5px;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.lc-search input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px rgba(29,120,201,.15)}

/* elenco corsi */
.lc-courses{display:grid;gap:10px}
.lc-body .lc-course.card{border:1px solid var(--line)!important;border-radius:12px!important;overflow:hidden;transition:border-color .2s,box-shadow .25s,transform .25s var(--ease)}
.lc-body .lc-course.card:hover{border-color:#bcd3e5!important;box-shadow:0 14px 28px -22px rgba(15,42,61,.5);transform:translateY(-1px)}
.lc-body .lc-course .card-header{padding:0;background:#fff;border:0}
.lc-course-btn{display:flex;align-items:center;gap:16px;width:100%;padding:14px 18px;border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer}
.lc-course-btn:focus{outline:0}
.lc-course-btn:focus-visible{box-shadow:inset 0 0 0 3px rgba(29,120,201,.3)}
.lc-date{flex:none;width:62px;height:58px;border-radius:10px;background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:background-color .25s}
.lc-date b{font:500 22px/1 Fraunces,Georgia,serif;color:var(--ink)}
.lc-date span{font-size:11px;font-weight:600;color:var(--accent);margin-top:3px;white-space:nowrap}
.lc-course-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.lc-course-txt strong{font-weight:600;font-size:15.5px;line-height:1.35}
.lc-course-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--mute)}
.lc-course-meta i{margin-right:6px;color:#9ab0c2}
.lc-chev{flex:none;width:34px;height:34px;border-radius:50%;display:grid!important;place-items:center;background:var(--card);color:var(--ink);font-size:12px;transition:transform .35s var(--ease),background-color .25s,color .25s}
.lc-course-btn:not(.collapsed) .lc-chev{transform:rotate(180deg);background:var(--ink);color:#fff}
.lc-course-btn:not(.collapsed) .lc-date{background:#e1eefa}
.lc-body .lc-course .card-body{padding:4px 18px 18px 96px}
.lc-course-name{margin:0 0 10px;font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.lc-files{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lc-body .lc-files .list-group-item,.lc-files-personal li{padding:0;border:0;background:none}
.lc-files a{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)!important;text-decoration:none!important;font-weight:500;font-size:14.5px;transition:border-color .2s,background-color .2s,transform .2s var(--ease)}
.lc-files a:hover{border-color:var(--accent);background:#f7fbfe;transform:translateX(3px)}
.lc-file-ic{color:#d0473b;font-size:18px}
.lc-files-personal .lc-file-ic{color:var(--accent)}
.lc-files a > span:first-of-type{flex:1;min-width:0}
.lc-dl{flex:none;font-size:13px;font-weight:600;color:var(--accent);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:100px;background:var(--card);transition:background-color .2s,color .2s}
.lc-files a:hover .lc-dl{background:var(--accent);color:#fff}
.lc-empty{margin:6px 0 0;font-size:14px;color:var(--mute)}
.lc-empty i{margin-right:6px}
.lc-empty-box{text-align:center;padding:44px 20px;border:1.5px dashed var(--line);border-radius:12px;color:var(--mute)}
.lc-empty-box i{font-size:34px;color:#b5cadb;margin-bottom:12px}
.lc-empty-box p{margin:0}
.lc-course.lc-hide{display:none}

/* moduli nelle bacheche */
.lc-form-grid{grid-template-columns:1fr 1fr;gap:4px 20px}
.lc-span2{grid-column:1/-1}
.lc-body .form-group label{font-size:13.5px;font-weight:600;color:var(--ink);margin-bottom:6px}
.lc-body .form-control,.lc-body .custom-select,.lc-body .bootstrap-select>.dropdown-toggle{border:1.5px solid var(--line);border-radius:10px;min-height:44px;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.lc-body textarea.form-control{min-height:110px}
.lc-body .form-control:focus{border-color:var(--accent)}
.lc-body .form-text{font-size:12.5px}
.lc-body label.error{font-size:12.5px;color:var(--bad);font-weight:500;margin-top:4px}
.lc-body .form-control.error{border-color:var(--bad)}

/* pannello segreteria: schede, tabelle, finestre */
.lc-body .nav-tabs{border-bottom:1px solid var(--line);gap:4px}
.lc-body .nav-tabs .nav-link{border:0;border-bottom:2.5px solid transparent;border-radius:0;color:var(--mute);font-weight:600;font-size:14.5px;padding:10px 14px;transition:color .2s,border-color .2s}
.lc-body .nav-tabs .nav-link:hover{color:var(--ink);border-bottom-color:var(--line)}
.lc-body .nav-tabs .nav-link.active{color:var(--ink);background:transparent;border-bottom-color:var(--accent)}
.lc-body .table{color:var(--ink);font-size:14.5px}
.lc-body .table thead th,.lc-body .table tfoot th{border:0;background:var(--card);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.lc-body .table thead th:first-child{border-radius:10px 0 0 10px}
.lc-body .table thead th:last-child{border-radius:0 10px 10px 0}
.lc-body .table tfoot{display:none}
.lc-body .table td{border-top:1px solid var(--line);vertical-align:middle}
.lc-body .table-hover tbody tr{transition:background-color .15s}
.lc-body .table-hover tbody tr:hover{background:#f7fbfe}
.lc-body .dataTables_wrapper .dataTables_filter input,.lc-body .dataTables_wrapper .dataTables_length select{border:1.5px solid var(--line);border-radius:100px;padding:6px 14px;margin-left:8px}
.lc-body .dataTables_wrapper .dataTables_info{font-size:13px;color:var(--mute)}
.lc-body .page-item .page-link{border:0;border-radius:8px!important;margin:0 2px;color:var(--ink)}
.lc-body .page-item.active .page-link{background:var(--ink)}
.lc-body .modal-content{border:0;border-radius:18px;box-shadow:0 40px 80px -30px rgba(15,42,61,.55)}
.lc-body .modal-header,.lc-body .modal-footer{border-color:var(--line)}
.lc-body .modal-title{font-family:Fraunces,Georgia,serif;font-weight:500}
.lc-body .dropzone{background:var(--card);border:2px dashed #b5cadb;border-radius:14px;color:var(--mute);transition:border-color .2s,background-color .2s}
.lc-body .dropzone:hover{border-color:var(--accent);background:#eef6fd}
.lc-body .badge{border-radius:100px;font-weight:600;padding:.35em .7em}
.lc-body .badge-primary{background:var(--accent)}
.lc-body .card{border-color:var(--line);border-radius:12px}

.lc-panel{max-width:560px;margin:40px auto;padding:36px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.lc-panel h2{margin:0 0 8px}
.lc-panel .lc-btn{margin-top:18px}

/* ---------- piè di pagina ---------- */
.lc-footer{border-top:1px solid var(--line);font-size:13.5px;color:var(--mute);background:#fff}
.lc-footer-in{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding:22px 0}
.lc-footer-links{display:flex;gap:18px;flex-wrap:wrap}
.lc-footer a{color:var(--mute)!important}
.lc-footer a:hover{color:var(--ink)!important}
.lc-auth-main .lc-footer{border-top:1px solid var(--line);background:transparent;margin:0 calc(-1 * clamp(24px,5vw,72px));padding:0 clamp(24px,5vw,72px)}
.lc-auth-main .lc-footer .lc-wrap{width:100%}

/* ---------- schermi piccoli ---------- */
@media (max-width:980px){
  .lc-auth{grid-template-columns:1fr}
  .lc-auth-aside{min-height:300px;padding:120px 28px 32px;align-items:flex-end;order:0}
  .lc-auth-aside h1{font-size:clamp(32px,8vw,44px)}
  .lc-auth-points{display:none}
  .lc-auth-lead{margin:0;font-size:15.5px}
  .lc-auth-main{order:1;padding-top:0}
  .lc-auth-top{position:absolute;top:20px;left:24px;right:24px}
  .lc-auth-top .lc-logo{background:rgba(255,255,255,.92);padding:8px 12px;border-radius:12px}
  .lc-auth-top .lc-logo img{height:28px}
  .lc-auth-top .lc-back{background:rgba(255,255,255,.92)}
  .lc-auth-card{padding:32px 0 40px}
  .lc-dash-grid{grid-template-columns:1fr}
  .lc-side,.lc-side-wrap{position:static}
  .lc-body .lc-side.nav-pills{flex-direction:row!important;overflow-x:auto;scrollbar-width:none;box-shadow:none}
  .lc-body .lc-side .nav-link{white-space:nowrap}
  .lc-user-name,.lc-topbar-label{display:none}
}
@media (max-width:600px){
  .lc-wrap{width:calc(100% - 32px)}
  .lc-auth-top{left:16px;right:16px}
  .lc-auth-top .lc-back span,.lc-btn-sm span{display:none}
  .lc-auth-main{padding-left:16px;padding-right:16px}
  .lc-auth-main .lc-footer{margin:0 -16px;padding:0 16px}
  .lc-welcome-in{padding:30px 0 28px}
  .lc-stats li{min-width:0;flex:1;padding:12px}
  .lc-stats b{font-size:24px}
  .lc-content > .tab-pane{padding:18px}
  .lc-course-btn{padding:12px;gap:12px}
  .lc-date{width:52px;height:50px}
  .lc-body .lc-course .card-body{padding:4px 12px 14px}
  .lc-dl{padding:6px 9px}
  .lc-dl{font-size:0}
  .lc-dl i{font-size:13px}
  .lc-form-grid{grid-template-columns:1fr}
  .lc-topbar .lc-logo img{height:28px}
}

/* azioni nelle tabelle e paginazione */
.lc-body .table .btn{width:38px;height:38px;padding:0;display:inline-grid;place-items:center;border-radius:10px;margin:2px}
.lc-body .table .btn-warning,.lc-body .table .btn-info,.lc-body .table .btn-primary{background:var(--card);border:1px solid var(--line);color:var(--ink)}
.lc-body .table .btn-warning:hover,.lc-body .table .btn-info:hover,.lc-body .table .btn-primary:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.lc-body .table .btn-danger{background:#fff;border:1px solid #f1c9c4;color:var(--bad)}
.lc-body .table .btn-danger:hover{background:var(--bad);border-color:var(--bad);color:#fff}
.lc-body .page-item.active .page-link{color:#fff;border-color:var(--ink)}
.lc-body .dataTables_wrapper .dataTables_paginate .paginate_button{border-radius:8px}

/* ===== Accesso all'area riservata: stile blu del sito ===== */
@font-face{font-family:'Libre Franklin';font-style:normal;font-display:swap;font-weight:100 900;src:url(../../../../themes/legalchallenge/assets/fonts/libre-franklin-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:'Libre Franklin';font-style:normal;font-display:swap;font-weight:100 900;src:url(../../../../themes/legalchallenge/assets/fonts/libre-franklin-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
.lc-auth{--ink:#EEF4FF;--ink2:#C8D8F2;--bg:#06142E;--card:#0C2149;--mute:#A9BCDB;--line:#1C3566;--accent:#4DC3FF;--accent-d:#1F5CFF;--sky:#4DC3FF;background:#06142E;color:#EEF4FF;color-scheme:dark}
.lc-auth,.lc-auth *:not(i):not(.fa):not(.fas):not(.far){font-family:'Libre Franklin','Helvetica Neue',Arial,sans-serif !important}
.lc-auth h1,.lc-auth h2{font-weight:300;letter-spacing:-.02em}
.lc-auth-aside h1 em{font-style:normal;font-weight:800;color:#4DC3FF}
.lc-auth-photo{background-position:50% 40%;filter:none}
.lc-auth-veil{background:linear-gradient(160deg,rgba(3,12,32,.35) 0%,rgba(6,28,92,.6) 50%,rgba(3,12,32,.92) 100%)}
.lc-auth-main{background:#06142E !important;color:#EEF4FF}
.lc-auth-card h2{color:#fff}
.lc-auth .lc-eyebrow{color:#4DC3FF}
.lc-auth .lc-muted,.lc-auth p{color:#A9BCDB}
.lc-auth .lc-field .form-control{background:#0C2149;border-color:#1C3566;color:#fff}
.lc-auth .lc-field .form-control:hover{border-color:#2B4C8A}
.lc-auth .lc-field .form-control:focus{background:#0C2149;border-color:#4DC3FF;box-shadow:0 0 0 4px rgba(77,195,255,.18)}
.lc-auth .lc-field label{color:#A9BCDB}
.lc-auth .lc-field .form-control:focus + label,.lc-auth .lc-field .form-control:not(:placeholder-shown) + label{color:#4DC3FF}
.lc-auth .lc-field i,.lc-auth .lc-field .lc-field-ic{color:#6E8CBE}
.lc-auth input:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 40px #0C2149 inset;caret-color:#fff}
.lc-auth .lc-btn-dark,.lc-auth button[type=submit]{background:#1F5CFF !important;color:#fff !important;box-shadow:0 0 0 1px rgba(77,195,255,.35),0 16px 36px -14px rgba(31,92,255,.8)}
.lc-auth .lc-btn-dark:hover,.lc-auth button[type=submit]:hover{background:#3A72FF !important}
.lc-auth a{color:#4DC3FF}
.lc-auth .lc-back{background:rgba(238,244,255,.08);color:#EEF4FF;border-color:#1C3566}
.lc-auth .lc-logo img{filter:brightness(0) invert(1)}
.lc-auth .lc-note,.lc-auth .lc-info,.lc-auth .alert-info{background:#0C2149;color:#C8D8F2;border-color:#1C3566}
.lc-auth .custom-control-label::before,.lc-auth .lc-switch{background:#0C2149;border-color:#2B4C8A}
.lc-auth-main .lc-footer{border-top-color:#1C3566;color:#A9BCDB}
.lc-auth-main .lc-footer a{color:#A9BCDB}
@media (max-width:900px){.lc-auth-top .lc-logo,.lc-auth-top .lc-back{background:rgba(6,20,46,.75) !important}}

/* ===== Bacheca partecipanti e pannello segreteria: stile blu del sito ===== */
body.lc-dash-page{--ink:#EEF4FF;--ink2:#C8D8F2;--bg:#06142E;--card:#0C2149;--mute:#A9BCDB;--line:#1C3566;--accent:#4DC3FF;--accent-d:#1F5CFF;--sky:#4DC3FF;--shadow:0 24px 50px -30px rgba(0,0,0,.7);background:#06142E !important;color:#EEF4FF;color-scheme:dark}
body.lc-dash-page,body.lc-dash-page *:not(i):not(.fa):not(.fas):not(.far):not(.fab){font-family:'Libre Franklin','Helvetica Neue',Arial,sans-serif !important}
body.lc-dash-page h1,body.lc-dash-page h2,body.lc-dash-page h3{font-weight:300;letter-spacing:-.02em;color:#fff}
.lc-dash-page .lc-topbar{background:rgba(6,20,46,.92) !important;border-color:#1C3566 !important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lc-dash-page .lc-logo img{filter:brightness(0) invert(1)}
.lc-dash-page .lc-welcome{background:#071A3A url(../../../../themes/legalchallenge/assets/img/bg-grattacieli-basso.jpg) center 40%/cover no-repeat}
.lc-dash-page .lc-welcome::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(3,12,32,.9) 0%,rgba(6,28,92,.62) 55%,rgba(10,44,140,.35) 100%)}
.lc-dash-page .lc-welcome h1 em{font-style:normal;font-weight:800;color:#4DC3FF}
.lc-dash-page .lc-stats b{font-family:'Libre Franklin',Arial,sans-serif !important;font-weight:600}
.lc-dash-page .lc-stats > *{background:rgba(6,20,46,.45);border-color:rgba(77,195,255,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.lc-dash-page .lc-avatar{background:linear-gradient(135deg,#4DC3FF,#1F5CFF)}
.lc-dash-page .lc-btn-primary,.lc-dash-page .lc-btn-dark,.lc-dash-page .btn-primary{background:#1F5CFF !important;border-color:#1F5CFF !important;color:#fff !important;box-shadow:0 12px 26px -14px rgba(31,92,255,.9)}
.lc-dash-page .lc-btn-primary:hover,.lc-dash-page .lc-btn-dark:hover,.lc-dash-page .btn-primary:hover{background:#3A72FF !important}
.lc-dash-page .btn-secondary,.lc-dash-page .btn-outline-secondary,.lc-dash-page .btn-light{background:#0C2149;color:#EEF4FF;border-color:#1C3566}
.lc-dash-page .btn-secondary:hover,.lc-dash-page .btn-outline-secondary:hover{background:#13306A;border-color:#4DC3FF;color:#fff}
.lc-dash-page .lc-side.nav-pills,.lc-dash-page .lc-content > .tab-pane,.lc-dash-page .lc-panel,.lc-dash-page .card,.lc-dash-page .modal-content,.lc-dash-page .list-group-item{background:#0C2149 !important;border-color:#1C3566 !important;color:#EEF4FF}
.lc-dash-page .lc-side .nav-link{color:#C8D8F2}
.lc-dash-page .lc-side .nav-link:hover{background:#13306A}
.lc-dash-page .lc-side .nav-link.active{background:#1F5CFF;color:#fff}
.lc-dash-page .lc-course .card-header{background:#0C2149}
.lc-dash-page .lc-date{background:#13306A;color:#EEF4FF}
.lc-dash-page .lc-chev{background:#13306A;color:#EEF4FF}
.lc-dash-page .lc-course-btn:not(.collapsed) .lc-chev{background:#1F5CFF;color:#fff}
.lc-dash-page .lc-files a{background:#081A3D;border-color:#1C3566;color:#EEF4FF !important}
.lc-dash-page .lc-files a:hover{border-color:#4DC3FF}
.lc-dash-page .lc-dl{background:rgba(77,195,255,.14);color:#4DC3FF}
.lc-dash-page .lc-files a:hover .lc-dl{background:#1F5CFF;color:#fff}
.lc-dash-page .lc-footer{background:#030C20;border-top-color:#1C3566;color:#A9BCDB}
.lc-dash-page .lc-footer a{color:#A9BCDB}
.lc-dash-page .form-control,.lc-dash-page .custom-select,.lc-dash-page select,.lc-dash-page textarea,.lc-dash-page input[type=text],.lc-dash-page input[type=email],.lc-dash-page input[type=search],.lc-dash-page input[type=date],.lc-dash-page input[type=password]{background:#081A3D !important;color:#fff !important;border-color:#1C3566 !important}
.lc-dash-page .form-control:focus{border-color:#4DC3FF !important;box-shadow:0 0 0 4px rgba(77,195,255,.18) !important}
.lc-dash-page .form-control::placeholder{color:#6E8CBE}
.lc-dash-page label,.lc-dash-page .col-form-label{color:#C8D8F2}
.lc-dash-page .table{color:#EEF4FF;background:transparent}
.lc-dash-page .table td,.lc-dash-page .table th{border-color:#1C3566 !important;background:transparent}
.lc-dash-page .table thead th,.lc-dash-page .table tfoot th{background:#13306A;color:#A9BCDB}
.lc-dash-page .table-striped tbody tr:nth-of-type(odd),.lc-dash-page .table-hover tbody tr:hover{background:rgba(77,195,255,.05)}
.lc-dash-page .table .btn-warning,.lc-dash-page .table .btn-info,.lc-dash-page .table .btn-primary{background:#13306A !important;border-color:#1C3566 !important;color:#EEF4FF !important;box-shadow:none}
.lc-dash-page .table .btn-warning:hover,.lc-dash-page .table .btn-info:hover,.lc-dash-page .table .btn-primary:hover{background:#1F5CFF !important;border-color:#1F5CFF !important;color:#fff !important}
.lc-dash-page .table .btn-danger{background:transparent;border-color:rgba(255,120,110,.45);color:#FF8A80}
.lc-dash-page .table .btn-danger:hover{background:#C0392B;color:#fff}
.lc-dash-page .page-link{background:#0C2149;border-color:#1C3566;color:#C8D8F2}
.lc-dash-page .page-item.active .page-link{background:#1F5CFF;border-color:#1F5CFF;color:#fff}
.lc-dash-page .page-item.disabled .page-link{background:#0C2149;color:#4F6A96}
.lc-dash-page .dataTables_wrapper,.lc-dash-page .dataTables_info,.lc-dash-page .dataTables_length,.lc-dash-page .dataTables_filter{color:#A9BCDB}
.lc-dash-page .nav-tabs{border-color:#1C3566}
.lc-dash-page .nav-tabs .nav-link{color:#A9BCDB}
.lc-dash-page .nav-tabs .nav-link.active{background:transparent;color:#fff;border-color:transparent transparent #4DC3FF}
.lc-dash-page .dropzone{background:#081A3D;border-color:#2B4C8A;color:#A9BCDB}
.lc-dash-page .alert-secondary,.lc-dash-page .alert-info,.lc-dash-page .lc-help,.lc-dash-page .lc-empty{background:#0C2149;color:#C8D8F2;border-color:#1C3566}
.lc-dash-page .modal-header,.lc-dash-page .modal-footer{border-color:#1C3566}
.lc-dash-page .close{color:#fff;text-shadow:none;opacity:.8}
.lc-dash-page .lc-muted,.lc-dash-page .text-muted{color:#A9BCDB !important}
.lc-dash-page a{color:#4DC3FF}
.lc-dash-page .lc-search input{background:#081A3D !important}
.lc-dash-page .select2-container--default .select2-selection,.lc-dash-page .select2-dropdown{background:#081A3D;border-color:#1C3566;color:#fff}
.lc-dash-page .lc-course-btn:not(.collapsed) .lc-date,.lc-dash-page .lc-course-btn:hover .lc-date{background:#1F5CFF !important;color:#fff !important}
.lc-dash-page .lc-course-btn:not(.collapsed) .lc-date *,.lc-dash-page .lc-course-btn:hover .lc-date *{color:#fff !important}
