*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Pretendard,"Noto Sans KR",Arial,sans-serif;color:#152238;background:#fff}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.wrap{max-width:1180px;margin:auto;padding:76px 24px}header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e7ebf0}.top{max-width:1180px;height:72px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:46px}.logo{font-weight:900;font-size:22px;letter-spacing:-1px}.logo span{color:#0b63f6}.logo small{font-size:10px;margin-left:5px;color:#8993a3}nav{display:flex;gap:30px;font-weight:700;font-size:14px;flex:1}nav a:hover{color:#0b63f6}.tools{font-size:13px}.tools button{border:0;background:none;font-size:21px}.hero{padding:92px 24px 86px;text-align:center;background:linear-gradient(180deg,#f3f8ff,#fff)}.eyebrow,.label{font-size:12px;font-weight:900;letter-spacing:1.4px;color:#0b63f6}.hero h1{font-size:48px;letter-spacing:-2.3px;margin:13px 0}.hero h1 b{color:#0b63f6}.hero p{color:#66758b;font-size:17px}.search{max-width:820px;margin:32px auto 18px;display:flex;background:#fff;border:2px solid #152238;border-radius:14px;overflow:hidden;box-shadow:0 12px 35px #214a7a16}.search select{width:120px;border:0;padding:0 18px;background:#fff}.search input{flex:1;border:0;outline:0;padding:20px;font-size:16px}.search button{border:0;background:#0b63f6;color:#fff;padding:0 34px;font-weight:800}.chips{font-size:12px;color:#8792a2}.chips button,.tabs button,.regions button{border:1px solid #e2e7ed;background:#fff;border-radius:999px;padding:7px 12px;margin:5px;color:#526176}.grid4,.grid3{display:grid;gap:18px}.grid4{grid-template-columns:repeat(4,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}h2{font-size:30px;letter-spacing:-1.4px;margin:8px 0 28px}.purpose article,.guide article{border:1px solid #e5eaf0;border-radius:16px;padding:26px;min-height:185px}.purpose i{font-style:normal;color:#0b63f6;font-weight:900;font-size:12px}.purpose h3{margin:26px 0 8px}.purpose p,.course p,.purpose a{color:#6c7889;font-size:14px}.purpose .accent{background:#0b63f6;color:#fff}.purpose .accent p{color:#dfeaff}.purpose .accent button{border:0;background:#fff;color:#0b63f6;border-radius:8px;padding:10px 13px;font-weight:800}.band{background:#f6f8fb}.titleline{display:flex;justify-content:space-between;align-items:end}.titleline>a{font-size:13px;color:#657389}.tabs{margin:-8px 0 22px}.tabs .active{background:#152238;color:#fff}.course{background:#fff;border:1px solid #e4e9ef;border-radius:16px;padding:24px}.course>span{display:inline-block;background:#e8f2ff;color:#0b63f6;font-weight:800;font-size:11px;padding:6px 8px;border-radius:6px}.course>small{margin-left:7px;color:#718095}.course h3{font-size:20px;line-height:1.4;margin:20px 0}.course div{border-top:1px solid #edf0f4;margin-top:18px;padding-top:18px;font-size:12px;color:#7a8797}.course div b{display:block;color:#344359;margin-top:5px}.course button{width:100%;margin-top:20px;border:1px solid #dce3eb;background:#fff;border-radius:8px;padding:11px;font-weight:800}.notice{font-size:11px;color:#8a95a4;margin-top:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.tilegrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tilegrid button{border:1px solid #e3e8ee;background:#fff;border-radius:12px;text-align:left;padding:18px;font-weight:800}.tilegrid small{display:block;color:#8a95a4;margin-top:6px;font-weight:400}.regions{display:flex;flex-wrap:wrap}.regions button{padding:11px 18px}.local{margin-top:20px;background:#f6f8fb;border-radius:12px;padding:18px;font-size:13px}.local p{color:#748094}.dark{background:#142238;color:#fff}.dark .label{color:#6aa8ff}.dark .titleline>a{color:#b9c7d8}.jobgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.jobgrid article{border:1px solid #344257;border-radius:13px;padding:22px}.jobgrid b{font-size:18px}.jobgrid p{color:#aeb9c8;font-size:12px;min-height:35px}.jobgrid a{font-size:12px;color:#73adff}.jobs{border-top:2px solid #152238}.jobs div{display:grid;grid-template-columns:1.4fr 1fr .7fr;padding:20px 10px;border-bottom:1px solid #e5e9ef;font-size:13px}.jobs span{color:#748094}.jobs em{font-style:normal;text-align:right;color:#0b63f6}.guide{background:#f6f8fb}.guide article{background:#fff;min-height:150px}.guide small{color:#0b63f6;font-weight:800}.guide h3{line-height:1.45}.guide a{font-size:12px;color:#657389}footer{background:#0e1726;color:#b3bdca}.foot{padding-top:36px;padding-bottom:36px;display:flex;justify-content:space-between;font-size:12px}.foot b{font-size:18px;color:#fff}.foot p{margin-bottom:0}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:#152238;color:#fff;padding:12px 18px;border-radius:9px;transition:.25s;z-index:40;font-size:13px}#toast.show{transform:translateX(-50%) translateY(0)}#drawer{position:fixed;right:-330px;top:0;width:320px;height:100vh;background:#fff;z-index:50;padding:30px;box-shadow:-10px 0 35px #0002;transition:.25s}#drawer.open{right:0}#drawer>a{display:block;padding:14px 0;border-bottom:1px solid #eee;font-weight:800}#closeBtn{float:right;border:0;background:none;font-size:28px}@media(max-width:800px){nav{display:none}.top{height:62px}.tools{margin-left:auto}.hero{padding:64px 18px}.hero h1{font-size:34px}.search{display:grid;grid-template-columns:90px 1fr}.search select{width:auto}.search input{padding:16px}.search button{grid-column:1/3;padding:13px}.wrap{padding:54px 18px}.grid4,.grid3,.split,.jobgrid{grid-template-columns:1fr}.purpose article{min-height:auto}.split{gap:45px}.jobs div{grid-template-columns:1fr;gap:7px}.jobs em{text-align:left}.foot{display:block;line-height:1.8}.titleline{align-items:center}.course{padding:20px}}

