.course-guide{margin-top:34px;margin-bottom:30px;padding-top:0}.guide-intro{padding:26px 28px 20px;background:linear-gradient(135deg,#082841,#0e4f73);color:#fff;border-radius:18px 18px 0 0}.guide-intro h2{margin:5px 0;font-size:clamp(1.45rem,3vw,2.1rem)}.guide-intro p{margin:0;max-width:760px;color:#d7effa}.source-section{border:1px solid #c8e1ec;background:#fff;padding:0 24px;margin:0}.course-guide .source-section{border-radius:0 0 18px 18px}.source-section summary{padding:19px 0;cursor:pointer;font-weight:800;color:#082841;font-size:1.05rem}.source-section summary small{margin-left:9px;color:#587080;font-weight:600}.source-copy{padding:0 0 20px}.source-copy p{line-height:1.6;margin:.65rem 0}.source-table-wrap{overflow-x:auto;margin:18px 0 24px;border:1px solid #d1e2e9;border-radius:10px}.source-table{width:100%;border-collapse:collapse;min-width:540px;font-size:.9rem}.source-table td{padding:10px 12px;border-right:1px solid #dce8ed;border-bottom:1px solid #dce8ed;vertical-align:top;line-height:1.4}.source-table tr:first-child td{background:#eaf7fb;color:#0b4163;font-weight:800}.source-table tr:last-child td{border-bottom:0}.source-table td:last-child{border-right:0}.source-table-title{margin:22px 0 8px;font-weight:800;color:#0b4163}.lesson-source{margin:28px 0;padding:26px 22px 0;border:1px solid #c8e1ec;border-radius:16px;background:#f9fdff}.source-intro h2{margin:6px 0;font-size:1.5rem}.source-intro p{max-width:750px;margin:0 0 16px;color:#526476}.lesson-source .source-section{margin:0 -22px;border:0;border-top:1px solid #c8e1ec;background:transparent}.lesson-source .source-section summary{padding:18px 22px}.lesson-source .source-copy{padding:0 22px 20px}.module-charts{margin:20px 0 28px}.module-charts-heading{margin:0 0 16px}.module-charts-heading h2{margin:5px 0;font-size:1.55rem}.module-charts-heading p{margin:.3rem 0;max-width:700px;color:#526476}.course-chart{margin:14px 0;padding:18px;border:1px solid #b8dce9;border-radius:13px;background:#fff}.course-chart h3{margin:0 0 5px;color:#092b46;font-size:1.08rem}.course-chart>p{margin:.2rem 0 14px;color:#526476}.course-chart table{border-collapse:collapse;width:100%;font-size:.92rem}.course-chart th,.course-chart td{padding:9px 11px;border:1px solid #b7cbd5;text-align:left;vertical-align:top}.course-chart thead th,.compact-chart th{background:#e8f5fa;color:#0b4163}.chart-split{display:grid;grid-template-columns:minmax(0,3fr) minmax(190px,1fr);gap:18px;align-items:start}.chart-split aside{padding:14px;background:#eef9f2;border-left:4px solid #3d9a62;border-radius:9px}.chart-split aside p{margin:.5rem 0 0;font-size:.9rem;color:#365744}.compact-chart{max-width:580px}.review-source{margin-bottom:32px}@media(max-width:700px){.course-guide{padding-left:18px;padding-right:18px}.guide-intro{padding:23px 20px}.source-section{padding:0 16px}.lesson-source{padding:22px 16px 0}.lesson-source .source-section{margin:0 -16px}.lesson-source .source-section summary{padding:16px}.lesson-source .source-copy{padding:0 16px 16px}.chart-split{grid-template-columns:1fr}.course-chart{padding:14px;overflow-x:auto}.course-chart table{min-width:510px}.compact-chart table{min-width:0}}
.home-review{border-top:1px solid #c8e1ec}.home-review .source-section{border-radius:0 0 18px 18px}.chart-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.chart-table-wrap{overflow-x:auto}.glossary-chart .chart-table-wrap{max-height:620px;overflow:auto;border:1px solid #c8e1ec;border-radius:10px}.glossary-chart table{min-width:720px}.glossary-chart th{position:sticky;top:0;z-index:1}.glossary-chart td:first-child{font-weight:800;color:#0b4163}@media(max-width:700px){.chart-columns{grid-template-columns:1fr}}
.source-practice{margin:18px 0 26px;padding:22px;border:1px solid #bedfea;border-radius:15px;background:#fff}.source-practice-heading h2{margin:5px 0;font-size:1.4rem}.source-practice-heading p{margin:.35rem 0;color:#526476}.source-practice-list{display:grid;gap:12px;margin-top:18px}.source-prompt{display:grid;gap:7px;font-weight:650;color:#12334e}.source-prompt input{width:100%;box-sizing:border-box;padding:12px 13px;border:2px solid #c9dce5;border-radius:9px;background:#fbfdfe;color:#082841;font:inherit}.source-prompt input:focus{outline:0;border-color:#1f88b6;box-shadow:0 0 0 3px rgba(31,136,182,.13)}.source-prompt input.is-correct{border-color:#3d9a62;background:#eefaf2}.source-prompt input.is-incorrect{border-color:#d45b4b;background:#fff4f2}.source-practice-footer{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:18px}.source-practice-status{color:#526476;font-weight:650}@media(max-width:700px){.source-practice{padding:18px}.source-practice-footer{align-items:stretch;flex-direction:column}.source-practice-footer .primary{width:100%}}
