:root{--bg:#f9f9f7;--text:#222;--accent:#232f3e;--accent-light:#ff9900;--border:#ddd;--success:#38a169;--error:#e53e3e;--hint:#dd6b20;--day1:#e8f4f8;--day2:#f0f8e8;--day3:#f8f0e8}*{box-sizing:border-box}body,html{font-family:Georgia,Times New Roman,serif;line-height:1.7;color:var(--text);background:var(--bg);margin:0;padding:0}body{max-width:800px;margin:0 auto;padding:2rem 1.5rem}h1{font-size:1.8rem;margin-bottom:.3rem;border-bottom:3px solid var(--accent);padding-bottom:.5rem}.subtitle{color:#555;font-size:.95rem;margin-bottom:2rem;font-style:italic}h2{font-size:1.3rem;margin-top:2.5rem;color:var(--accent);border-left:4px solid var(--accent-light);padding-left:.8rem}h3{font-size:1.1rem;margin-top:1.8rem;font-style:italic;color:#444}p{margin:1rem 0}a{color:#2b6cb0;text-decoration:none}a:hover{text-decoration:underline}.key-point{background:#fff;border-left:4px solid var(--accent-light);padding:1rem 1.2rem;margin:1.2rem 0;box-shadow:0 1px 3px rgba(0,0,0,.08)}.key-point strong{color:var(--accent)}table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.95rem;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}td,th{border:1px solid var(--border);padding:.7rem .9rem;text-align:left;vertical-align:top}th{background:var(--accent);color:white;font-weight:400}tr:nth-child(2n){background:rgba(0,0,0,.02)}.comparison{background:#fff;border:1px solid var(--border);padding:1rem 1.2rem;margin:1.2rem 0}.comparison h4{margin-top:0;color:var(--accent)}.quiz-container{background:#fff;border:2px solid var(--accent);padding:1.5rem;margin:2rem 0}.quiz-container h3{margin-top:0;color:var(--accent);font-style:normal}.question{margin:1.5rem 0}.question-text{font-weight:700;margin-bottom:.8rem}.options label{display:block;padding:.5rem .8rem;margin:.4rem 0;border:1px solid var(--border);border-radius:3px;cursor:pointer;transition:background .2s}.options label:hover{background:#f0f0f0}.options input[type=radio]{margin-right:.6rem}.feedback{margin-top:.6rem;padding:.6rem .9rem;border-radius:3px;display:none;font-size:.95rem}.feedback.correct{background:#e6ffed;border:1px solid var(--success);color:#22543d;display:block}.feedback.incorrect{background:#ffe6e6;border:1px solid var(--error);color:#742a2a;display:block}.score-display{margin-top:1.5rem;padding:1rem;font-size:1.1rem;text-align:center}.btn,.score-display{background:var(--accent);color:white}.btn{border:none;padding:.6rem 1.2rem;cursor:pointer;font-family:inherit;font-size:.95rem;margin-top:1rem;border-radius:3px}.btn:hover{background:#1a252f}.options label.disabled{pointer-events:none;opacity:.7}.options label.right{border-color:var(--success);background:#e6ffed}.options label.wrong{border-color:var(--error);background:#ffe6e6}.nav{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.9rem}.lesson-nav{margin-top:3rem;padding:1rem 1.2rem;background:#fff;border:1px solid var(--border);border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,.06);justify-content:space-between;flex-wrap:wrap;gap:.8rem}.lesson-nav,.nav-links{display:flex;align-items:center}.nav-links{gap:.4rem}.nav-link{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:4px;font-size:.85rem;color:var(--accent);background:#f4f4f4;transition:background .15s,color .15s}.nav-link:hover{background:var(--accent);color:#fff;text-decoration:none}.nav-icon{font-size:.9rem;line-height:1}.nav-label{font-weight:500}.nav-divider{width:1px;height:1.2rem;background:var(--border);margin:0 .2rem}.nav-steps{display:flex;align-items:center;gap:.6rem}.nav-step{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .8rem;border-radius:4px;font-size:.85rem;font-family:Courier New,monospace;background:#f4f4f4;color:var(--accent);transition:background .15s,color .15s}.nav-step:hover{background:var(--accent);color:#fff;text-decoration:none}.nav-step.disabled{color:#bbb;background:transparent;cursor:default}.step-arrow{font-size:.9rem}.home-btn{display:inline-block;padding:.7rem 1.6rem;background:var(--accent);color:#fff;border-radius:4px;font-size:1rem;font-weight:500;transition:background .15s}.home-btn:hover{background:#1a252f;text-decoration:none}.home-btn.secondary{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.home-btn.secondary:hover{background:var(--accent);color:#fff}.home-context{max-width:520px;margin:2rem auto 0;font-size:.95rem;line-height:1.6;color:#444}.home-context p{margin:.8rem 0}.home-credits{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);max-width:560px;margin-left:auto;margin-right:auto;font-size:.85rem;color:#555;line-height:1.6}.home-credits p{margin:.4rem 0}.home-credits a{color:#2b6cb0}.source{background:#fff;border:1px solid var(--border);padding:1rem 1.2rem;margin:2rem 0;font-size:.9rem}.source strong{color:var(--accent)}.reminder{background:#fffbeb;border:1px solid var(--hint);padding:1rem 1.2rem;margin:2rem 0;font-size:.95rem}.reminder strong{color:var(--hint)}code{background:#f4f4f4;padding:.1rem .3rem;border-radius:3px;font-size:.9em}.diagram,code{font-family:Courier New,monospace}.diagram{background:#fff;border:1px solid var(--border);padding:1.2rem;margin:1.2rem 0;text-align:center;line-height:1.4;font-size:.9rem}.tag{display:inline-block;background:var(--accent);color:white;font-size:.75rem;padding:.15rem .5rem;border-radius:3px;margin-left:.5rem;vertical-align:middle}.curriculum-body{max-width:900px;padding:2rem}.curriculum-body h1{font-size:2rem;margin-bottom:.5rem}.curriculum-body h2{font-size:1.4rem;margin-top:2rem;border-left:none;padding-left:0}.curriculum-body h3{font-size:1.1rem;margin-top:1.5rem}.curriculum-body .meta{color:#555;font-size:.95rem;margin-bottom:2rem}.day-block{border-left:5px solid var(--accent);padding-left:1rem;margin:1.5rem 0}.day-block.day1{background:var(--day1);border-left-color:#2b6cb0;padding:1rem}.day-block.day2{background:var(--day2);border-left-color:#38a169;padding:1rem}.day-block.day3{background:var(--day3);border-left-color:#dd6b20;padding:1rem}.day-title{font-weight:700;font-size:1.2rem;margin-bottom:.5rem}.day1 .day-title{color:#2b6cb0}.day2 .day-title{color:#38a169}.day3 .day-title{color:#dd6b20}.weight{font-weight:700;color:var(--accent)}.quiz{background:#fff3cd}.practice{background:#f8d7da;font-weight:700}.note{font-size:.9rem;color:#555;margin-top:.5rem;font-style:italic}ul.compact{margin:.5rem 0;padding-left:1.5rem}ul.compact li{margin:.2rem 0}.meta-box{background:#fff;border:1px solid var(--border);padding:1rem 1.2rem;margin:1.5rem 0;font-size:.95rem}