.detailbtn{display:block;width:100%;margin-top:20px;border:1px solid #dce3eb;background:#fff;border-radius:8px;padding:11px;font-weight:800;text-align:center}
.searchpage{background:#f7f9fc;min-height:100vh}
.searchhead{background:#fff;border-bottom:1px solid #e7ebf0}
.searchhead .inner{max-width:1180px;margin:auto;padding:34px 24px}
.searchhead h1{margin:0 0 8px;font-size:34px;letter-spacing:-1.6px}
.searchhead p{margin:0;color:#6e7b8d}
.finder{margin-top:22px;display:flex;border:2px solid #152238;border-radius:12px;overflow:hidden;background:#fff}
.finder input{flex:1;border:0;outline:0;padding:16px 18px}
.finder button{border:0;background:#0b63f6;color:#fff;font-weight:800;padding:0 28px}
.searchlayout{max-width:1180px;margin:auto;padding:28px 24px 70px;display:grid;grid-template-columns:260px 1fr;gap:24px}
.filters{background:#fff;border:1px solid #e5eaf0;border-radius:14px;padding:20px;height:max-content;position:sticky;top:92px}
.filters h3{margin:0 0 18px}.fg{border-top:1px solid #edf0f4;padding:17px 0}.fg:first-of-type{border-top:0;padding-top:0}.fg b{display:block;margin-bottom:9px;font-size:13px}.fg label{display:block;margin:8px 0;font-size:13px;color:#536275}.fg select{width:100%;border:1px solid #dfe5ec;border-radius:8px;padding:10px;background:#fff}.filterbtns{display:grid;grid-template-columns:1fr 1.5fr;gap:8px}.filterbtns button{padding:10px;border-radius:8px;border:1px solid #dfe5ec;background:#fff;font-weight:800}.filterbtns .apply{background:#152238;color:#fff;border-color:#152238}
.selected{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}.selected span{background:#eaf3ff;color:#0b63f6;border-radius:999px;padding:7px 10px;font-size:12px}.resultsbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.resultsbar strong{font-size:20px}.resultsbar select{border:1px solid #dfe5ec;border-radius:8px;padding:9px;background:#fff}
.resultlist{display:grid;gap:14px}.rcard{background:#fff;border:1px solid #e4e9ef;border-radius:15px;padding:22px}.rtop{display:flex;justify-content:space-between;gap:18px}.rbadges span{display:inline-block;font-size:11px;font-weight:800;border-radius:6px;padding:5px 7px;margin-right:5px;background:#eaf3ff;color:#0b63f6}.rbadges .green{background:#e9f8f0;color:#178455}.rcard h2{font-size:21px;margin:15px 0 9px}.rmeta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;color:#66758b;font-size:13px}.rside{text-align:right;min-width:145px;color:#6b7787;font-size:12px}.rside b{display:block;color:#152238;font-size:17px;margin-top:6px}.actions{border-top:1px solid #edf0f4;margin-top:18px;padding-top:15px;display:flex;justify-content:space-between;gap:10px;align-items:center}.actions .left{display:flex;gap:8px;flex-wrap:wrap}.actions button,.actions a{border:1px solid #dce3eb;background:#fff;border-radius:8px;padding:9px 11px;font-size:12px;font-weight:800}.actions .primary{background:#0b63f6;color:#fff;border-color:#0b63f6}
.comparebar{position:fixed;left:50%;bottom:-120px;transform:translateX(-50%);width:min(920px,calc(100% - 28px));background:#142238;color:#fff;border-radius:14px 14px 0 0;padding:14px 18px;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:15px;transition:.25s;box-shadow:0 -10px 35px #0002}.comparebar.show{bottom:0}.comparebar button{border:0;background:#fff;color:#142238;font-weight:900;border-radius:8px;padding:10px 14px}.quickmodal{display:none;position:fixed;inset:0;background:#0006;z-index:60;padding:24px}.quickmodal.open{display:flex;align-items:center;justify-content:center}.quickbox{width:min(680px,100%);background:#fff;border-radius:16px;padding:24px;max-height:88vh;overflow:auto}.quickbox .x{float:right;border:0;background:#f0f3f6;border-radius:8px;padding:7px 10px}.comparepage{max-width:1180px;margin:auto;padding:34px 24px 70px}.comparetable{overflow:auto;background:#fff;border:1px solid #e4e9ef;border-radius:14px}.comparetable table{border-collapse:collapse;min-width:900px;width:100%}.comparetable th,.comparetable td{border-bottom:1px solid #edf0f4;border-right:1px solid #edf0f4;padding:15px;text-align:left;vertical-align:top}.comparetable th{background:#f7f9fc;width:150px}.emptymsg{padding:50px 20px;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;color:#758294}
.mobile-filter{display:none}
@media(max-width:800px){
 .searchlayout{grid-template-columns:1fr;padding:18px}
 .filters{position:static;display:none}
 .filters.open{display:block}
 .mobile-filter{display:flex;gap:8px;margin-bottom:12px}
 .mobile-filter button{flex:1;border:1px solid #dfe5ec;background:#fff;border-radius:8px;padding:11px;font-weight:800}
 .rmeta{grid-template-columns:1fr}.rtop{display:block}.rside{text-align:left;margin-top:13px}
 .actions{align-items:flex-start;flex-direction:column}
 .finder{display:grid;grid-template-columns:1fr}.finder button{padding:13px}
}

.coursehero{background:linear-gradient(135deg,#eef5ff,#fff);border-bottom:1px solid #e7ebf0}
.coursehero .inner{max-width:1180px;margin:auto;padding:42px 24px}
.coursehero h1{font-size:36px;letter-spacing:-1.6px;max-width:850px;margin:14px 0 12px}
.chipsline{display:flex;gap:7px;flex-wrap:wrap}.chipsline span{background:#eaf3ff;color:#0b63f6;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.chipsline .green{background:#e9f8f0;color:#178455}
.coursebody{max-width:1180px;margin:auto;padding:28px 24px 70px;display:grid;grid-template-columns:1fr 300px;gap:26px}
.coursecontent section{background:#fff;border:1px solid #e4e9ef;border-radius:15px;padding:24px;margin-bottom:16px}.coursecontent h2{margin-top:0;font-size:22px}
.summarybox{background:#102a43!important;color:#fff}.summarybox .label{background:#fff2;color:#fff}.summarybox p{font-size:16px;line-height:1.75}
.factgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fact{background:#f7f9fc;border-radius:10px;padding:14px}.fact small{display:block;color:#6f7c8d;margin-bottom:5px}.fact b{font-size:15px}
.currlist{display:grid;gap:9px}.curritem{padding:13px 14px;border:1px solid #e6ebf1;border-radius:10px}.jobgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.jobcard{border:1px solid #e2e8f0;border-radius:12px;padding:15px}.jobcard b{display:block;margin-bottom:7px}.jobcard small{color:#6d7989}.jobcard a{display:inline-block;margin-top:10px;color:#0b63f6;font-size:12px;font-weight:800}
.courseaside{position:sticky;top:92px;height:max-content;background:#fff;border:1px solid #dfe5ec;border-radius:15px;padding:20px}.courseaside h3{margin:0 0 10px}.courseaside .status{color:#178455;font-weight:900}.courseaside .bigdate{font-size:20px;font-weight:900;margin:14px 0}.courseaside button,.courseaside a{display:block;width:100%;border:1px solid #dce3eb;background:#fff;border-radius:9px;padding:11px;text-align:center;font-weight:900;margin-top:8px}.courseaside .primary{background:#0b63f6;color:#fff;border-color:#0b63f6}
.tabsbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tabsbar a{background:#fff;border:1px solid #dfe5ec;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}
.sessiontable{width:100%;border-collapse:collapse}.sessiontable th,.sessiontable td{border-bottom:1px solid #e8edf2;padding:12px;text-align:left;font-size:13px}.sessiontable th{background:#f7f9fc}
.sourcebox{font-size:12px;color:#6f7d8d;background:#f8fafc;padding:13px;border-radius:10px}
@media(max-width:850px){.coursebody{grid-template-columns:1fr}.courseaside{position:static}.factgrid,.jobgrid{grid-template-columns:1fr}.coursehero h1{font-size:29px}}

.pager{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:24px 0 0}
.pager button{border:1px solid #d7dee8;background:#fff;border-radius:8px;padding:9px 12px;font-weight:800;cursor:pointer}
.pager button.active{background:#0b63f6;color:#fff;border-color:#0b63f6}
.pager button:disabled{opacity:.4;cursor:not-allowed}
.rside small{display:block;margin-top:6px;color:#768396}

.result-card h2 a{color:inherit;text-decoration:none}.result-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}

/* V1.3 training filter/responsive */
.filters{max-height:calc(100vh - 110px);overflow:auto;scrollbar-width:thin}
.filter-head{display:flex;align-items:center;justify-content:space-between}.filter-head h3{margin:0 0 18px}.filter-head #filterClose{display:none;border:0;background:transparent;font-size:26px}
.filters .filterbtns{position:sticky;bottom:-20px;background:#fff;padding:12px 0 20px;margin-top:4px;z-index:5;border-top:1px solid #edf0f4}
.family-mini{display:flex;flex-wrap:wrap;gap:6px}.family-mini button{border:1px solid #d8e0ea;background:#fff;border-radius:999px;padding:7px 9px;font-size:12px;cursor:pointer}.family-mini button.active{background:#0b63f6;color:#fff;border-color:#0b63f6}
.selected button{border:0;background:#eaf3ff;color:#0b63f6;border-radius:999px;padding:7px 10px;font-size:12px;cursor:pointer}
.selected button:hover{background:#dcecff}
.sortwrap{display:flex;align-items:flex-end;gap:10px;flex-direction:column}.sortwrap small{color:#8591a1;max-width:280px;text-align:right}
.rcard.recommended-academy{border-color:#9ec5ff;box-shadow:0 4px 16px rgba(11,99,246,.08)}
.rbadges .recommended-badge{background:#0b63f6;color:#fff}
@media(max-width:900px){
 .searchlayout{grid-template-columns:1fr;padding:18px 16px 70px}
 .filters{display:none;position:fixed;inset:0 0 0 auto;width:min(380px,92vw);max-height:none;border-radius:0;z-index:90;top:0;padding:22px;overflow:auto;box-shadow:-12px 0 40px #0002}
 .filters.open{display:block}
 .filter-head #filterClose{display:block}
 .filters .filterbtns{bottom:-22px}
 .mobile-filter{display:flex!important;gap:8px;margin-bottom:12px}
 .resultsbar{align-items:flex-start;gap:10px}
 .sortwrap{align-items:flex-end}.sortwrap small{display:none}
}
@media(min-width:901px){.mobile-filter{display:none!important}}
