.journey-banner{max-width:1320px;margin:20px auto 40px;padding:38px;background:linear-gradient(120deg,#edf4e8,#fff2df);border:1px solid #dee8d4;border-radius:24px}.journey-banner h2{font-size:32px;margin:10px 0}.journey-banner p{font-size:17px}.journey-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:0;margin:26px 0;list-style:none}.journey-stages li{display:flex;gap:11px;align-items:center;padding:16px 12px;border:1px solid #e0e4d6;background:#fffdf8b3;border-radius:12px;font-size:15px;color:#7c8875}.journey-stages b{width:31px;height:31px;border-radius:50%;background:#e9eddf;display:grid;place-items:center;font-weight:500}.journey-stages li.active{background:#326454;color:white;border-color:#326454}.journey-stages li.active b{background:#ffffff25;color:white}.journey-stages li.done{color:#37624c;border-color:#aac29e;background:#f2f8e9}.journey-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.journey-buttons .secondary{display:flex;align-items:center}.start-guidance{padding:18px 20px;background:#f0f5e9;border-radius:12px;font-size:15px;line-height:1.85;margin:0 0 23px}.start-guidance strong{font-size:17px}.start-guidance ol{padding-left:22px;margin:9px 0}.start-guidance p{font-size:14px;margin:8px 0 0}.course-welcome{padding:25px;background:#f0f5e8;border-radius:18px;border:1px solid #dbe7d1;margin-bottom:25px}.course-welcome>p{font-size:17px;margin-top:12px;line-height:1.9}.course-badge{font-size:14px;color:#356149;background:#e1edda;border-radius:30px;padding:6px 13px;display:inline-block;font-weight:600}.course-kit{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:21px 0}.course-kit details{padding:16px 18px;background:#fffef9;border:1px solid #e0e7d8;border-radius:12px}.course-kit summary{font-size:17px;font-weight:600;cursor:pointer;min-height:28px}.course-kit ul{font-size:15px;line-height:1.9;padding-left:20px;margin-bottom:0;color:#61715e}.course-header-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.course-header-actions button{font-size:15px}.course-welcome>small{display:block;font-size:13px!important;line-height:1.85}.course-save-state{font-size:14px;color:#6f8163}.course-step-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:23px}.course-step-tabs button{font-size:14px;line-height:1.6;border:1px solid #d3dfca;background:#f5f8ef;color:#5f775a;border-radius:10px;padding:9px 12px;min-height:44px;text-align:left}.course-step-tabs button.active{background:#326454;color:white;border-color:#326454}.lesson-objective{padding:14px 17px;background:#edf4e6;border-radius:10px;font-size:16px;line-height:1.85;color:#3f654b;margin:16px 0}.observation-prompt{font-size:16px;line-height:1.85;padding-left:14px;border-left:3px solid #c3a05b;color:#677459;margin:16px 0}.course-paint-info{border-top:1px solid #e0e7d6;padding-top:18px;margin-top:20px}.course-paint-info>strong{font-size:18px}.course-paint-info>p{font-size:15px;line-height:1.85}.course-paint-info .tone-values{margin-top:12px}.stroke-demo{background:#faf6ed;border:1px solid #e8e2d3;border-radius:12px;padding:13px 18px;margin:22px 0}.stroke-demo svg{height:104px;display:block;width:100%}.stroke-demo>p{font-size:14px;text-align:center;color:#7f785e;margin:0}.demo-stroke{stroke-dasharray:60;stroke-dashoffset:60;animation:learning-stroke 4s ease-in-out infinite}@keyframes learning-stroke{0%,10%{stroke-dashoffset:60}60%,100%{stroke-dashoffset:0}}.teacher-panel h4{font-family:'Gowun Dodum',sans-serif;font-size:22px;margin:23px 0 15px}.course-actions{list-style:none;counter-reset:actions;padding:0;display:grid;gap:13px}.course-actions li{counter-increment:actions;background:#fffef9;border:1px solid #e0e7d7;border-radius:12px;padding:16px}.course-actions label{display:flex;gap:11px;font-size:17px;line-height:1.95;align-items:start;cursor:pointer}.course-actions input{accent-color:#326454;min-width:19px;width:19px;height:19px;margin-top:7px}.course-actions input:checked+span{color:#739063}.coach-details{border-top:1px solid #dce4d3;padding:15px 0;font-size:16px}.coach-details summary{cursor:pointer;min-height:30px;color:#486747;font-weight:500}.coach-details p{font-size:16px;line-height:1.95;margin-top:12px}.coach-details.rescue summary{color:#9b7546}.creative-choice{background:#f7edf0;border:1px solid #eadde0;border-radius:14px;padding:19px;margin:20px 0}.creative-choice .eyebrow{color:#98747e}.creative-choice p{font-size:16px;color:#7a6570;line-height:1.9}.creative-choice textarea{width:100%;resize:vertical;font:16px 'Noto Sans KR',sans-serif;line-height:1.8;padding:12px;background:#fffdfb;border:1px solid #e4d5d9;border-radius:9px;color:#4a5f52}.creative-choice textarea:focus{outline:2px solid #a6ba93;outline-offset:2px}.course-progress{font-size:14px;margin-top:15px}.course-reflection{background:linear-gradient(125deg,#f6eddb,#edf5e7);border-radius:20px;padding:28px;margin-top:33px}.course-reflection h3{font-size:29px;margin:12px 0}.course-reflection>p{font-size:17px;line-height:1.9}.reflection-question{background:#fffdf7b8;border:1px solid #e4e5d4;border-radius:10px;padding:14px 18px;margin:13px 0;font-size:17px;color:#637355}.transfer-goal{border-top:1px solid #d9dfc8;padding-top:16px}.course-reflection .eyebrow{color:#8b9968}#savedCourseBanner{margin-top:26px;border-top:1px solid #cfddc4;padding-top:20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}#savedCourseBanner>strong{font-size:16px;width:100%}#savedCourseBanner>small{width:100%}.teacher-panel .teacher-actions{align-items:center}.teacher-panel .teacher-actions .primary{font-size:16px;min-height:50px}.teacher-panel .teacher-actions .secondary{font-size:15px}.teacher-art{align-self:start}.course-welcome+.quality-note{font-size:15px}
@media(max-width:950px){.journey-banner{margin:20px 25px;padding:28px}.journey-stages{grid-template-columns:repeat(2,1fr)}.course-kit{grid-template-columns:1fr 1fr}.course-kit details:last-child{grid-column:1/-1}}
@media(max-width:650px){.journey-banner{margin:20px;padding:24px}.journey-banner h2{font-size:28px}.journey-banner p{font-size:16px}.journey-stages{gap:10px;margin:21px 0}.journey-stages li{display:block;font-size:14px;padding:14px;line-height:1.7}.journey-stages b{margin-bottom:8px}.journey-buttons button,.journey-buttons a{width:100%;justify-content:center;font-size:16px}.start-guidance{padding:17px;font-size:15px}.course-welcome{padding:20px}.course-welcome>p{font-size:16px}.course-kit{grid-template-columns:1fr;gap:11px}.course-kit details:last-child{grid-column:auto}.course-kit summary{font-size:17px}.course-header-actions{gap:9px}.course-header-actions button{font-size:14px;flex-grow:1}.course-step-tabs{gap:7px}.course-step-tabs button{font-size:14px;padding:9px 11px}.course-actions label{font-size:17px}.course-actions li{padding:15px}.teacher-panel .teacher-actions{flex-direction:column;align-items:stretch}.teacher-panel .teacher-actions button{width:100%;font-size:16px}.lesson-objective{font-size:16px}.stroke-demo{padding:12px}.course-reflection{padding:22px}.course-reflection h3{font-size:27px}.course-reflection>p,.reflection-question{font-size:16px}.creative-choice{padding:17px}.creative-choice textarea{font-size:16px}.coach-details p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.demo-stroke{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}
@media print{.journey-banner,.start-guidance,.course-header-actions,.course-reflection,.course-step-tabs,.creative-choice{display:none!important}.course-welcome{padding:0;background:white;border:0}.course-kit{display:none}.course-badge{background:white;padding:0}.print-all-steps h3{break-after:avoid}.print-all-steps p{font-size:10pt;line-height:1.6}}
