/* Calciostyle Academy — rendering lezioni nel portale (Strato 3) */

/* barra tab lezioni */
.csa-lesson-tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:820px;margin:0 auto 20px}
.csa-lesson-tabs button{
  border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;
  font-family:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s ease
}
.csa-lesson-tabs button .tn{font-family:'Space Mono',monospace;color:var(--brand);margin-right:5px}
.csa-lesson-tabs button:hover{border-color:var(--brand)}
.csa-lesson-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}
.csa-lesson-tabs button.active .tn{color:#fff}
.csa-lesson-tabs button.done::after{content:" ✓";color:#1c9e5e}
.csa-lesson-tabs button.active.done::after{color:#fff}

/* pannello lezione */
.csa-lesson-panel{display:none}
.csa-lesson-panel.active{display:block}

/* ---- stile "reading" (identico ai moduli) ---- */
.reading{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:44px 52px;max-width:820px;margin:0 auto}
@media(max-width:600px){.reading{padding:28px 22px}}
.reading .rk{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--brand)}
.reading h1{font-size:clamp(24px,3.6vw,34px);line-height:1.14;letter-spacing:-.02em;font-weight:800;margin:12px 0 8px;color:var(--ink)}
.reading .dek{font-size:18px;line-height:1.55;color:var(--ink-soft);font-weight:500;margin-bottom:24px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.reading p,.reading li{font-size:16px;line-height:1.75;color:#2a2b2f;font-weight:400}
.reading p{margin:0 0 17px}
.reading h2{font-size:13.5px;letter-spacing:.03em;text-transform:uppercase;font-weight:700;margin:34px 0 12px;color:var(--ink)}
.reading h2 .num{font-family:'Space Mono',monospace;color:var(--line-strong);margin-right:6px}
.reading h3{font-size:17px;font-weight:700;letter-spacing:-.01em;margin:22px 0 8px;color:var(--ink)}
.reading ul,.reading ol{margin:0 0 17px;padding-left:22px}
.reading li{margin-bottom:9px}
.reading strong{font-weight:600;color:var(--ink)}
.reading em{font-style:normal;font-weight:600;color:var(--brand-deep)}
.pullquote{border-left:4px solid var(--brand);padding:8px 0 8px 22px;margin:26px 0;font-size:20px;line-height:1.4;font-weight:600;color:var(--ink)}
.keybox{background:var(--brand-soft);border:1px solid #f6cfc7;border-radius:12px;padding:20px 24px;margin:26px 0}
.keybox .kbh{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--brand-deep);margin-bottom:10px}
.keybox ul{margin:0;padding-left:20px}
.keybox li{font-size:15px;line-height:1.6}
.figure{margin:26px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper-2)}
.figure .fig-cap{font-size:12px;color:var(--muted);padding:10px 16px;border-top:1px solid var(--line);background:#fff}
.figure .fig-cap b{color:var(--ink)}
.figure svg{display:block;width:100%;height:auto}
.sources{margin-top:32px;background:var(--ink);color:#e7e7e2;border-radius:12px;padding:22px 26px}
.sources h4{margin:0 0 12px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);font-weight:700}
.sources ul{margin:0;padding-left:18px}
.sources li{font-size:13px;line-height:1.6;color:#c9c8c3;margin-bottom:6px}
.sources li b{color:#fff;font-weight:600}
.reveal{opacity:1;transform:none} /* nel portale niente animazione scroll */

/* navigazione fondo lezione */
.csa-lesson-nav{max-width:820px;margin:22px auto 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* header del modulo */
.csa-module-head{max-width:820px;margin:0 auto 22px}
.csa-module-head .csa-back{font-size:13px;color:var(--muted);text-decoration:none}
.csa-module-head .csa-back:hover{color:var(--brand)}
.csa-module-head h1{font-size:26px;margin:10px 0 4px;line-height:1.2}
.csa-module-head .csa-mh-meta{font-size:13px;color:var(--muted)}

/* blocco quiz a fine modulo */
.csa-quiz-cta{max-width:820px;margin:26px auto 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 28px;text-align:center}
.csa-quiz-cta h3{margin:0 0 6px;font-size:19px}
.csa-quiz-cta p{margin:0 0 16px;color:var(--muted);font-size:14px}
.csa-quiz-cta .csa-soon{display:inline-block;padding:11px 18px;border-radius:10px;background:#f0efe9;color:#8a8578;font-weight:700;font-size:14px}

/* stati dashboard */
.csa-module-card.csa-available{cursor:pointer;opacity:1;transition:transform .1s ease,box-shadow .15s ease}
.csa-module-card.csa-available:hover{transform:translateY(-2px);box-shadow:0 10px 26px -14px rgba(23,24,28,.5)}
.csa-module-card.csa-completed{opacity:1;border-color:#bfe6cf;background:#f4fbf7}
.csa-module-card.csa-completed .csa-module-num{color:#1c9e5e}
.csa-module-card a.csa-module-link{position:absolute;inset:0;z-index:1;border-radius:14px}
.csa-badge-state{margin-left:auto;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px}
.csa-badge-state.s-available{background:var(--brand-soft);color:var(--brand-deep)}
.csa-badge-state.s-locked{background:#f0efe9;color:#8a8578}
.csa-badge-state.s-completed{background:#dbf3e6;color:#1c7a4a}
.csa-module-score{font-size:12px;color:#1c7a4a;margin-top:2px}


/* banner attestato completato (Strato 5) */
.csa-cert-banner{margin-top:20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(100deg,#17181c,#2b2c30);color:#fff;border-radius:14px;padding:20px 24px}
.csa-cert-banner-txt{display:flex;flex-direction:column;gap:3px;margin-right:auto}
.csa-cert-banner-txt strong{font-size:16px}
.csa-cert-banner-txt span{font-size:13px;color:#c9c8c3}

/* ---- rifiniture portale standalone ---- */
.csa-module-head{max-width:860px;margin:0 auto 22px}
.csa-module-head h1{font-size:30px;font-weight:800;letter-spacing:-.02em;margin:8px 0 8px;line-height:1.15}
.csa-module-head .csa-mh-meta{font-size:13.5px;color:var(--muted)}
.csa-lesson-tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:860px;margin:0 auto 22px}
.csa-lesson-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 15px;
  font-family:inherit;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s ease}
.csa-lesson-tabs button:hover{border-color:var(--brand);color:var(--brand)}
.csa-lesson-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}
.csa-lesson-tabs button.active .tn,.csa-lesson-tabs button.active:hover{color:#fff}
.csa-lesson-tabs .tn{font-family:'Space Mono',monospace;color:var(--brand);margin-right:6px}
.csa-lesson-tabs button.done::after{content:" ✓";color:#1c9e5e}
.csa-lesson-tabs button.active.done::after{color:#fff}
.csa-lesson-tabs .csa-tab-quiz{margin-left:auto;border-style:dashed}
.reading{max-width:860px}
.csa-lesson-nav{max-width:860px;margin:22px auto 0}
.csa-quiz{max-width:860px}
.csa-cert-banner{margin-top:24px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  background:linear-gradient(100deg,#17181c,#2b2c30);color:#fff;border-radius:14px;padding:20px 24px}
.csa-cert-banner-txt{display:flex;flex-direction:column;gap:3px;margin-right:auto}
.csa-cert-banner-txt strong{font-size:16px}
.csa-cert-banner-txt span{font-size:13px;color:#c9c8c3}
