:root{--bg:#ffffff;--deep:#ffffff;--panel:#ffffff;--panel2:#ffffff;--text:#111111;--muted:#111111;--dim:#111111;--accent:#7ab8ff;--line:#cfd4dc;--good:#8dd6b1;--warn:#efc978;--max:1160px;--reading:850px}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;background:#ffffff;color:#111111;font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",system-ui,sans-serif;font-size:15px;line-height:1.74}a{color:#111111}.wrap{width:min(var(--max),calc(100% - 24px));margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 6px}.back,.utility-link{color:#111111;font-size:12px;font-weight:750;text-decoration:none}.back:hover,.utility-link:hover{color:#111111}.stamp,.badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border:1px solid #b8c6d3;border-radius:999px;color:#111111;font-size:10px;font-weight:800;letter-spacing:.05em;background:#eef4f8;}.hero{padding:7px 0 14px}.hero-box{padding:20px;border:1px solid #cfd4dc;border-radius:16px;background:#ffffff;box-shadow:0 4px 16px rgba(0,0,0,.06)}.eyebrow{margin:0 0 4px;color:#111111;font-size:10px;font-weight:900;letter-spacing:.12em}.hero h1{margin:0;font-size:clamp(32px,5vw,50px);line-height:1.05;letter-spacing:-.045em}.hero h1 span{display:block;margin-top:6px;color:#111111;font-size:clamp(14px,2vw,19px);font-weight:650;letter-spacing:-.02em}.lead{max-width:850px;margin:10px 0 0;color:#111111;font-size:14px;line-height:1.62}.notice{margin-top:10px;padding:7px 9px;border-left:3px solid #cfd4dc;background:#ffffff;color:#111111;font-size:11px;line-height:1.5}.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 11px;border:1px solid #cfd4dc;border-radius:8px;background:#ffffff;color:#111111;font:inherit;font-size:11.5px;font-weight:800;text-decoration:none;cursor:pointer}.button.primary{border-color:#cfd4dc;background:#ffffff;color:#111111}.button:hover,.button:focus-visible{border-color:#cfd4dc;background:#ffffff;outline:none}.button.done{border-color:#cfd4dc;background:#ffffff;color:#111111}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:11px}.metric{padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:#ffffff}.metric span{display:block;color:#111111;font-size:9.8px}.metric strong{display:block;margin-top:1px;font-size:14px;letter-spacing:-.02em}.section{margin:14px 0 20px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:7px;padding-bottom:5px;border-bottom:1px solid var(--line)}.section-head h2{margin:0;font-size:clamp(20px,3vw,25px);letter-spacing:-.035em}.section-head span{color:#111111;font-size:10px;font-weight:850;letter-spacing:.08em}.section-intro{max-width:850px;margin:-1px 0 9px;color:#111111;font-size:12.5px;line-height:1.55}.stage-list{display:grid;gap:6px}.stage{padding:10px;border:1px solid var(--line);border-radius:11px;background:#ffffff}.stage-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.stage h3{margin:0;font-size:15.5px}.stage p{margin:2px 0 0;color:#111111;font-size:11.5px;line-height:1.45}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px}.course-card{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:7px;align-items:center;min-height:48px;padding:7px 8px;border:1px solid #cfd4dc;border-radius:8px;background:#ffffff;text-decoration:none}.course-card:hover{border-color:#cfd4dc;background:#ffffff}.course-code{color:#111111;font-size:10px;font-weight:900;white-space:nowrap}.course-copy{min-width:0}.course-copy strong{display:block;font-size:12.5px;line-height:1.25}.course-copy small{display:block;margin-top:1px;color:#111111;font-size:9.8px;line-height:1.28;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-state{font-size:8.8px;font-weight:850;color:#111111;white-space:nowrap}.course-card.open{border-color:#cfd4dc;background:#ffffff}.course-card.open .course-state{color:#111111}.college-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.college{padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#ffffff}.college .num{display:inline-flex;min-width:22px;color:#111111;font-size:9.5px;font-weight:900}.college strong{font-size:13px}.college p{margin:3px 0 0;color:#111111;font-size:10.8px;line-height:1.4}.path{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.path span{padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:#ffffff;font-size:10.8px;font-weight:750}.path i{color:#111111;font-style:normal}.university-footer{margin-top:18px;padding:16px 10px 28px;border-top:1px solid #cfd4dc;background:#ffffff;color:#111111;text-align:center}.university-footer>strong{display:block;color:#111111;font-size:13px;font-weight:600;line-height:1.5}.university-footer>.footer-description{margin:3px auto 0;color:#111111;font-size:11px;line-height:1.7}.university-footer-meta{display:flex;flex-direction:column;align-items:center;margin:12px auto 0;padding-top:12px;border-top:1px solid #cfd4dc;text-align:center}.university-footer-meta p{margin:0 auto;color:#111111;font-size:12px;line-height:1.7}.university-footer-meta .ai-disclosure{max-width:920px;margin-top:6px;font-size:11.5px}.university-footer-meta a{display:inline-block;margin-top:6px;color:#111111;font-size:11px;font-weight:600;text-decoration:none}.reading{width:min(var(--reading),100%);margin:0 auto}.course-hero{padding:11px 0 9px}.course-hero-box{padding:15px;border:1px solid #cfd4dc;border-radius:13px;background:#ffffff}.course-kicker{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.course-hero h1{margin:5px 0 0;font-size:clamp(28px,5vw,41px);line-height:1.1;letter-spacing:-.045em}.course-subtitle{margin:5px 0 0;color:#111111;font-size:13px;line-height:1.5}.course-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;color:#111111;background:#eef4f8;}.course-meta span{padding:3px 6px;border:1px solid #b8c6d3;border-radius:6px;background:#eef4f8;color:#111111;font-size:9.8px}.progress-card{margin:8px 0 12px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#ffffff}.progress-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px;font-size:10.5px}.progress-head strong{font-size:11.5px}.progress-track{height:6px;overflow:hidden;border-radius:999px;background:#e5e7eb}.progress-bar{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5da8ff,#8dd6b1);transition:width .2s ease}.toc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 0 15px}.toc a{padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:#ffffff;text-decoration:none}.toc a strong{display:block;font-size:10.8px}.toc a span{display:block;margin-top:1px;color:#111111;font-size:9.2px;line-height:1.3}.module{margin:15px 0}.module-head{margin-bottom:6px}.module-head .eyebrow{margin-bottom:2px}.module-head h2{margin:0;font-size:20px;letter-spacing:-.035em}.module-head p{margin:2px 0 0;color:#111111;font-size:11px;line-height:1.45}.lesson{margin:5px 0;border:1px solid var(--line);border-radius:9px;background:#ffffff;overflow:hidden}.lesson[open]{border-color:#cfd4dc}.lesson summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 9px;cursor:pointer;list-style:none}.lesson summary::-webkit-details-marker{display:none}.lesson-no{color:#111111;font-size:10px;font-weight:900}.lesson-title strong{display:block;font-size:12.8px;line-height:1.3}.lesson-title span{display:block;margin-top:1px;color:#111111;font-size:9.8px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-check{color:#111111;font-size:8.8px;font-weight:850}.lesson.completed .lesson-check{color:#111111}.lesson-body{padding:0 10px 10px;border-top:1px solid #cfd4dc}.lesson-section{margin-top:9px}.lesson-section h3{margin:0 0 3px;color:#111111;font-size:12.3px}.lesson-section p{margin:0 0 6px;color:#111111;font-size:12.5px;line-height:1.62}.lesson-section ul,.lesson-section ol{margin:3px 0 0;padding-left:18px;color:#111111;font-size:12px}.lesson-section li{margin:3px 0}.concepts{display:flex;flex-wrap:wrap;gap:4px}.concepts span{padding:3px 6px;border:1px solid #cfd4dc;border-radius:999px;background:#ffffff;color:#111111;font-size:9.8px;font-weight:750}.case{padding:8px;border-left:3px solid #cfd4dc;background:#ffffff;color:#111111;font-size:12px;line-height:1.55}.exercise{padding:8px;border:1px solid #cfd4dc;border-radius:8px;background:#ffffff}.exercise strong{font-size:11px}.exercise ol{margin-top:4px}.tutor-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border:1px solid #cfd4dc;border-radius:8px;background:#ffffff}.tutor-box p{margin:0;color:#111111;font-size:11px;line-height:1.45}.tutor-copy{min-height:30px;padding:0 8px;border:1px solid #cfd4dc;border-radius:6px;background:#ffffff;color:#111111;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.assessment{padding:11px;border:1px solid #cfd4dc;border-radius:9px;background:#ffffff}.assessment h3{margin:0;font-size:14px}.assessment p,.assessment li{color:#111111;font-size:12px}.references{columns:2;column-gap:20px}.references li{break-inside:avoid}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;z-index:999;padding:8px;background:#ffffff;color:#111111}.toast{position:fixed;left:50%;bottom:20px;z-index:20;transform:translate(-50%,20px);opacity:0;padding:7px 10px;border:1px solid #cfd4dc;border-radius:7px;background:#ffffff;color:#111111;font-size:10.5px;transition:.18s}.toast.show{transform:translate(-50%,0);opacity:1}@media(max-width:900px){.college-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toc{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:650px){body{font-size:14px;line-height:1.62}.wrap{width:min(100% - 12px,var(--max))}.topbar{padding:7px 0 4px}.stamp{display:none}.hero{padding:4px 0 9px}.hero-box{padding:12px;border-radius:12px}.hero h1{font-size:28px}.hero h1 span{margin-top:4px;font-size:13px;line-height:1.35}.lead{margin-top:7px;font-size:12.2px;line-height:1.5}.notice{margin-top:7px;padding:6px 7px;font-size:10.3px}.hero-actions{gap:4px;margin-top:8px}.button{min-height:32px;padding:0 9px;font-size:10.7px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:8px}.metric{padding:5px 6px}.metric span{font-size:9px}.metric strong{font-size:12px}.section{margin:10px 0 14px}.section-head{align-items:center;gap:6px;margin-bottom:5px;padding-bottom:4px}.section-head h2{font-size:18px}.section-head span{padding:0;font-size:8.8px}.section-intro{margin-bottom:6px;font-size:11.2px;line-height:1.45}.stage-list{gap:4px}.stage{padding:7px;border-radius:9px}.stage-top{gap:6px}.stage h3{font-size:13.3px}.stage p{font-size:10px;line-height:1.35}.stage .badge{min-height:19px;padding:0 5px;font-size:8px;color:#111111;background:#eef4f8;}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:5px}.course-card{display:block;min-height:0;padding:6px 7px 7px;border-radius:7px}.course-code{display:block;padding-right:42px;font-size:9.2px}.course-state{position:absolute;top:6px;right:7px;font-size:7.6px}.course-copy strong{margin-top:2px;font-size:11.5px;line-height:1.2}.course-copy small{margin-top:1px;font-size:8.8px;line-height:1.25}.college-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.college{padding:7px;border-radius:8px}.college .num{min-width:18px;font-size:8.5px}.college strong{font-size:11.5px;line-height:1.25}.college p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:2px;font-size:9.4px;line-height:1.3}.path{gap:3px}.path span{padding:4px 5px;font-size:9.5px}.path i{font-size:9px}.footer{margin-top:16px;padding:10px 0 15px;font-size:9.5px}.reading{width:min(100% - 12px,var(--reading))}.course-hero{padding:6px 0}.course-hero-box{padding:10px;border-radius:10px}.course-kicker{gap:3px}.course-kicker .badge{min-height:19px;padding:0 5px;font-size:8.4px;color:#111111;background:#eef4f8;}.course-hero h1{margin-top:4px;font-size:25px}.course-subtitle{margin-top:3px;font-size:11.2px;line-height:1.4}.course-meta{gap:3px;margin-top:6px;color:#111111;background:#eef4f8;}.course-meta span{padding:2px 5px;font-size:8.8px;color:#111111;background:#eef4f8;}.progress-card{margin:5px 0 8px;padding:7px 8px}.progress-head{margin-bottom:4px;font-size:9.5px}.progress-head strong{font-size:10.5px}.progress-track{height:5px}.toc{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:6px 0 10px}.toc a{padding:6px}.toc a strong{font-size:10px}.toc a span{font-size:8.5px}.module{margin:10px 0}.module-head{margin-bottom:4px}.module-head h2{font-size:17px}.module-head p{font-size:10px}.lesson{margin:4px 0;border-radius:8px}.lesson summary{grid-template-columns:30px minmax(0,1fr) auto;gap:5px;padding:7px 8px}.lesson-no{font-size:9px}.lesson-title strong{font-size:11.5px}.lesson-title span{font-size:8.7px}.lesson-check{font-size:7.8px}.lesson-body{padding:0 8px 8px}.lesson-section{margin-top:7px}.lesson-section h3{font-size:11.3px}.lesson-section p{font-size:11.5px;line-height:1.55}.lesson-section ul,.lesson-section ol{padding-left:17px;font-size:11.2px}.lesson-section li{margin:2px 0}.concepts{gap:3px}.concepts span{padding:2px 5px;font-size:8.8px}.case,.exercise{padding:7px;font-size:11px;line-height:1.48}.tutor-box{grid-template-columns:1fr;padding:7px;gap:5px}.tutor-box p{font-size:10.4px}.tutor-copy{min-height:28px;font-size:9.5px}.assessment{padding:8px}.assessment h3{font-size:12.5px}.assessment p,.assessment li{font-size:11px}.references{columns:1}}