:root{
  --paper:#f6f4ef;--ink:#16130f;--muted:#625d55;--line:#ded8cf;--card:#fff;
  --red:#9b2335;--red-dark:#721928;--red-soft:#f5e4e7;--gold:#d8a12e;
  --blue:#294c70;--blue-soft:#e9f0f4;--green:#506f44;--orange:#a95d1f;
  --shadow:0 16px 40px rgba(22,19,15,.09)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,system-ui,sans-serif}
button,input,textarea{font:inherit}
button{cursor:pointer}
a{color:var(--red)}
.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.topbar{position:sticky;top:0;z-index:30;height:72px;border-top:4px solid var(--red);border-bottom:1px solid var(--line);background:rgba(246,244,239,.95);backdrop-filter:blur(12px)}
.topbar-inner{height:100%;display:flex;align-items:center}
.brand{font:400 18px/1 Georgia,'Times New Roman',serif;letter-spacing:.16em;text-decoration:none;color:var(--ink)}
.brand span{color:var(--red)}
.topnav{display:flex;gap:28px;margin-left:auto}.topnav a{color:#4f4942;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.topnav a:hover{color:var(--red)}
.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.82fr);gap:38px;align-items:center;margin-block:24px 18px;padding:46px 50px;border-radius:22px;background:linear-gradient(120deg,#12110e 0%,#201a19 58%,#402127 100%);color:#fff;box-shadow:var(--shadow);overflow:hidden;position:relative}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 71%,rgba(155,35,53,.25));pointer-events:none}.hero>div{position:relative;z-index:1}
.eyebrow,.kicker{color:var(--red);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero .eyebrow,.hero .kicker{color:#e58291}
.hero h1{font-size:clamp(42px,5.4vw,68px);line-height:.98;letter-spacing:-.055em;margin:14px 0 18px}.hero h1 em{color:#e45266;font-style:normal}.hero>div>p{max-width:600px;color:#d9d4cd;font-size:17px}
.hero-panel{padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)}.hero-panel strong{display:block;margin:7px 0;font-size:20px}.hero-panel p{margin:0;color:#d9d4cd;font-size:13px}
.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.role{min-width:0;min-height:92px;padding:15px;text-align:left;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.06)}.role b{display:block;font-size:16px}.role small{display:block;margin-top:4px;color:#d9d4cd;font-size:12px}.role:hover,.role.selected{background:var(--red);border-color:#c64a5c;box-shadow:0 8px 22px rgba(0,0,0,.18)}
#activeProfile{position:sticky;top:84px;z-index:20;width:max-content;max-width:calc(100% - 32px);margin:14px auto 24px;padding:9px 18px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:var(--ink);color:#fff;box-shadow:0 8px 24px rgba(22,19,15,.14);font-size:13px;font-weight:700;text-align:center}
.app{display:grid;grid-template-columns:260px minmax(0,1fr);gap:38px;padding:10px 0 80px}.sidebar{position:sticky;top:126px;align-self:start}.sidebar-title{margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.tabs{display:flex;flex-direction:column;gap:8px}.tab{min-height:56px;padding:12px 16px;text-align:left;color:var(--muted);border:1px solid transparent;border-radius:13px;background:transparent;font-size:14px;font-weight:700}.tab b{display:block;margin-bottom:2px;color:var(--gold);font-size:10px;letter-spacing:.09em}.tab:hover{border-color:var(--line);background:#eee9e1}.tab.active{border-color:var(--red);background:var(--red);color:#fff;box-shadow:0 8px 22px rgba(155,35,53,.18)}.status{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.status strong{display:block;color:var(--ink)}
.progress{height:7px;margin:9px 0;overflow:hidden;border-radius:20px;background:#e4ddd3}.progress i{display:block;width:0;height:100%;background:var(--red);transition:width .25s}
.surface,.section,.section>*{min-width:0;max-width:100%}.section[hidden]{display:none}.section.active{display:block}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.section h2{margin:5px 0 9px;font-size:clamp(32px,4vw,48px);line-height:1.05;letter-spacing:-.045em}.lead{max-width:760px;margin:0;color:var(--muted)}.small{font-size:13px}.role-pill,.source-badge{display:inline-block;flex:none;padding:8px 12px;border:1px solid #eac9cf;border-radius:30px;background:var(--red-soft);color:var(--red-dark);font-size:12px;font-weight:700;white-space:nowrap}
.notice,.study-research{margin:18px 0;padding:17px 20px;border-radius:14px}.notice{border:1px solid #bdd3dc;background:var(--blue-soft);color:#244957}.study-research{border:1px solid #e5d29f;background:#fbf4df;color:#625329}
.assessment-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}.assessment-type{min-width:0;min-height:112px;padding:19px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink)}.assessment-type b{display:block;margin-bottom:4px;font-size:18px}.assessment-type small{display:block;color:var(--muted)}.assessment-type:hover,.assessment-type.active{border-color:var(--red);background:var(--red-soft);box-shadow:0 8px 20px rgba(22,19,15,.07)}
.assessment-label{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 14px}.assessment-label h3{margin:0;font-size:26px}.assessment-label p{margin:4px 0 0;color:var(--muted)}
.rubric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rubric{min-width:0;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 5px 18px rgba(22,19,15,.035)}.rubric-number{display:grid;place-items:center;width:32px;height:32px;margin-bottom:12px;border-radius:50%;background:var(--red);color:#fff;font-size:12px;font-weight:800}.rubric h3{margin:0 0 6px;font-size:19px}.rubric-prompt{min-height:44px;margin:0 0 15px;color:var(--muted);font-size:14px}
.descriptor-choices{display:grid;gap:8px}.descriptor-option{position:relative;display:block}.descriptor-option input{position:absolute;opacity:0}.descriptor-option span{display:flex;align-items:center;min-height:48px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#4f4942;font-size:13px;line-height:1.45;transition:border-color .2s,background-color .2s,box-shadow .2s}.descriptor-option:hover span,.descriptor-option input:focus-visible+span{border-color:var(--red);box-shadow:0 0 0 3px rgba(155,35,53,.09)}.descriptor-option input:checked+span{border-color:var(--red);background:var(--red-soft);color:var(--red-dark);box-shadow:inset 4px 0 0 var(--red)}
.actions{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:22px}.btn{min-height:46px;padding:13px 20px;border:0;border-radius:13px;background:var(--red);color:#fff;font-weight:700;box-shadow:0 6px 16px rgba(155,35,53,.18)}.btn:hover{background:var(--red-dark)}.btn:disabled{cursor:not-allowed;opacity:.5}
.result{display:none;margin-top:24px;padding:26px;border-radius:18px;background:var(--ink);color:#fff}.result.show{display:block}.result h3{margin:0;font-size:30px}.result p{color:#ddd4c8}.score-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.score{min-width:125px;padding:12px 14px;border-left:3px solid #db5165;border-radius:10px;background:#2a2521}.score strong{display:block;font-size:24px}.score span{color:#cfc4b7;font-size:12px}
.dig-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dig-card{min-width:0;padding:20px;border:1px solid var(--line);border-top:5px solid var(--blue);border-radius:16px;background:#fff}.dig-card h3{margin:0 0 8px;font-size:20px}.dig-indicator{padding:12px 0;border-top:1px solid var(--line)}.dig-indicator:first-of-type{border-top:0}.dig-indicator p{margin:0 0 9px;color:var(--muted);font-size:14px}.level{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.level label{position:relative}.level input{position:absolute;opacity:0}.level span{display:grid;place-items:center;min-height:42px;padding:5px;border:1px solid var(--line);border-radius:9px;text-align:center;color:var(--muted);font-size:11px;font-weight:700}.level input:checked+span{border-color:var(--blue);background:var(--blue);color:#fff}.mini-result,.study-result{display:none;margin-top:18px;padding:18px;border:1px solid #bdd4c2;border-radius:14px;background:#edf4ee;color:#28553a}.mini-result.show,.study-result.show{display:block}
.apps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.app-card{min-width:0;padding:20px;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.app-card:hover{transform:translateY(-2px);border-color:var(--red);box-shadow:0 8px 18px rgba(22,19,15,.08)}.app-card-wide{grid-column:1/-1;border-top-color:var(--red)}.app-number{display:block;color:var(--red);font-size:11px;font-weight:800;letter-spacing:.12em}.app-card h3{margin:4px 0 6px;font-size:21px}.app-card p{margin:0 0 14px;color:var(--muted);font-size:14px}.app-card a{color:var(--red-dark);font-weight:800;font-size:13px;text-decoration:none}.app-card a:hover{text-decoration:underline}.app-links{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 2px}.app-links a{padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--red-soft)}.app-card small{display:block;margin-top:12px;color:var(--muted);font-size:11px}
.course-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.module-btn{min-width:0;min-height:78px;padding:13px;text-align:left;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--muted)}.module-btn b{display:block;color:var(--gold);font-size:11px}.module-btn span{font-size:12px}.module-btn.active{border-color:var(--red);background:var(--red);color:#fff}.lesson{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff}.lesson h3{margin:4px 0 8px;font-size:30px}.activity{margin:18px 0;padding:18px;border-left:4px solid var(--gold);background:#f0e8dc}.activity strong{display:block}.quiz{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.quiz-question{margin:18px 0}.quiz label{display:block;margin:7px 0;padding:11px 12px;border:1px solid var(--line);border-radius:11px}.quiz label:has(input:checked){border-color:var(--red);background:var(--red-soft)}.glossary{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.glossary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.term{padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:13px}.term b{display:block;color:var(--red);font-size:15px}
.study-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:22px 0}.study-step{min-width:0;padding:12px 10px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted);font-size:12px;font-weight:700;overflow-wrap:anywhere}.study-step.active{background:var(--ink);color:#fff}.study-step small{display:block;font-weight:400}.study-content{width:100%;max-width:100%;min-width:0;overflow:hidden;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}.study-content h3{margin:0 0 8px;font-size:28px}.study-question{max-width:100%;min-width:0;padding:17px 0;border-top:1px solid var(--line)}.study-question:first-of-type{border-top:0}.study-question p{margin:0 0 8px;font-weight:700}.study-option{display:flex;max-width:100%;min-width:0;gap:8px;margin:6px 0;padding:11px 12px;border:1px solid var(--line);border-radius:11px;overflow-wrap:anywhere}.study-option:has(input:checked){border-color:var(--red);background:var(--red-soft)}.study-option input{flex:none;margin-top:5px}.study-card{max-width:100%;min-width:0;margin:14px 0;padding:16px;border-left:4px solid var(--gold);border-radius:12px;background:#f0e8dc;overflow-wrap:anywhere}.study-card h4{margin:0 0 5px;font-size:18px}.study-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:18px}
.ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.ai-card,.debate{min-width:0;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.ai-card.pro{border-top:4px solid var(--green)}.ai-card.caution{border-top:4px solid var(--orange)}.ai-card h3,.debate h3{margin:0 0 8px;font-size:22px}.voice{margin-top:18px}.voice strong{display:block}.debate{margin-top:22px;background:var(--paper)}.debate textarea{width:100%;min-height:82px;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:10px}.locked{display:flex;gap:12px;padding:14px;border-radius:12px;background:#fff4e6;color:#754c18}.source-note{color:var(--muted);font-size:13px}
footer{padding:25px 0;border-top:1px solid var(--line);background:#efebe4;color:var(--muted);font-size:13px}
.tab:focus-visible,.role:focus-visible,.btn:focus-visible,.assessment-type:focus-visible{outline:3px solid rgba(155,35,53,.3);outline-offset:3px}
@media(max-width:900px){.wrap{width:min(100% - 32px,1180px)}.hero{grid-template-columns:1fr;gap:26px;padding:38px 32px}.app{grid-template-columns:1fr;gap:26px}.sidebar{position:static}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.status{display:none}.course-map{grid-template-columns:repeat(2,minmax(0,1fr))}.rubric-grid,.dig-grid{grid-template-columns:1fr}#activeProfile{top:82px}}
@media(max-width:600px){.wrap{width:min(100% - 24px,1180px)}.topnav{display:none}.hero{gap:22px;padding:27px 22px;margin-top:16px;border-radius:18px}.hero h1{font-size:40px;overflow-wrap:anywhere}.tabs,.assessment-types,.ai-grid,.glossary-grid{grid-template-columns:1fr}.study-steps{grid-template-columns:1fr 1fr}.course-map{grid-template-columns:1fr 1fr}.section-head{display:block}.role-pill{margin-top:14px}.level{grid-template-columns:repeat(2,minmax(0,1fr))}.actions{flex-direction:column}.actions .btn{width:100%}.assessment-label{align-items:flex-start}.source-badge{white-space:normal}.study-content{padding:18px}#activeProfile{top:78px;font-size:12px}.pdf-actions{display:grid;grid-template-columns:1fr}.pdf-actions .btn{width:100%}}
@media(max-width:600px){.apps-grid{grid-template-columns:1fr}}
@media(max-width:380px){.role-grid,.study-steps,.course-map{grid-template-columns:1fr}.hero h1{font-size:38px}}
/* Approfondimenti e laboratorio del metodo di studio */
.study-stage-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.study-stage-head h3{margin:5px 0 8px}.study-stage-head p{max-width:680px;margin:0;color:var(--muted)}.study-choice-count{flex:none;padding:8px 12px;border-radius:999px;background:var(--ink);color:#fff;font-size:12px;font-weight:800}.strategy-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.strategy-guide{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff}.strategy-guide-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px}.strategy-index{display:block;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.12em}.strategy-guide h4{margin:2px 0 5px;font-size:19px}.strategy-guide p{margin:0;color:var(--muted);font-size:13px}.strategy-pick{position:relative}.strategy-pick input{position:absolute;opacity:0}.strategy-pick span{display:grid;place-items:center;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:11px;font-weight:800;text-align:center}.strategy-pick input:checked+span{border-color:var(--red);background:var(--red);color:#fff}.strategy-guide details{border-top:1px solid var(--line)}.strategy-guide summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 18px;cursor:pointer;color:var(--red-dark);font-size:12px;font-weight:800;list-style:none}.strategy-guide summary::-webkit-details-marker{display:none}.strategy-guide summary:after{content:'+';font-size:20px;font-weight:400}.strategy-guide details[open] summary:after{content:'−'}.strategy-detail{padding:0 18px 18px}.strategy-when{display:flex;flex-direction:column;margin-bottom:14px;padding:12px;border-radius:10px;background:var(--blue-soft);color:#274559;font-size:12px}.study-infographic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:12px 0}.study-infographic>div{position:relative;min-height:82px;padding:9px 7px;border-radius:9px;background:var(--ink);color:#fff;text-align:center}.study-infographic>div:not(:last-child):after{content:'›';position:absolute;z-index:1;top:31px;right:-7px;color:var(--gold);font-size:19px}.study-infographic span{display:grid;place-items:center;width:22px;height:22px;margin:0 auto 7px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:10px;font-weight:800}.study-infographic b{display:block;font-size:10px;line-height:1.3}.strategy-examples{display:grid;grid-template-columns:1fr 1fr;gap:8px}.strategy-examples>div{padding:11px;border:1px solid var(--line);border-radius:9px}.strategy-examples b{font-size:11px}.strategy-examples p{margin-top:4px;font-size:11px}.strategy-try{margin-top:8px;padding:12px;border-left:4px solid var(--gold);border-radius:8px;background:#fbf4df;color:#625329;font-size:12px}.strategy-try b{display:block}
.sample-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.sample-button{min-height:72px;padding:12px;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted)}.sample-button b,.sample-button span{display:block}.sample-button b{color:var(--red);font-size:11px}.sample-button span{margin-top:3px;font-size:12px;line-height:1.35}.sample-button.active{border-color:var(--red);background:var(--red-soft);box-shadow:inset 0 0 0 1px var(--red)}.practice-text{margin:20px 0;padding:24px;border:1px solid var(--line);border-radius:15px;background:#fff}.practice-text h4{margin:4px 0 15px;font-size:23px}.practice-text p{max-width:74ch;margin:0 auto 14px;color:#3f3a34;line-height:1.72}.practice-text .kicker,.practice-text h4{max-width:74ch;margin-inline:auto}.guided-practice{border-top:1px solid var(--line)}.guided-step{display:grid;grid-template-columns:76px minmax(0,1fr);gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.guided-step-number{display:flex;flex-direction:column;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:var(--ink);color:#fff;font-size:18px;font-weight:800}.guided-step-number span{color:var(--gold);font-size:9px;font-weight:700}.guided-step h4{margin:0 0 5px;font-size:20px}.guided-step p{margin:0 0 12px;color:var(--muted)}.guided-prompt,.guided-hint{margin:10px 0;padding:13px 15px;border-radius:10px;font-size:13px}.guided-prompt{border-left:4px solid var(--blue);background:var(--blue-soft);color:#274559}.guided-hint{border-left:4px solid var(--gold);background:#fbf4df;color:#625329}.guided-prompt b,.guided-hint b{display:block}.guided-check{display:flex;align-items:flex-start;gap:9px;margin-top:13px;padding:12px;border:1px solid #bfd3c3;border-radius:10px;background:#edf4ee;color:#35563a;font-size:13px;font-weight:700}.guided-check input{flex:none;margin-top:3px;accent-color:var(--green)}.recall-prompts{padding-left:23px}.recall-prompts li{margin:6px 0}.recall-field{display:block;margin:14px 0}.recall-field span{display:block;margin-bottom:6px;font-size:12px;font-weight:800}.recall-field textarea{width:100%;max-width:100%;min-height:140px;padding:13px;border:1px solid var(--line);border-radius:10px;resize:vertical;background:#fff;color:var(--ink);font:inherit}.recall-field textarea:focus{outline:3px solid rgba(155,35,53,.14);border-color:var(--red)}.model-answer{margin-top:12px;padding:15px;border:1px solid #bfd3c3;border-radius:11px;background:#edf4ee;color:#35563a}.model-answer b,.model-answer span{display:block}.model-answer p{margin:5px 0}.model-answer span{font-size:12px}.reflection-block{margin-top:20px}
@media(max-width:760px){.strategy-library{grid-template-columns:1fr}.study-infographic{grid-template-columns:repeat(2,minmax(0,1fr))}.study-infographic>div:nth-child(2):after{display:none}.sample-picker{grid-template-columns:1fr}.practice-text{padding:18px}.guided-step{grid-template-columns:52px minmax(0,1fr);gap:10px}.guided-step-number{width:46px;height:46px;font-size:15px}.strategy-examples{grid-template-columns:1fr}}
@media(max-width:480px){.study-stage-head{display:block}.study-choice-count{display:inline-block;margin-top:10px}.strategy-guide-top{grid-template-columns:1fr}.strategy-pick span{width:100%}.study-infographic{grid-template-columns:1fr}.study-infographic>div{min-height:0;text-align:left;padding-left:42px}.study-infographic>div:not(:last-child):after{content:'↓';top:auto;right:50%;bottom:-13px}.study-infographic span{position:absolute;left:10px;top:9px}.guided-step{grid-template-columns:1fr}.guided-step-number{border-radius:10px;flex-direction:row;gap:6px;width:max-content;height:38px;padding:0 12px}.guided-step-number span{font-size:10px}.study-content{padding:16px}}

/* Mappe concettuali e schemi sui brani di esercizio */
.study-maps{margin:20px 0;padding:20px;border:1px solid #c4d8df;border-radius:15px;background:#eef6f7}.study-map-head{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:16px}.study-map-head h4{margin:3px 0 0;font-size:21px}.study-map-head>span{color:#466774;font-size:12px}.map-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.map-node{position:relative;min-height:104px;padding:12px 10px;border:1px solid #b9d1d9;border-radius:11px;background:#fff;color:#244957}.map-node:not(:last-child):after{content:'→';position:absolute;z-index:1;right:-11px;top:40px;color:var(--red);font-size:18px;font-weight:800}.map-node span{display:block;color:var(--red);font-size:10px;font-weight:800;letter-spacing:.1em}.map-node b{display:block;margin-top:5px;font-size:13px;line-height:1.35}.map-node small{display:block;margin-top:10px;color:#537682;font-size:10px;font-style:italic}.map-note{margin-top:14px;padding:12px 14px;border-left:4px solid var(--gold);background:#fbf4df;color:#625329;font-size:13px}.map-note strong{display:block;color:#493b15}
/* Coppie e riepilogo del metodo */
.pair-check{margin:20px 0;padding:20px;border:1px dashed #cba94e;border-radius:15px;background:#fff9e8}.pair-check h4{margin:3px 0 7px;font-size:20px}.pair-check p{margin:0;color:#625329}.pair-check ul{margin:12px 0 0;padding-left:20px;color:#625329;font-size:13px}.study-recap{margin-top:20px;padding:20px;border:1px solid #c4d8df;border-radius:15px;background:#eef6f7}.study-recap h4{margin:3px 0 12px;font-size:21px}.study-recap p{margin:7px 0;color:#274559}.welcome-line{display:inline-block;margin-top:8px;color:var(--ink)}
/* Manuale DigComp */
.course-intro{display:flex;flex-direction:column;gap:5px;margin:18px 0 8px;padding:17px 20px;border:1px solid #e5d29f;border-radius:14px;background:#fbf4df;color:#625329}.course-intro span{font-size:14px}.course-map{margin-bottom:28px}.module-btn{display:flex;flex-direction:column;gap:4px;min-height:112px;padding:16px;transition:transform .2s,border-color .2s,box-shadow .2s}.module-btn:hover{transform:translateY(-2px);border-color:var(--red);box-shadow:0 8px 18px rgba(22,19,15,.08)}.module-btn span{display:block;color:var(--ink);font-size:13px;font-weight:700;line-height:1.35}.module-btn small{display:block;margin-top:auto;color:var(--muted);font-size:10px}.module-btn.active span,.module-btn.active small{color:#fff}
.lesson{padding:0;overflow:hidden;border-radius:20px;box-shadow:0 12px 34px rgba(22,19,15,.07)}.lesson-page,.lesson-page *{min-width:0}.lesson-cover{padding:38px 40px 34px;background:linear-gradient(125deg,#17140f,#352025);color:#fff}.lesson-cover h3{max-width:760px;margin:10px 0 12px;font-size:clamp(32px,5vw,52px);line-height:1.03;letter-spacing:-.04em}.lesson-cover>p{max-width:760px;margin:0;color:#ded7ce;font-size:17px}.lesson-progress{height:5px;margin:-38px -40px 31px;background:rgba(255,255,255,.12)}.lesson-progress i{display:block;height:100%;background:var(--gold)}.lesson-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.lesson-meta span{padding:7px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#f3ece3;font-size:11px;font-weight:700}
.lesson-objectives{display:grid;grid-template-columns:minmax(160px,.65fr) minmax(0,1.35fr);gap:28px;padding:30px 40px;border-bottom:1px solid var(--line);background:#fbf8f3}.lesson-page h4{margin:5px 0 10px;font-size:24px;line-height:1.2}.lesson-objectives ol{display:grid;gap:10px;margin:0;padding-left:24px}.chapter-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:18px 40px;border-bottom:1px solid var(--line)}.chapter-index a{padding:10px 12px;border-radius:9px;background:var(--paper);color:var(--muted);font-size:12px;font-weight:700;text-decoration:none}.chapter-index a:hover{background:var(--red-soft);color:var(--red-dark)}
.lesson-body{padding:8px 40px}.lesson-section{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}.lesson-section:last-child{border-bottom:0}.section-number{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--red-soft);color:var(--red);font-size:12px;font-weight:800}.lesson-section h4{margin-top:0}.lesson-section p{margin:0;color:#453f38}.lesson-section ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:19px 0 0;padding:0;list-style:none}.lesson-section li{padding:11px 12px;border-left:3px solid var(--gold);background:#f8f4ed;color:var(--muted);font-size:12px}
.infographic{margin:10px 40px 34px;padding:27px;border-radius:17px;background:var(--ink);color:#fff}.infographic-head h4{margin-bottom:20px}.infographic-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.infographic-step{position:relative;min-height:148px;padding:16px;border:1px solid rgba(255,255,255,.17);border-radius:13px;background:rgba(255,255,255,.06)}.infographic-step:not(:last-child):after{content:'→';position:absolute;z-index:2;top:50%;right:-14px;color:var(--gold);font-size:19px;font-weight:800}.infographic-step>span{display:grid;place-items:center;width:30px;height:30px;margin-bottom:17px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:12px;font-weight:800}.infographic-step b,.infographic-step small{display:block}.infographic-step small{margin-top:5px;color:#cfc7bc;line-height:1.4}
.role-example{margin:0 40px 28px;padding:24px 26px;border:1px solid #bfd2df;border-left:5px solid var(--blue);border-radius:15px;background:var(--blue-soft)}.role-example-label{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.role-example h4{margin-bottom:6px}.role-example p{margin:0;color:#274559}.lesson-lab{margin:0 40px 28px;padding:25px;border:0;border-left:5px solid var(--gold);border-radius:15px}.lesson-lab h4{margin-bottom:0}.lesson-lab p{margin:9px 0 17px}.lab-output{padding:13px 15px;border-radius:10px;background:rgba(255,255,255,.62);font-size:13px}.lab-output b{display:block;color:var(--red-dark)}.self-guided-note{margin-top:10px;padding:12px 14px;border-left:3px solid var(--green);border-radius:9px;background:#edf4ee;color:#35563a;font-size:13px}.self-guided-note b{display:block}
.takeaway{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:25px;margin:0 40px 30px;padding:25px;border:1px solid #bfd3c3;border-radius:15px;background:#edf4ee}.takeaway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.takeaway-grid label{display:flex;gap:9px;align-items:flex-start;padding:10px;border-radius:9px;background:#fff;color:#35563a;font-size:12px}.takeaway-grid input{accent-color:var(--green);margin-top:3px}.quiz{margin:0;padding:32px 40px;background:#fbf8f3}.quiz-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.quiz-heading>span{max-width:220px;color:var(--muted);font-size:12px;text-align:right}.quiz-question{padding:20px 0;margin:0;border-top:1px solid var(--line)}.quiz label{display:flex;align-items:flex-start;gap:8px}.quiz label span{min-width:0}.btn.secondary{border:1px solid var(--line);background:#fff;color:var(--ink);box-shadow:none}.btn.secondary:hover{border-color:var(--red);background:var(--red-soft);color:var(--red-dark)}.quiz .btn.secondary{min-height:38px;margin-top:6px;padding:9px 14px}.quiz-feedback{min-height:24px;margin-top:8px;font-size:13px;font-weight:700}.quiz-feedback[data-state=correct]{color:var(--green)}.quiz-feedback[data-state=error]{color:var(--red)}
.lesson-page>.source-note{margin:0;padding:22px 40px;border-top:1px solid var(--line);background:#fbf8f3}.lesson-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:24px 40px;border-top:1px solid var(--line)}.lesson-nav .btn:last-child{justify-self:end}.lesson-nav>span{color:var(--muted);font-size:12px;font-weight:800}.lesson-nav button:disabled{visibility:hidden}
@media(max-width:700px){.lesson-cover{padding:31px 22px 27px}.lesson-progress{margin:-31px -22px 25px}.lesson-objectives,.takeaway{grid-template-columns:1fr}.lesson-objectives,.chapter-index,.lesson-body,.quiz,.lesson-page>.source-note,.lesson-nav{padding-left:22px;padding-right:22px}.chapter-index{grid-template-columns:1fr}.lesson-section{grid-template-columns:38px minmax(0,1fr);gap:10px}.section-number{width:34px;height:34px}.lesson-section ul,.infographic-flow,.takeaway-grid{grid-template-columns:1fr}.infographic,.role-example,.lesson-lab,.takeaway{margin-left:22px;margin-right:22px}.infographic-step{min-height:0}.infographic-step:not(:last-child):after{content:'↓';top:auto;right:50%;bottom:-18px}.quiz-heading{display:block}.quiz-heading>span{display:block;text-align:left}.lesson-nav{grid-template-columns:1fr 1fr}.lesson-nav>span{display:none}.lesson-nav .btn{width:100%;padding-inline:10px}}
@media(max-width:420px){.course-map{grid-template-columns:1fr}.lesson-cover h3{font-size:34px}.lesson-meta{display:grid}.lesson-page h4{font-size:21px}.lesson-nav{grid-template-columns:1fr}.lesson-nav button:disabled{display:none}}
@media(max-width:760px){.study-map-head{display:block}.study-map-head>span{display:block;margin-top:6px}.map-flow{grid-template-columns:1fr 1fr}.map-node:not(:last-child):after{content:'↓';right:50%;top:auto;bottom:-15px}.map-node:nth-child(2):after{display:none}}
@media(max-width:480px){.map-flow{grid-template-columns:1fr}.map-node:not(:last-child):after{right:50%;bottom:-15px}.map-node:nth-child(2):after{display:block}}
/* Autoplacement ampliato */
.study-question-group{margin-top:22px}.study-question-group>h4{margin:0;padding:12px 14px;border-radius:10px;background:var(--blue-soft);color:#274559;font-size:16px}
.pdf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:14px}.pdf-actions .btn{min-height:42px;padding:10px 15px}.pdf-actions small{max-width:190px;color:#ded7ce;font-size:10px;line-height:1.35}.pdf-page{max-width:760px;margin:0 auto;padding:36px;color:#25221e;font-family:Inter,Arial,sans-serif}.pdf-page header{padding-bottom:20px;border-bottom:4px solid #9b2335}.pdf-eyebrow{color:#9b2335;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pdf-page h1{margin:10px 0 5px;font-size:32px}.pdf-date{margin:0;color:#6d665e;font-size:13px}.pdf-page section{padding:18px 0;border-bottom:1px solid #d9d1c6}.pdf-page h2{margin:0 0 8px;font-size:19px;color:#9b2335}.pdf-page p{margin:6px 0;line-height:1.5}.pdf-page footer{margin-top:24px;padding:18px;border-radius:12px;background:#fbf4df;color:#493b15;line-height:1.6}
.pdf-dialog{width:min(100% - 32px,460px);padding:24px;border:0;border-radius:18px;box-shadow:0 20px 60px rgba(22,19,15,.22);color:var(--ink)}.pdf-dialog::backdrop{background:rgba(22,19,15,.5)}.pdf-dialog h2{margin:4px 0 8px;font-size:24px}.pdf-dialog p{color:var(--muted);line-height:1.5}.pdf-dialog label{display:block;margin:14px 0 6px;font-size:13px;font-weight:800}.pdf-dialog label span{color:var(--muted);font-weight:400}.pdf-dialog input{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font:inherit}.pdf-dialog input:focus{outline:3px solid rgba(155,35,53,.14);border-color:var(--red)}.pdf-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
@media print{body>*:not(#pdfReport){display:none!important}#pdfReport{display:block!important}#pdfReport[aria-hidden="true"]{display:block!important}.pdf-page{max-width:none;padding:0;color:#25221e}.pdf-page section{break-inside:avoid}.pdf-page a{color:#25221e;text-decoration:none}@page{size:A4;margin:16mm}}
/* Verifica aggiornamento interno docenti */
.teacher-course-test{margin-top:28px;padding:28px;border:1px solid #d7b85c;border-top:6px solid var(--red);border-radius:18px;background:#fffdf7}.teacher-course-test h3{margin:4px 0 8px;font-size:28px}.teacher-course-test>p{max-width:72ch;color:var(--muted)}.teacher-test-meta{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.teacher-test-meta span,.teacher-test-meta b{padding:8px 11px;border-radius:999px;font-size:11px;font-weight:800}.teacher-test-meta span{border:1px solid var(--line);color:var(--muted)}.teacher-test-meta b{margin-left:auto;background:var(--ink);color:#fff}.teacher-question{padding:17px 0;border-top:1px solid var(--line)}.teacher-question>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.teacher-question>div span{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.12em}.teacher-question>div small{color:var(--muted);font-size:11px}.teacher-question p{margin:7px 0 9px;font-weight:800}.teacher-question label{display:block;margin:6px 0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.teacher-question label:has(input:checked){border-color:var(--red);background:var(--red-soft)}.teacher-question input{margin-right:7px}.teacher-test-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.teacher-test-result{display:flex;flex-direction:column;gap:5px;margin-top:18px;padding:18px;border-radius:13px;color:#fff}.teacher-test-result strong{font-size:23px}.teacher-test-result small{opacity:.9}.teacher-test-result.fail{background:#9b2335}.teacher-test-result.pass{background:#b28b22;color:#201b0f}.teacher-test-result.advanced{background:#2f6b47}.teacher-test-result span{font-weight:700}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.teacher-access{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:24px;align-items:center;padding:16px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(22,19,15,.045)}.teacher-access-copy strong{display:block;margin:3px 0;font-size:16px}.teacher-access-copy p{max-width:650px;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.teacher-access-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}.teacher-access #sl-login{flex:none;min-height:44px}.teacher-access #sl-login-msg{margin-top:6px!important;color:var(--red-dark)!important;font-size:11px!important;line-height:1.35}.teacher-auth-status{display:flex;align-items:flex-start;gap:7px;max-width:230px;color:var(--muted);font-size:11px;line-height:1.4}.guest-dot{flex:none;width:8px;height:8px;margin-top:4px;border-radius:50%;background:var(--gold)}.teacher-auth-status[data-state=verified]{color:#2f6b47}.teacher-auth-status[data-state=verified] .guest-dot{background:#77bf87}.teacher-auth-status[data-state=denied],.teacher-auth-status[data-state=error]{color:var(--red-dark)}.teacher-auth-status[data-state=denied] .guest-dot,.teacher-auth-status[data-state=error] .guest-dot{background:#c64a5c}
@media(max-width:760px){.teacher-access{grid-template-columns:1fr;gap:13px}.teacher-access-actions{justify-content:flex-start;flex-wrap:wrap}.teacher-auth-status{max-width:none}}
