.course-home,.route-map,.course-shell{max-width:1150px;margin:auto;padding:36px 25px 55px}.route-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center;margin-bottom:32px}.route-hero img{width:100%;max-height:270px;object-fit:contain;border-radius:20px}.route-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.route-card{padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--panel);display:flex;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.route-card h2{font-size:1.8rem}.route-card p{flex:1}.route-card .primary{font-size:1rem;width:100%}.route-icon{font:700 2rem ui-monospace,monospace;color:var(--accent);margin-bottom:16px}.route-meta,.course-crumb,.course-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.course-crumb{margin-bottom:18px;color:var(--muted)}.course-toolbar{justify-content:flex-start;margin:16px 0}.course-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:22px 0}.course-steps button{padding:12px 9px;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:.875rem;min-height:48px}.course-steps button[aria-current]{background:var(--soft);color:var(--accent);border:2px solid var(--accent)}.course-steps small{display:block;font-size:.8rem}.lesson-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:24px;align-items:start}.lesson-main,.lesson-side{padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:18px;min-width:0}.lesson-side h2{font-size:1.15rem}.lesson-main h1{font-size:clamp(1.8rem,3vw,2.5rem)}.lesson-main .editor{min-height:240px}.concept-card{padding:20px;border-left:4px solid var(--accent);background:var(--soft);border-radius:8px;margin:20px 0}.concept-card h2{font-size:1.2rem}.course-note{font-size:.875rem;color:var(--muted)}.teaching-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.chips button{font: .85rem/1.5 ui-monospace,monospace;white-space:pre-wrap;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--ink);min-height:44px;max-width:100%}.build-steps li{margin:8px 0}.build-steps{padding-left:22px;font-size:.95rem}.answer-reveal{margin-top:15px;border:1px solid var(--warning);border-radius:12px;padding:16px;background:var(--warning-bg);color:var(--warning)}.answer-reveal pre{background:var(--code);color:var(--ink);border-radius:8px;margin:12px 0;padding:14px}.result-cards{display:grid;gap:12px;margin-top:18px}.result-card{padding:16px;border:1px solid var(--line);border-left:4px solid var(--error);border-radius:10px;background:var(--code)}.result-card.pass{border-left-color:var(--success)}.result-card h3{margin-bottom:7px}.result-values{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere}.result-values strong{display:block;color:var(--muted)}.result-card .course-note{margin:8px 0 0}.input-panel{background:var(--soft);border-radius:12px;padding:16px;margin:16px 0}.input-panel textarea{width:100%;min-height:80px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px;font:1rem/1.6 ui-monospace,monospace}.input-panel label{font-weight:650;display:block}.lesson-group{margin:30px 0}.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:14px}.topic-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--panel);display:flex;flex-direction:column}.topic-card h3{margin-bottom:9px;font-size:1.05rem}.topic-card .course-note{flex:1}.topic-card button{text-align:left;margin-top:12px}.readiness{max-width:700px;margin:25px 0}.progress-note{background:var(--soft);padding:14px 18px;border-radius:10px}.order-selected{list-style:none;padding:0;display:grid;gap:8px}.order-selected li{padding:12px;background:var(--soft);border-radius:8px}.order-selected small{color:var(--muted)}.flow-node{border:2px solid var(--accent);padding:12px;border-radius:10px;margin:12px auto;max-width:95%;text-align:center}.flow-arrow{text-align:center;color:var(--accent)}.choice-context{border-left:3px solid var(--line);padding-left:14px}.course-shell .output{margin:15px 0}.prereq-list{display:flex;flex-wrap:wrap;gap:8px}.prereq-list button{font-size:.875rem}.return-link{background:var(--soft);padding:12px 16px;margin-bottom:18px;border-radius:10px}.table-wrap{overflow:auto}.continue-card{border:1px solid var(--accent);border-radius:12px;padding:16px;margin:20px 0;background:var(--soft)}.lesson-side details{margin-top:18px}.lesson-side li{margin-bottom:10px}#save-status{font-size:.875rem}.small,.step,.crumb{font-size:.875rem}.course-shell .steps{margin:0}.code-frame{padding:12px 0;background:var(--code);border-radius:10px;margin:18px 0;overflow:auto}.code-frame .code-line{white-space:pre-wrap;overflow-wrap:anywhere}.course-shell button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:800px){.lesson-layout{grid-template-columns:1fr}.lesson-side{order:2}.route-hero{grid-template-columns:1fr}.route-hero img{max-height:180px}.route-cards{grid-template-columns:1fr}.course-steps{grid-template-columns:repeat(3,1fr)}.course-home,.route-map,.course-shell{padding:26px 18px 40px}.lesson-main,.lesson-side{padding:20px}.result-values{grid-template-columns:1fr}.route-card{padding:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.lesson-main h1{white-space:pre-line}.answer{white-space:pre-wrap}
