/* F02 강의 목록·검색 · F04 강사 프로필 · F05 패키지 · F06 멤버십 · F16 강사 신청
   그누보드: theme/classpick/css/pages/front-browse.css
   접두사: fb-(영역 공통) cl-(강의 목록) ip-(강사 프로필) pk-(패키지) ms-(멤버십) ia-(강사 신청) */

/* ══ 영역 공통 ═══════════════════════════════════ */
/* 데모용 상태 전환 상자 (course.css .state-demo와 같은 역할) */
.fb-demo{display:inline-flex;align-items:center;gap:10px;padding:6px 6px 6px 12px;border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--bg);font-size:12px;font-weight:600;color:var(--text-3);white-space:nowrap}
.fb-demo .seg{padding:2px}
.fb-demo .seg button,.fb-demo .seg a{height:28px;padding:0 10px;font-size:12.5px}

/* 섹션 머리(가운데 정렬형) */
.fb-center{text-align:center;max-width:640px;margin:0 auto 32px}
.fb-center .fb-kicker{display:inline-block;font-size:13px;font-weight:700;color:var(--text-3);margin-bottom:8px}
.fb-center h2{font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1.3}
.fb-center p{color:var(--text-2);margin-top:8px}

/* 바텀시트형 모달: 데스크톱은 가운데 모달, 모바일은 아래에서 올라옴 */
.fb-sheet .modal{display:flex;flex-direction:column;overflow:hidden;max-height:min(760px,calc(100vh - 40px))}
.fb-sheet .modal-head{padding-bottom:14px;border-bottom:1px solid var(--border)}
.fb-sheet .modal-body{flex:1;overflow:auto;padding-top:4px}
.fb-sheet .modal-foot{border-top:1px solid var(--border);padding-top:14px}
.fb-sheet .grabber{display:none}

/* 자주 묻는 질문 */
.fb-faq summary{font-size:15.5px;letter-spacing:-.02em}
.fb-faq summary .q{color:var(--text-3);font-weight:800;flex:none}
.fb-faq .acc-body{font-size:14.5px;line-height:1.75;color:var(--text-2);padding-left:48px}
.fb-faq .acc-body b{color:var(--text)}

/* 하단 고정 구매 바 (패키지 상세·멤버십) */
.fb-buybar{display:none}

@media (max-width:768px){
  .fb-center{margin-bottom:24px}
  .fb-center h2{font-size:22px}
  .modal-backdrop.fb-sheet{align-items:flex-end;padding:0}
  .fb-sheet .modal{max-width:none;max-height:88vh;border-radius:20px 20px 0 0}
  .fb-sheet .grabber{display:block;width:40px;height:4px;border-radius:2px;background:var(--ink-300);margin:8px auto 0}
  .fb-sheet .modal-head{padding:12px 20px 12px}
  .fb-sheet .modal-body{padding:4px 20px 8px}
  .fb-sheet .modal-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
  .fb-faq summary{padding:14px 16px;font-size:15px;align-items:flex-start}
  .fb-faq .acc-body{padding:0 16px 16px 16px}
  .fb-buybar{display:flex;align-items:center;gap:12px;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);box-shadow:0 -6px 20px rgba(24,24,27,.06)}
  .fb-buybar .bb-price{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
  .fb-buybar .bb-price b{font-size:18px;font-weight:800;letter-spacing:-.02em}
  .fb-buybar .bb-price small{font-size:12.5px;color:var(--text-3);font-weight:500}
  .fb-buybar .btn{flex:0 0 52%}
  body.fb-has-buybar{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}


/* ══ F02 강의 목록·검색 (cl-) ════════════════════ */
.cl-mtop{display:none}
.cl-head{border-bottom:1px solid var(--border)}
.cl-head.is-cat{background:var(--bg-subtle)}
.cl-head-in{padding-top:24px;padding-bottom:28px}
.cl-head .breadcrumb{margin-bottom:14px}
.cl-title{font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1.3}
.cl-title .q{background:linear-gradient(transparent 60%,var(--lime) 60%,var(--lime) 92%,transparent 92%);padding:0 2px}
.cl-desc{color:var(--text-2);margin-top:6px;max-width:680px}
.cl-pop{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:18px;font-size:13px;color:var(--text-3);font-weight:600}
.cl-pop > span{margin-right:4px}
.cl-pop a{height:30px;padding:0 11px;border-radius:var(--r-pill);background:var(--ink-100);color:var(--text-2);display:inline-flex;align-items:center;font-size:13px}
.cl-pop a:hover{background:var(--ink-200);color:var(--text)}

/* 카테고리 머리 */
.cl-cathead{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:end}
.cl-cat-ic{width:48px;height:48px;border-radius:12px;background:var(--ink-900);color:var(--lime);display:grid;place-items:center;margin-bottom:16px}
.cl-cat-ic svg{width:24px;height:24px}
.cl-stats{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:20px}
.cl-stats dt{font-size:12.5px;color:var(--text-3);font-weight:500}
.cl-stats dd{font-size:20px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:4px}
.cl-stats dd .star{color:var(--star);font-size:16px}
.cl-insts{padding:10px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
.cl-insts h4{font-size:12.5px;color:var(--text-3);font-weight:600;padding:4px 8px 6px}
.cl-inst{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--r-md);min-width:0}
.cl-inst:hover{background:var(--ink-50)}
.cl-inst > span:not(.avatar){flex:1;min-width:0}
.cl-inst b{display:block;font-size:14.5px}
.cl-inst small{display:block;font-size:12.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-inst > svg{color:var(--text-3);width:16px;height:16px}
.cl-subs{margin-top:24px}
.cl-subs .chip em,.cl-mcats .chip em{font-style:normal;font-size:12px;opacity:.6;font-variant-numeric:tabular-nums}

/* 본문: 왼쪽 필터 + 오른쪽 결과 */
.cl-body{padding-top:28px;padding-bottom:72px}
.cl-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:40px;align-items:start}
.cl-side{position:sticky;top:calc(var(--header-h) + 20px);max-height:calc(100vh - var(--header-h) - 40px);overflow-y:auto;scrollbar-width:thin;padding-right:6px}
.cl-side-h{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:2px solid var(--ink-900);font-size:15px;font-weight:800}
.cl-side-h button{font-size:13px;font-weight:600;color:var(--text-3);display:inline-flex;align-items:center;gap:4px}
.cl-side-h button:hover{color:var(--text)}
.cl-side-h svg{width:14px;height:14px}
.cl-cats{padding:12px 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:2px}
.cl-cats h4,.cl-facet h4{font-size:14px;font-weight:700;margin:0 0 8px}
.cl-cats button{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 10px;border-radius:var(--r-md);font-size:14px;font-weight:500;color:var(--text-2);text-align:left}
.cl-cats button:hover{background:var(--ink-100);color:var(--text)}
.cl-cats button.is-active{background:var(--ink-900);color:#fff;font-weight:700}
.cl-cats button svg{width:16px;height:16px}
.cl-cats button em,.cl-facet em{margin-left:auto;font-style:normal;font-size:12.5px;font-weight:500;color:var(--text-3);font-variant-numeric:tabular-nums}
.cl-cats button.is-active em{color:rgba(255,255,255,.6)}
.cl-facet{padding:18px 0;border-bottom:1px solid var(--border)}
.cl-facet:last-child{border-bottom:0}
.cl-facet label{display:flex;width:100%;padding:5px 10px 5px 0;font-size:14px;color:var(--text-2)}
.cl-facet label:hover{color:var(--text)}
.cl-facet input:checked ~ span{color:var(--text);font-weight:600}
.cl-facet .is-zero{opacity:.45}
.cl-facet .badge{margin-left:2px}
.cl-side-note{margin-top:16px;padding:12px 14px;border-radius:var(--r-md);background:var(--bg-subtle);font-size:12.5px;line-height:1.6;color:var(--text-2)}
.cl-side-note b{display:flex;align-items:center;gap:6px;color:var(--text);margin-bottom:2px}
.cl-side-note svg{width:15px;height:15px}

/* 툴바 */
.cl-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.cl-count{font-size:14.5px;color:var(--text-2);margin-right:auto;white-space:nowrap}
.cl-count b{color:var(--text);font-weight:800}
.cl-fbtn{display:none}
.cl-fbtn .cnt{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--ink-900);color:#fff;font-size:11.5px;font-weight:700;display:inline-grid;place-items:center}
.cl-sort{width:auto;height:36px;font-size:14px;padding-left:12px;font-weight:600}
.cl-viewseg button{width:34px;justify-content:center;padding:0}
.cl-viewseg svg{width:16px;height:16px}
.cl-applied{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px}
.cl-achip{gap:4px;padding-right:8px;background:var(--bg-subtle)}
.cl-achip svg{width:14px;height:14px;color:var(--text-3)}
.cl-achip:hover svg{color:var(--text)}
.cl-reset{height:32px;padding:0 10px;font-size:13px;font-weight:600;color:var(--text-3);display:inline-flex;align-items:center;gap:4px;border-radius:var(--r-md)}
.cl-reset:hover{color:var(--text);background:var(--ink-100)}
.cl-reset svg{width:14px;height:14px}

/* 멤버십 안내 띠 (멤버십 포함 필터) */
.cl-mband{display:flex;align-items:center;gap:16px;padding:16px 20px;margin-bottom:24px;border-radius:var(--r-lg);background:var(--ink-900);color:rgba(255,255,255,.78);font-size:14px}
.cl-mband > div{flex:1;min-width:0}
.cl-mband b{display:block;color:#fff;font-size:15.5px;letter-spacing:-.02em;margin-top:6px}
.cl-mband b em{font-style:normal;color:var(--lime)}

/* 검색: 일치 강사 */
.cl-instmatch{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.cl-instmatch .cl-inst{border:1px solid var(--border);padding:10px 14px 10px 10px;background:var(--bg)}
.cl-instmatch .cl-inst:hover{border-color:var(--ink-900)}
.cl-instmatch .cl-inst small{max-width:240px}

/* 결과 그리드 */
.cl-main .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cl-cell{min-width:0;display:flex;flex-direction:column;gap:10px}
.cl-hit{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:var(--r-md);background:var(--bg-subtle);border:1px solid var(--border);font-size:13px;line-height:1.55;color:var(--text-2);transition:border-color .15s}
.cl-hit:hover{border-color:var(--ink-900)}
.cl-hit-top{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:12px;font-weight:700;color:var(--text);white-space:nowrap} /* 좁은 카드(모바일 2열)에서는 '대본 일치'를 한 줄로 두고 시점을 다음 줄로 */
.cl-hit-top > svg{width:14px;height:14px}
.cl-hit-ts{margin-left:auto;display:inline-flex;align-items:center;gap:3px;color:var(--lime-ink);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.cl-hit-ts svg{width:11px;height:11px;fill:currentColor}
.cl-hit mark,.cl-mark{background:var(--lime);color:var(--ink-900);border-radius:2px;padding:0 1px}
.cl-hit-more{font-size:12.5px;font-weight:600;color:var(--text-3);padding-left:2px}

/* 결과 목록형 */
.cl-list{border-top:1px solid var(--border)}
.cl-item{padding:20px 0;border-bottom:1px solid var(--border)}
.cl-row{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:20px;align-items:start}
.cl-row-thumb{aspect-ratio:4/3;border-radius:var(--r-md)}
.cl-row-thumb .badges{position:absolute;left:8px;top:8px;display:flex;gap:4px}
.cl-row-cat{font-size:12.5px;font-weight:600;color:var(--text-3)}
.cl-row-title{font-size:17px;font-weight:700;letter-spacing:-.025em;line-height:1.45;margin:2px 0 6px}
.cl-row:hover .cl-row-title{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cl-row-sum{font-size:14px;color:var(--text-2)}
.cl-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:10px;font-size:13px;color:var(--text-2)}
.cl-row-meta > span{display:inline-flex;align-items:center;gap:4px}
.cl-row-meta svg{width:14px;height:14px;color:var(--text-3)}
.cl-row .tags{margin-top:10px}
.cl-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:132px;text-align:right}
.cl-row-side .price{justify-content:flex-end;font-size:16px}
.cl-item .cl-hit{margin:12px 0 0 220px}

/* 빈 상태 */
.cl-empty{border:1px solid var(--border);border-radius:var(--r-lg)}
.cl-empty .empty{padding:48px 20px 28px}
.cl-suggest{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;padding:0 20px 36px}
.cl-suggest > b{font-size:13px;color:var(--text-3);margin-right:6px}
.cl-empty-more{margin-top:40px}
.cl-layout.is-nohit{grid-template-columns:minmax(0,1fr)}
.cl-layout.is-nohit .cl-side,.cl-layout.is-nohit .cl-toolbar{display:none}
.cl-layout.is-nohit .cl-main .course-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cl-empty-more h3{margin-bottom:16px}

@media (max-width:1024px){
  .cl-layout{grid-template-columns:minmax(0,1fr)}
  .cl-side{display:none}
  .cl-fbtn{display:inline-flex}
  .cl-mtop{display:block;padding-top:14px}
  .cl-mtop .cl-msearch{display:none}
  .cl-cathead{grid-template-columns:minmax(0,1fr) 300px;gap:24px}
  .cl-pop{display:none}
  .cl-item .cl-hit{margin-left:0}
  .cl-layout.is-nohit .cl-main .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:768px){
  .course-grid .cl-hit-ts{margin-left:0}
  .cl-mtop{padding-top:12px}
  .cl-mtop .cl-msearch{display:block;margin-bottom:10px}
  .cl-msearch .input{height:46px;background:var(--ink-100);border-color:transparent}
  .cl-msearch .input:focus{background:var(--bg)}
  .cl-mcats{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 2px}
  .cl-head{border-bottom:0}
  .cl-head.is-cat{background:transparent}
  .cl-head-in{padding-top:20px;padding-bottom:4px}
  .cl-head .breadcrumb{display:none}
  .cl-title{font-size:22px}
  .cl-desc{font-size:14px}
  .cl-cathead{grid-template-columns:minmax(0,1fr);gap:0}
  .cl-cat-ic{display:none}
  .cl-insts{display:none}
  .cl-stats{gap:6px 18px;margin-top:12px}
  .cl-stats dt{font-size:12px}
  .cl-stats dd{font-size:16px}
  .cl-subs{margin:16px calc(var(--gutter) * -1) 0;padding:0 var(--gutter) 2px}
  .cl-body{padding-top:16px;padding-bottom:48px}
  .cl-toolbar{flex-wrap:wrap;margin-bottom:10px}
  .cl-count{order:5;flex-basis:100%;margin-top:6px;font-size:13.5px}
  .cl-sort{margin-left:auto}
  .cl-applied{margin-bottom:16px}
  .cl-mband{flex-direction:column;align-items:stretch;gap:12px;padding:16px}
  .cl-mband .btn{width:100%}
  .cl-instmatch{flex-direction:column}
  .cl-row{grid-template-columns:112px minmax(0,1fr);gap:4px 14px}
  .cl-row-thumb{grid-row:span 2}
  .cl-row-thumb .badges{display:none}
  .cl-row-title{font-size:15px;margin-bottom:2px}
  .cl-row-sum,.cl-row .tags{display:none}
  .cl-row-meta{margin-top:4px;gap:2px 10px;font-size:12.5px}
  .cl-row-meta .hide-sm{display:none}
  .cl-row-side{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;min-width:0;text-align:left}
  .cl-row-side .price{font-size:15px;justify-content:flex-start}
  .cl-item{padding:16px 0}
  .cl-empty .empty{padding:36px 16px 20px}
  .cl-main .course-grid,.cl-layout.is-nohit .cl-main .course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ═══════════ F04 강사 프로필 (ip-) ═══════════ */
.ip-top{padding-top:20px}
.ip-crumb{margin-bottom:14px}
.ip-cover{aspect-ratio:3/1;border-radius:var(--r-xl)}
.ip-prof{display:grid;grid-template-columns:164px minmax(0,1fr) 300px;gap:0 28px;align-items:start}
.ip-avatar{position:relative;z-index:2;width:136px;height:136px;border-radius:50%;margin-top:-68px;margin-left:28px;box-shadow:0 0 0 5px var(--bg)}
.ip-info{padding-top:22px;min-width:0}
.ip-name{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ip-name h1{font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1.25}
.ip-role{font-size:15px;font-weight:600;color:var(--text-2);margin-top:4px}
.ip-headline{margin-top:16px;padding-left:14px;border-left:3px solid var(--lime);font-size:17px;font-weight:700;letter-spacing:-.025em;line-height:1.55}
.ip-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:16px;font-size:13.5px;color:var(--text-3)}
.ip-meta span{display:inline-flex;align-items:center;gap:5px}
.ip-meta svg{width:15px;height:15px}
.ip-meta b{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}
.ip-skills{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.ip-skills .tag{height:28px;padding:0 10px;font-size:12.5px;border-radius:var(--r-sm);transition:border-color .15s,color .15s}
.ip-skills .tag:hover{border-color:var(--ink-900);color:var(--text)}
.ip-side{padding-top:22px;display:flex;flex-direction:column;gap:14px;min-width:0}
.ip-actions{display:flex;gap:8px}
.ip-actions .btn:not(.btn-icon){flex:1}
.ip-links{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}
.ip-link{display:flex;align-items:center;gap:12px;padding:10px 14px;min-width:0}
.ip-link + .ip-link{border-top:1px solid var(--border)}
.ip-link:hover{background:var(--bg-subtle)}
.ip-link > svg{width:18px;height:18px;flex:none}
.ip-link span{display:flex;flex-direction:column;min-width:0;line-height:1.4}
.ip-link b{font-size:13px;font-weight:700}
.ip-link small{font-size:12.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ip-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:32px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ip-stat{display:flex;flex-direction:column;padding:18px 22px;min-width:0}
.ip-stat + .ip-stat{border-left:1px solid var(--border)}
.ip-stat-l{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-3)}
.ip-stat-l svg{width:15px;height:15px}
.ip-stat-v{margin-top:6px;font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.25;font-variant-numeric:tabular-nums}
.ip-stat-v small{margin-left:3px;font-size:14px;font-weight:600;color:var(--text-3);letter-spacing:0}
.ip-stat-m{font-size:12.5px;color:var(--text-3)}
.ip-tabs-wrap{position:sticky;top:var(--header-h);z-index:6;margin-top:40px;background:var(--bg);border-bottom:1px solid var(--border)}
.ip-tabs{border-bottom:0}
.ip-body{padding-top:32px;padding-bottom:80px}
.ip-panel-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;margin-bottom:20px}
.ip-panel-head h2{font-size:20px;font-weight:800;letter-spacing:-.03em}
.ip-panel-head .chips-scroll{max-width:100%}
.ip-cnt{margin-left:2px;font-weight:700;opacity:.55}
.ip-note{display:flex;align-items:center;gap:14px;margin-bottom:28px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-subtle);font-size:14px}
.ip-note > svg{width:20px;height:20px;flex:none}
.ip-note > div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ip-note span{font-size:13.5px;color:var(--text-2)}
.ip-sub{margin:0 0 14px;font-size:17px;font-weight:800;letter-spacing:-.03em}
.ip-pkgs{margin-top:56px}
.ip-pkgs:empty{display:none}
.ip-pkg-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ip-pkg{display:flex;align-items:center;gap:20px;min-width:0;padding:16px 18px;border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color .15s}
.ip-pkg:hover{border-color:var(--ink-900)}
.ip-pkg-thumbs{position:relative;flex:none;width:120px;height:90px}
.ip-pkg-thumbs .ph{position:absolute;width:84px;aspect-ratio:4/3;border-radius:var(--r-sm);box-shadow:0 0 0 2px var(--bg)}
.ip-pkg-thumbs .ph:nth-child(2){left:18px;top:13px}
.ip-pkg-thumbs .ph:nth-child(3){left:36px;top:26px}
.ip-pkg-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.ip-pkg-k{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--text-3)}
.ip-pkg-k svg{width:14px;height:14px}
.ip-pkg-t{font-size:16px;font-weight:800;letter-spacing:-.03em}
.ip-pkg-d{font-size:13px;color:var(--text-2)}
.ip-pkg .price{margin-top:4px;font-size:16px}
.ip-pkg-go{color:var(--text-3)}
.ip-about{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start}
.ip-h2{margin-bottom:14px;font-size:22px;font-weight:800;letter-spacing:-.035em}
.ip-p{font-size:15.5px;line-height:1.85;color:var(--text-2)}
.ip-p + .ip-p{margin-top:12px}
.ip-about-main .ip-sub{margin-top:40px}
.ip-ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ip-way{position:relative;padding:20px;border-radius:var(--r-lg);background:var(--bg-subtle)}
.ip-way > svg{display:block;width:22px;height:22px;margin-bottom:14px}
.ip-way-no{position:absolute;right:16px;top:18px;font-size:12px;font-weight:800;color:var(--text-3);font-variant-numeric:tabular-nums}
.ip-way b{display:block;font-size:15px;font-weight:800;letter-spacing:-.02em}
.ip-way p{margin-top:6px;font-size:13.5px;line-height:1.65;color:var(--text-2)}
.ip-acts{border-top:1px solid var(--border)}
.ip-acts li{display:flex;align-items:center;gap:12px;padding:14px 2px;border-bottom:1px solid var(--border);font-size:14.5px}
.ip-acts svg{width:18px;height:18px;flex:none;color:var(--text-3)}
.ip-about-side{position:sticky;top:calc(var(--header-h) + 72px);display:flex;flex-direction:column;gap:16px}
.ip-card{padding:22px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ip-card-h{display:flex;align-items:center;gap:8px;margin-bottom:18px;font-size:15px;font-weight:800}
.ip-card-h svg{width:17px;height:17px}
.ip-tl{position:relative;display:flex;flex-direction:column;gap:20px;padding-left:24px}
.ip-tl::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:var(--border)}
.ip-tl li{position:relative;display:flex;flex-direction:column;gap:2px}
.ip-tl li::before{content:"";position:absolute;left:-24px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--ink-300)}
.ip-tl li.is-now::before{background:var(--lime);border-color:var(--ink-900)}
.ip-tl-p{font-size:12.5px;font-weight:600;color:var(--text-3);font-variant-numeric:tabular-nums}
.ip-tl b{font-size:15px;font-weight:800;letter-spacing:-.02em}
.ip-tl-o{font-size:13.5px;line-height:1.55;color:var(--text-2)}
.ip-card-tags .tag{height:28px;padding:0 10px;font-size:12.5px}
.ip-rvsum{display:grid;grid-template-columns:200px minmax(0,1fr) 280px;gap:36px;align-items:center;margin-bottom:40px;padding:26px 30px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ip-rv-score{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.ip-rv-score > b{font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.ip-rv-score .stars svg{width:18px;height:18px}
.ip-rv-score > span:not(.stars){font-size:13px;color:var(--text-3)}
.ip-rv-dist{display:flex;flex-direction:column;gap:9px}
.ip-rv-bar{display:grid;grid-template-columns:30px minmax(0,1fr) 40px;align-items:center;gap:10px;font-size:13px;color:var(--text-2)}
.ip-rv-bar .progress{height:8px}
.ip-rv-bar em{font-style:normal;text-align:right;color:var(--text-3);font-variant-numeric:tabular-nums}
.ip-rv-kw{display:flex;flex-direction:column;gap:8px;padding-left:30px;border-left:1px solid var(--border)}
.ip-rv-kw-h{margin-bottom:2px;font-size:12.5px;font-weight:700;color:var(--text-3)}
.ip-kw{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:var(--r-md);background:var(--bg-subtle);font-size:13.5px;font-weight:600}
.ip-kw b{font-weight:800;font-variant-numeric:tabular-nums}
.ip-rvlist{border-top:1px solid var(--border)}
.ip-rv{padding:22px 0;border-bottom:1px solid var(--border)}
.ip-rv-head{display:flex;align-items:center;gap:12px}
.ip-rv-head b{font-size:14.5px}
.ip-rv-sub{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin-top:2px;font-size:12.5px;color:var(--text-3)}
.ip-rv-sub .stars svg{width:13px;height:13px}
.ip-rv-course{display:inline-flex;align-items:center;gap:6px;max-width:100%;margin-top:12px;padding:5px 10px;border-radius:var(--r-sm);background:var(--bg-subtle);font-size:12.5px;font-weight:600;color:var(--text-2)}
.ip-rv-course:hover{color:var(--text)}
.ip-rv-course svg{width:14px;height:14px;flex:none}
.ip-rv-text{max-width:820px;margin-top:10px;font-size:15px;line-height:1.75}
.ip-reply{display:flex;gap:10px;max-width:820px;margin-top:14px;padding:14px 16px;border-radius:var(--r-md);background:var(--bg-subtle)}
.ip-reply b{font-size:13px}
.ip-reply p{margin-top:2px;font-size:14px;line-height:1.65;color:var(--text-2)}
.ip-more{display:flex;justify-content:center;margin-top:28px}
.ip-more:empty{display:none}
.ip-notices summary{gap:14px}
.ip-nt-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ip-nt-course{font-size:12.5px;font-weight:600;color:var(--text-3)}
.ip-nt-title b{font-size:15.5px;font-weight:700;letter-spacing:-.02em;line-height:1.45}
.ip-nt-date{font-size:13px;font-weight:500;color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums}
.ip-nt-d2{display:none}
/* 공지 본문(평문·HTML, .prose): 글자 모양은 상자에 두어 HTML 공지의 목록·인용도 같게 */
.ip-nt-body{font-size:14.5px;line-height:1.8;color:var(--text-2)}
.ip-nt-body > :not(.ip-nt-link){max-width:820px}
.ip-nt-body h2{font-size:16px}.ip-nt-body h3{font-size:15px}.ip-nt-body h4{font-size:14.5px} /* 에디터 제목이 공지 제목(15.5px)보다 커지지 않게 */
.ip-nt-body b{color:var(--text)}
.ip-nt-link{display:inline-flex;align-items:center;gap:2px;margin-top:12px;font-size:13.5px;font-weight:700;color:var(--text)}
.ip-nt-link svg{width:15px;height:15px}
.ip-empty{border:1px dashed var(--border-strong);border-radius:var(--r-lg)}
.ip-others{padding:56px 0 64px;background:var(--bg-subtle);border-top:1px solid var(--border)}
.ip-others-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ip-other{display:flex;align-items:center;gap:14px;min-width:0;padding:18px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg);transition:border-color .15s}
.ip-other:hover{border-color:var(--ink-900)}
.ip-other-b{min-width:0;display:flex;flex-direction:column;gap:1px}
.ip-other-c{font-size:12px;font-weight:600;color:var(--text-3)}
.ip-other b{font-size:16px;font-weight:800;letter-spacing:-.02em}
.ip-other-b > .clamp-1{font-size:13px;color:var(--text-2)}
.ip-other small{margin-top:4px;font-size:12px;color:var(--text-3)}
.ip-404{padding:96px 20px 120px}
.ip-404-act{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.ip-modal-text{font-size:14.5px;line-height:1.7;color:var(--text-2)}
.ip-modal-list{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding:16px;border-radius:var(--r-md);background:var(--bg-subtle)}
.ip-modal-list li{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600}
.ip-modal-list svg{width:18px;height:18px;flex:none}
@media (max-width:1024px){
  .ip-prof{grid-template-columns:132px minmax(0,1fr)}
  .ip-avatar{width:112px;height:112px;margin-top:-56px;margin-left:20px}
  .ip-side{grid-column:1 / -1;flex-direction:row;align-items:flex-start;gap:12px}
  .ip-actions{flex:none;width:280px}
  .ip-links{flex:1;flex-direction:row}
  .ip-link{flex:1}
  .ip-link + .ip-link{border-top:0;border-left:1px solid var(--border)}
  .ip-about{grid-template-columns:minmax(0,1fr);gap:40px}
  .ip-about-side{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .ip-rvsum{grid-template-columns:180px minmax(0,1fr);gap:28px}
  .ip-rv-kw{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;align-items:center;padding:20px 0 0;border-left:0;border-top:1px solid var(--border)}
  .ip-rv-kw-h{width:100%}
  .ip-kw{flex:1;min-width:160px}
  .ip-pkg-list{grid-template-columns:minmax(0,1fr)}
  .ip-others-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:768px){
  .ip-top{padding-top:0}
  .ip-crumb{display:none}
  .ip-cover{aspect-ratio:2/1;margin:0 calc(var(--gutter) * -1);border-radius:0}
  .ip-prof{grid-template-columns:minmax(0,1fr)}
  .ip-avatar{width:88px;height:88px;margin:-44px 0 0;box-shadow:0 0 0 4px var(--bg)}
  .ip-info{padding-top:12px}
  .ip-name h1{font-size:26px}
  .ip-role{font-size:14px}
  .ip-headline{margin-top:12px;font-size:15.5px}
  .ip-meta{gap:4px 14px;font-size:13px}
  .ip-side{flex-direction:column;align-items:stretch;padding-top:18px}
  .ip-actions{width:auto}
  .ip-links{flex-direction:row;flex-wrap:wrap;gap:6px;border:0;border-radius:0}
  .ip-link{flex:none;gap:6px;padding:0 11px;height:34px;border:1px solid var(--border-strong) !important;border-radius:var(--r-pill)}
  .ip-link > svg{width:15px;height:15px}
  .ip-link small{display:none}
  .ip-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
  .ip-stat{padding:14px 16px}
  .ip-stat:nth-child(3){border-left:0}
  .ip-stat:nth-child(n+3){border-top:1px solid var(--border)}
  .ip-stat-v{font-size:22px}
  .ip-tabs-wrap{margin-top:28px}
  .ip-tabs .tab{padding:0 12px;font-size:14.5px}
  .ip-body{padding-top:24px;padding-bottom:56px}
  .ip-panel-head h2{font-size:18px}
  .ip-note{flex-wrap:wrap}
  .ip-note > div{flex-basis:calc(100% - 34px)}
  .ip-note .btn{margin-left:34px}
  .ip-pkgs{margin-top:40px}
  .ip-pkg{gap:14px;padding:14px}
  .ip-pkg-thumbs{width:88px;height:68px}
  .ip-pkg-thumbs .ph{width:62px}
  .ip-pkg-thumbs .ph:nth-child(2){left:13px;top:10px}
  .ip-pkg-thumbs .ph:nth-child(3){left:26px;top:20px}
  .ip-pkg-go{display:none}
  .ip-pkg-d{display:none}
  .ip-ways{grid-template-columns:minmax(0,1fr);gap:8px}
  .ip-way{display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 12px;padding:16px}
  .ip-way > svg{grid-row:span 2;margin:1px 0 0}
  .ip-way-no{display:none}
  .ip-way p{margin-top:0}
  .ip-about-side{grid-template-columns:minmax(0,1fr)}
  .ip-rvsum{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px}
  .ip-rv-score > b{font-size:44px}
  .ip-kw{min-width:0;flex-basis:100%}
  .ip-notices summary{padding:14px 16px;align-items:flex-start}
  .ip-nt-date{display:none}
  .ip-nt-d2{display:inline}
  .ip-nt-title b{font-size:15px}
  .ip-others{padding:40px 0 48px}
  .ip-others-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  .ip-other{padding:14px}
  .ip-other .avatar-lg{width:52px;height:52px}
}

/* ═══════════ F05 패키지 (pk-) ═══════════ */
/* 목록 */
.pk-lhead{padding:24px 0 40px;background:var(--bg-subtle);border-bottom:1px solid var(--border)}
.pk-miss{margin-bottom:20px}
.pk-lh1{margin-top:8px;font-size:40px;font-weight:800;letter-spacing:-.045em;line-height:1.25}
.pk-ldesc{max-width:560px;margin-top:12px;font-size:16px;line-height:1.7;color:var(--text-2)}
.pk-perks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:32px}
.pk-perks li{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
.pk-perks li > svg{width:22px;height:22px;flex:none}
.pk-perks div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pk-perks b{font-size:15px;font-weight:800;letter-spacing:-.02em}
.pk-perks span{font-size:13px;line-height:1.55;color:var(--text-2)}
.pk-lbody{padding-top:40px;padding-bottom:80px}
.pk-lbar h2{margin-bottom:20px;font-size:22px;font-weight:800;letter-spacing:-.035em}
.pk-lbar h2 span{color:var(--text-3)}
.pk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pk-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pk-grid-2 .pk-card{flex-direction:row}
.pk-grid-2 .pk-card-ph{flex:none;width:40%;aspect-ratio:auto;min-height:100%}
.pk-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--bg);transition:border-color .15s}
.pk-card:hover{border-color:var(--ink-900)}
.pk-card-ph{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:3px;aspect-ratio:16/9;background:var(--border)}
.pk-card-ph .ph:first-child{grid-row:1 / 3}
.pk-card-b{flex:1;display:flex;flex-direction:column;padding:18px 20px 20px}
.pk-card-k{font-size:12.5px;font-weight:600;color:var(--text-3)}
.pk-card-t{margin-top:4px;font-size:18px;font-weight:800;letter-spacing:-.03em}
.pk-card-d{margin-top:4px;font-size:13.5px;line-height:1.6;color:var(--text-2)}
.pk-card-list{display:flex;flex-direction:column;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
.pk-card-list li{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;color:var(--text-2)}
.pk-card-list li > span{display:grid;place-items:center;flex:none;width:18px;height:18px;border-radius:50%;background:var(--ink-100);font-size:11px;font-weight:700}
.pk-card-list em{min-width:0;font-style:normal}
.pk-card-price{margin-top:auto;padding-top:16px}
.pk-card-price .price{font-size:19px}
.pk-card-save{display:block;margin-top:2px;font-size:12.5px;font-weight:600;color:var(--text-3)}
.pk-vs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:28px;align-items:center;margin-top:48px;padding:26px 28px;border-radius:var(--r-lg);background:var(--bg-subtle)}
.pk-vs-k{display:inline-flex;align-items:center;gap:6px;font-size:15.5px;font-weight:800}
.pk-vs-k svg{width:18px;height:18px}
.pk-vs-t p{margin-top:6px;font-size:14px;line-height:1.65;color:var(--text-2)}
.pk-vs-t b{color:var(--text)}
.pk-vs-g{display:flex;flex-direction:column;gap:8px}
.pk-vs-g div{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;padding:10px 14px;border-radius:var(--r-md);background:var(--bg);font-size:13.5px}
.pk-vs-g dt{font-weight:800}
.pk-vs-g dd{color:var(--text-2)}
/* 상세: 머리 */
.pk-hero{background:var(--bg-subtle);border-bottom:1px solid var(--border)}
.pk-hero-in{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:56px;align-items:center;padding-top:24px;padding-bottom:44px}
.pk-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pk-h1{margin-top:12px;font-size:36px;font-weight:800;letter-spacing:-.045em;line-height:1.3}
.pk-desc{margin-top:8px;font-size:16px;line-height:1.7;color:var(--text-2)}
.pk-facts{display:flex;margin-top:26px}
.pk-facts div{display:flex;flex-direction:column;gap:2px;padding:0 28px}
.pk-facts div:first-child{padding-left:0}
.pk-facts div + div{border-left:1px solid var(--border-strong)}
.pk-facts dt{font-size:12.5px;font-weight:600;color:var(--text-3);white-space:nowrap}
.pk-facts dd{font-size:24px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pk-facts small{margin-left:2px;font-size:13px;font-weight:600;color:var(--text-3)}
.pk-insts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:24px}
.pk-insts a{display:inline-flex;align-items:center;gap:7px;font-size:13.5px}
.pk-insts a b{font-weight:700}
.pk-insts a span{color:var(--text-3)}
.pk-insts a:hover b{text-decoration:underline}
.pk-sold{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text-3)}
.pk-sold svg{width:15px;height:15px}
.pk-collage{position:relative;height:300px}
.pk-collage .ph{position:absolute;width:62%;aspect-ratio:4/3;border-radius:var(--r-lg);box-shadow:0 0 0 4px var(--bg-subtle),var(--sh-2)}
.pk-collage .ph:nth-child(1){left:0;top:0}
.pk-collage .ph:nth-child(2){left:19%;top:48px;z-index:1}
.pk-collage .ph:nth-child(3){right:0;bottom:0;z-index:2}
/* 상세: 본문 */
.pk-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:start;padding-top:40px;padding-bottom:72px}
.pk-main{min-width:0}
.pk-aside{position:sticky;top:calc(var(--header-h) + 24px)}
.pk-sec + .pk-sec{margin-top:56px}
.pk-sec-h{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin-bottom:18px}
.pk-sec-h h2,.pk-h2{font-size:21px;font-weight:800;letter-spacing:-.035em}
.pk-sec-h span{font-size:13.5px;color:var(--text-3)}
.pk-items{border-top:1px solid var(--ink-900)}
.pk-item{display:grid;grid-template-columns:28px 152px minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--border)}
.pk-no{font-size:15px;font-weight:800;color:var(--text-3);font-variant-numeric:tabular-nums}
.pk-item-ph{display:block;aspect-ratio:4/3;border-radius:var(--r-md)}
.pk-item.is-owned .pk-item-ph{opacity:.5}
.pk-item-b{min-width:0}
.pk-item-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text-3)}
.pk-item-t{display:block;margin-top:5px;font-size:16.5px;font-weight:800;letter-spacing:-.03em;line-height:1.45}
.pk-item-t:hover{text-decoration:underline}
.pk-item-m{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;font-size:13px;color:var(--text-2)}
.pk-item-p{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}
.pk-item-p small{font-size:12px;color:var(--text-3)}
.pk-item-p s{font-size:15px;font-weight:700;color:var(--text-3)}
.pk-total{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:16px;padding:18px 22px;border-radius:var(--r-lg);background:var(--bg-subtle)}
.pk-total > div{display:flex;flex-direction:column;gap:2px}
.pk-total span{font-size:12.5px;font-weight:600;color:var(--text-3)}
.pk-total s{font-size:17px;font-weight:700;color:var(--text-3)}
.pk-total b{font-size:20px;font-weight:800;letter-spacing:-.02em}
.pk-total > svg{color:var(--text-3)}
.pk-total em{margin-left:auto;padding:6px 12px;border-radius:var(--r-pill);background:var(--ink-900);color:#fff;font-size:13.5px;font-weight:800;font-style:normal}
.pk-road{display:flex;align-items:stretch;gap:8px}
.pk-step{flex:1;min-width:0;display:flex;flex-direction:column;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg)}
.pk-step-no{font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--text-3)}
.pk-step > b{margin-top:8px;font-size:16px;font-weight:800;letter-spacing:-.03em;line-height:1.4}
.pk-step p{flex:1;margin-top:6px;font-size:13.5px;line-height:1.65;color:var(--text-2)}
.pk-step-c{display:flex;align-items:center;gap:6px;min-width:0;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:12.5px;font-weight:600;color:var(--text-2)}
.pk-step-c svg{width:14px;height:14px;flex:none}
.pk-step-w{margin-top:3px;font-size:12px;color:var(--text-3)}
.pk-step:last-child{background:var(--ink-900);border-color:var(--ink-900);color:#fff}
.pk-step:last-child .pk-step-no{color:var(--lime)}
.pk-step:last-child p,.pk-step:last-child .pk-step-c{color:rgba(255,255,255,.72)}
.pk-step:last-child .pk-step-c{border-top-color:rgba(255,255,255,.16)}
.pk-step:last-child .pk-step-w{color:rgba(255,255,255,.5)}
.pk-arrow{display:grid;place-items:center;flex:none;color:var(--text-3)}
.pk-arrow svg{width:20px;height:20px}
.pk-goal{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:16px 18px;border-radius:var(--r-lg);background:var(--lime-soft)}
.pk-goal > svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--lime-deep)}
.pk-goal div{display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.6}
.pk-goal b{color:var(--lime-deep)}
.pk-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.pk-two > div{padding:24px;border:1px solid var(--border);border-radius:var(--r-lg)}
.pk-two .pk-h2{margin-bottom:16px;font-size:18px}
.pk-for{display:flex;flex-direction:column;gap:10px}
.pk-for li{display:flex;gap:10px;font-size:14.5px;line-height:1.6}
.pk-for svg{width:18px;height:18px;flex:none;margin-top:3px;padding:3px;border-radius:50%;background:var(--ink-900);color:#fff}
.pk-kv{gap:12px 20px}
/* 구매 박스 */
.pk-buy{overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--bg);box-shadow:var(--sh-2)}
.pk-deal{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:0 12px;padding:20px 22px;background:var(--ink-900);color:#fff}
.pk-deal span{font-size:13px;font-weight:600;color:rgba(255,255,255,.7)}
.pk-deal b{grid-row:1 / 3;grid-column:2;font-size:56px;font-weight:800;letter-spacing:-.05em;line-height:.9;color:var(--lime);font-variant-numeric:tabular-nums}
.pk-deal b small{margin-left:2px;font-size:26px}
.pk-deal em{font-size:17px;font-weight:800;font-style:normal}
.pk-buy-in{padding:20px 22px 22px}
.pk-price{display:flex;flex-direction:column;gap:2px}
.pk-price s{font-size:14px;color:var(--text-3)}
.pk-price b{font-size:30px;font-weight:800;letter-spacing:-.035em;line-height:1.25;font-variant-numeric:tabular-nums}
.pk-price-note{font-size:13px;color:var(--text-2)}
.pk-ex{display:flex;align-items:flex-start;gap:12px;margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-subtle)}
.pk-ex > span{display:flex;flex-direction:column;gap:2px;min-width:0}
.pk-ex b{font-size:14px}
.pk-ex small{font-size:12.5px;line-height:1.5;color:var(--text-2)}
.pk-hint{display:flex;gap:8px;margin-top:12px;font-size:13px;line-height:1.55;color:var(--text-2)}
.pk-hint svg{width:16px;height:16px;flex:none;margin-top:2px}
.pk-hint a{font-weight:700;color:var(--text);text-decoration:underline}
.pk-btns{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.pk-incl{display:flex;flex-direction:column;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}
.pk-incl li{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text-2)}
.pk-incl svg{width:16px;height:16px;flex:none;color:var(--text)}
.pk-gift{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:14px;font-size:13.5px;font-weight:600;color:var(--text-3)}
.pk-gift svg{width:16px;height:16px}
.pk-gift:hover{color:var(--text)}
.pk-more{padding:56px 0 64px;background:var(--bg-subtle);border-top:1px solid var(--border)}
@media (max-width:1024px){
  .pk-perks{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pk-grid,.pk-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pk-vs{grid-template-columns:minmax(0,1fr);gap:16px}
  .pk-vs .btn{justify-self:start}
  .pk-hero-in{grid-template-columns:minmax(0,1fr);gap:24px}
  .pk-collage{order:-1;position:static;height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .pk-collage .ph{position:static;width:auto;box-shadow:none;border-radius:var(--r-md)}
  .pk-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:28px}
  .pk-aside{position:static;order:-1}
}
@media (max-width:768px){
  .pk-lhead{padding:20px 0 28px}
  .pk-lh1{font-size:28px}
  .pk-ldesc{font-size:15px}
  .pk-perks{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:22px}
  .pk-perks li{padding:14px}
  .pk-lbody{padding-top:28px;padding-bottom:56px}
  .pk-grid,.pk-grid-2{grid-template-columns:minmax(0,1fr)}
  .pk-grid-2 .pk-card{flex-direction:column}
  .pk-grid-2 .pk-card-ph{width:auto;aspect-ratio:16/9;min-height:0}
  .pk-vs{margin-top:32px;padding:20px}
  .pk-hero-in{padding-top:16px;padding-bottom:28px}
  .pk-hero .breadcrumb{display:none}
  .pk-h1{font-size:26px}
  .pk-desc{font-size:15px}
  .pk-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px}
  .pk-facts div{padding:0 10px}
  .pk-facts dt{font-size:11.5px}
  .pk-facts dd{font-size:19px}
  .pk-facts small{font-size:11.5px}
  .pk-insts{margin-top:18px}
  .pk-sold{width:100%}
  .pk-sec + .pk-sec{margin-top:44px}
  .pk-sec-h h2,.pk-h2{font-size:19px}
  .pk-item{grid-template-columns:96px minmax(0,1fr);gap:6px 14px;align-items:start;padding:16px 0}
  .pk-no{display:none}
  .pk-item-t{font-size:15px;margin-top:4px}
  .pk-item-m{gap:2px 10px;font-size:12.5px}
  .pk-item-p{grid-column:2;flex-direction:row;align-items:baseline;gap:6px}
  .pk-item-p s{font-size:13.5px}
  .pk-total{padding:16px}
  .pk-total em{margin-left:0}
  .pk-road{flex-direction:column}
  .pk-arrow svg{transform:rotate(90deg)}
  .pk-two{grid-template-columns:minmax(0,1fr);gap:12px}
  .pk-two > div{padding:20px}
  .pk-btns,.pk-incl,.pk-gift{display:none}
  .pk-deal b{font-size:48px}
  .pk-price b{font-size:26px}
  .pk-more{padding:40px 0 48px}
}

/* ═══════════ F06 멤버십 (ms-) ═══════════ */
.ms-hero{overflow:hidden;background:var(--ink-900);color:#fff}
.ms-hero-in{display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:64px;align-items:center;padding-top:64px;padding-bottom:72px}
.ms-kicker{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.2);border-radius:var(--r-pill);font-size:13px;font-weight:700;color:rgba(255,255,255,.85)}
.ms-kicker svg{width:16px;height:16px;color:var(--lime)}
.ms-h1{margin-top:18px;font-size:48px;font-weight:800;letter-spacing:-.05em;line-height:1.2}
.ms-h1 em{font-style:normal;color:var(--lime)}
.ms-lead{max-width:540px;margin-top:18px;font-size:16.5px;line-height:1.75;color:rgba(255,255,255,.72)}
.ms-lead s{color:rgba(255,255,255,.5)}
.ms-lead b{color:#fff}
.ms-hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.ms-btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.ms-btn-ghost:hover{box-shadow:inset 0 0 0 1px #fff}
.ms-hero-facts{display:flex;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.ms-hero-facts div{display:flex;flex-direction:column-reverse;gap:2px;padding:0 28px}
.ms-hero-facts div:first-child{padding-left:0}
.ms-hero-facts div + div{border-left:1px solid rgba(255,255,255,.12)}
.ms-hero-facts dt{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.55);white-space:nowrap}
.ms-hero-facts dd{font-size:24px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
.ms-wall{position:relative}
.ms-wall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;transform:rotate(-4deg)}
.ms-wall-grid .ph{aspect-ratio:4/3;border-radius:var(--r-md)}
.ms-wall-grid .ph:nth-child(3n+2){transform:translateY(22px)}
.ms-save{position:absolute;left:-32px;bottom:-28px;display:flex;flex-direction:column;min-width:228px;padding:18px 20px;border-radius:var(--r-lg);background:#fff;color:var(--ink-900);box-shadow:var(--sh-3)}
.ms-save span{font-size:12.5px;font-weight:600;color:var(--text-3)}
.ms-save s{margin-bottom:8px;font-size:15px;color:var(--text-3)}
.ms-save b{font-size:26px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ms-status-wrap{padding-top:24px}
.ms-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:28px;align-items:center;padding:20px 24px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ms-st-badge{display:flex;align-items:center;gap:12px}
.ms-st-badge > svg{flex:none;width:42px;height:42px;padding:10px;border-radius:50%;background:var(--ink-900);color:var(--lime)}
.ms-st-badge div{display:flex;flex-direction:column}
.ms-st-badge span{font-size:12.5px;color:var(--text-3)}
.ms-st-badge b{font-size:16px;font-weight:800}
.ms-st-badge em{margin-left:4px;padding:4px 10px;border-radius:var(--r-pill);background:var(--ink-900);color:#fff;font-size:13px;font-weight:800;font-style:normal;font-variant-numeric:tabular-nums}
.ms-st-period{display:flex;flex-direction:column;gap:7px;min-width:0}
.ms-st-row{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--text-2)}
.ms-st-row b{color:var(--text)}
.ms-st-sub{font-size:12.5px;color:var(--text-3)}
.ms-st-learn{display:flex;gap:22px;padding:0 24px;border-left:1px solid var(--border);border-right:1px solid var(--border)}
.ms-st-learn div{display:flex;flex-direction:column;align-items:center}
.ms-st-learn b{font-size:22px;font-weight:800;line-height:1.2}
.ms-st-learn span{font-size:12px;color:var(--text-3);white-space:nowrap}
.ms-st-act{display:flex;gap:8px}
.ms-demo-row{display:flex;justify-content:flex-end;padding-top:20px}
.ms-sec{padding:72px 0}
.ms-sec-sub{background:var(--bg-subtle)}
#plans{padding-top:36px}
.ms-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:880px;margin:0 auto}
.ms-plan{position:relative;display:flex;flex-direction:column;align-items:stretch;padding:28px;border:1px solid var(--border-strong);border-radius:var(--r-xl);background:var(--bg);text-align:left;transition:border-color .15s,box-shadow .15s}
.ms-plan:hover{border-color:var(--ink-900)}
.ms-plan.is-on{border-color:var(--ink-900);box-shadow:0 0 0 1px var(--ink-900),var(--sh-2)}
.ms-plan-flag{position:absolute;top:-13px;left:24px;display:inline-flex;align-items:center;height:26px;padding:0 12px;border-radius:var(--r-pill);background:var(--lime);color:var(--ink-900);font-size:12.5px;font-weight:800}
.ms-plan-head{display:flex;align-items:center;gap:10px}
.ms-plan-head b{font-size:19px;font-weight:800;letter-spacing:-.03em}
.ms-radio{flex:none;width:22px;height:22px;border:1.5px solid var(--border-strong);border-radius:50%;transition:border .15s}
.ms-plan.is-on .ms-radio{border:7px solid var(--ink-900)}
.ms-plan-for{margin-top:6px;font-size:14px;color:var(--text-2)}
.ms-plan-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;margin-top:20px}
.ms-plan-price b{font-size:36px;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.ms-plan-price s{font-size:15px;color:var(--text-3)}
.ms-plan-per{font-size:13.5px;color:var(--text-2)}
.ms-plan-per b{color:var(--text)}
.ms-plan-list{display:flex;flex-direction:column;gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.ms-plan-list li{display:flex;align-items:center;gap:8px;font-size:14px}
.ms-plan-list svg{flex:none;width:16px;height:16px}
.ms-pick{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:880px;margin:20px auto 0;padding:16px 16px 16px 24px;border-radius:var(--r-lg);background:var(--bg-subtle)}
.ms-pick-t{display:flex;flex-direction:column;gap:1px;min-width:0}
.ms-pick-t span{font-size:12.5px;font-weight:600;color:var(--text-3)}
.ms-pick-t b{font-size:17px;font-weight:800}
.ms-pick-t small{font-size:13px;color:var(--text-2)}
.ms-pick-t small b{font-size:13px}
.ms-table-wrap{max-width:880px;margin:0 auto;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
.ms-table{width:100%;border-collapse:collapse;font-size:14.5px}
.ms-table th,.ms-table td{padding:15px 20px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}
.ms-table tbody tr:last-child th,.ms-table tbody tr:last-child td{border-bottom:0}
.ms-table thead th{background:var(--bg-subtle);font-size:13px;font-weight:700;color:var(--text-3)}
.ms-table thead th.is-ms{background:var(--ink-900);color:#fff}
.ms-table tbody th{width:38%;font-weight:700}
.ms-table td{width:31%;color:var(--text-2)}
.ms-table td.is-ms{background:var(--ink-50);color:var(--text);font-weight:600}
.ms-y,.ms-n{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:50%;vertical-align:middle;position:relative;top:-1px}
.ms-y{background:var(--ink-900);color:#fff}
.ms-n{background:var(--ink-200);color:var(--text-3)}
.ms-y svg,.ms-n svg{width:13px;height:13px}
.ms-cats{margin-bottom:24px}
.ms-cats .chip svg{width:15px;height:15px}
.ms-mine{display:inline-block;margin-bottom:4px;padding:2px 8px;border-radius:var(--r-xs);background:var(--ink-900);color:#fff;font-size:11.5px;font-weight:700}
.ms-excl{margin-top:48px;padding:24px;border:1px dashed var(--border-strong);border-radius:var(--r-lg)}
.ms-excl-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.ms-excl-h b{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:800}
.ms-excl-h b svg{width:17px;height:17px}
.ms-excl-h span{font-size:13.5px;color:var(--text-2)}
.ms-excl-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px;margin-top:16px}
.ms-excl-list a{display:flex;align-items:center;gap:10px;min-width:0}
.ms-excl-list .ph{flex:none;width:64px;aspect-ratio:4/3;border-radius:var(--r-sm)}
.ms-excl-b{display:flex;flex-direction:column;min-width:0}
.ms-excl-b em{font-size:13.5px;font-weight:700;font-style:normal}
.ms-excl-b small{font-size:12.5px;color:var(--text-3)}
.ms-excl-list a:hover em{text-decoration:underline}
.ms-excl-free{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);font-size:13.5px;color:var(--text-2)}
.ms-excl-free svg{flex:none;width:16px;height:16px;margin-top:2px}
.ms-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ms-rv{display:flex;flex-direction:column;margin:0;padding:24px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
.ms-rv-q{width:24px;height:24px;color:var(--ink-300)}
.ms-rv blockquote{flex:1;margin:12px 0 0;font-size:15px;line-height:1.75}
.ms-rv-cs{display:flex;flex-wrap:wrap;gap:4px;margin-top:16px}
.ms-rv-cs .tag:hover{border-color:var(--ink-900);color:var(--text)}
.ms-rv figcaption{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}
.ms-rv figcaption > span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}
.ms-rv figcaption b{font-size:14px}
.ms-rv figcaption small{font-size:12.5px;color:var(--text-3)}
.ms-rv .stars svg{width:13px;height:13px}
.ms-faq-wrap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:48px;align-items:start}
.ms-faq-h h2{font-size:28px;font-weight:800;letter-spacing:-.04em}
.ms-faq-h p{margin:8px 0 16px;font-size:14.5px;color:var(--text-2)}
.ms-end{background:var(--ink-900);color:#fff}
.ms-end-in{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:56px;padding-bottom:56px}
.ms-end h2{font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.35}
.ms-end p{margin-top:8px;color:rgba(255,255,255,.65)}
.ms-end-act{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:1024px){
  .ms-hero-in{grid-template-columns:minmax(0,1fr);gap:48px}
  .ms-wall{max-width:560px}
  .ms-status{grid-template-columns:auto minmax(0,1fr);gap:18px 24px}
  .ms-st-learn{padding:0;border:0}
  .ms-st-act{justify-content:flex-end}
  .ms-excl-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ms-faq-wrap{grid-template-columns:minmax(0,1fr);gap:20px}
}
@media (max-width:768px){
  .ms-hero-in{padding-top:36px;padding-bottom:40px}
  .ms-h1{font-size:32px}
  .ms-lead{font-size:15px}
  .ms-hero-cta .btn{flex:1 1 100%}
  .ms-hero-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px;padding-top:18px}
  .ms-hero-facts div{padding:0 10px}
  .ms-hero-facts dd{font-size:19px}
  .ms-hero-facts dt{font-size:11.5px}
  .ms-wall{display:none}
  .ms-status{grid-template-columns:minmax(0,1fr);padding:18px}
  .ms-st-learn{justify-content:flex-start}
  .ms-st-act .btn{flex:1}
  .ms-demo-row{justify-content:flex-start}
  .ms-sec{padding:48px 0}
  #plans{padding-top:28px}
  .ms-plans{grid-template-columns:minmax(0,1fr);gap:20px}
  .ms-plan.is-best{order:-1}
  .ms-plan{padding:24px 20px 20px}
  .ms-plan-price b{font-size:30px}
  .ms-pick{flex-direction:column;align-items:stretch;padding:16px}
  .ms-table{font-size:13px}
  .ms-table th,.ms-table td{padding:12px 10px}
  .ms-table tbody th{width:34%}
  .ms-table td{width:33%}
  .ms-y,.ms-n{display:grid;margin:0 0 4px}
  .ms-excl{margin-top:36px;padding:18px}
  .ms-excl-list{grid-template-columns:minmax(0,1fr)}
  .ms-reviews{grid-template-columns:minmax(0,1fr);gap:12px}
  .ms-rv{padding:20px}
  .ms-faq-h h2{font-size:22px}
  .ms-end-in{flex-direction:column;align-items:stretch;padding-top:40px;padding-bottom:40px}
  .ms-end h2{font-size:24px}
  .ms-end-act .btn{flex:1 1 100%}
}

/* ═══════════ F16 강사 신청 (ia-) ═══════════ */
.ia-hero{background:var(--bg-subtle);border-bottom:1px solid var(--border)}
.ia-alerts{display:flex;flex-direction:column;gap:8px;padding-top:20px}
.ia-alerts:not(:has(> :not([hidden]))){display:none}
.ia-alert{align-items:center}
.ia-alert > div{flex:1;min-width:0}
.ia-alert .btn{flex:none}
.ia-hero-in{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:72px;align-items:center;padding-top:56px;padding-bottom:72px}
.ia-kicker{display:inline-flex;align-items:center;height:30px;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--bg);font-size:13px;font-weight:700;color:var(--text-2)}
.ia-h1{margin-top:18px;font-size:44px;font-weight:800;letter-spacing:-.05em;line-height:1.25}
.ia-h1 em{font-style:normal;background:linear-gradient(transparent 60%,var(--lime) 60%,var(--lime) 92%,transparent 92%);padding:0 2px}
.ia-lead{max-width:520px;margin-top:18px;font-size:16.5px;line-height:1.75;color:var(--text-2)}
.ia-hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.ia-hero-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:32px;font-size:14px;font-weight:600;color:var(--text-2)}
.ia-hero-meta li{display:flex;align-items:center;gap:6px}
.ia-hero-meta svg{width:18px;height:18px;color:var(--text-3)}
.ia-hero-ph{position:relative}
.ia-hero-ph > .ph{aspect-ratio:10/11;border-radius:var(--r-xl)}
.ia-float{position:absolute;left:-48px;bottom:28px;width:300px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;padding:16px 18px;border-radius:var(--r-lg);background:var(--bg);box-shadow:var(--sh-3)}
.ia-float div{display:flex;flex-direction:column;line-height:1.35}
.ia-float b{font-size:14px;font-weight:800}
.ia-float span{font-size:12px;color:var(--text-3)}
.ia-float p{grid-column:1 / -1;margin-top:8px;font-size:13.5px;line-height:1.65;color:var(--text-2)}

.ia-sec{padding:80px 0}
.ia-sec-sub{background:var(--bg-subtle)}
.ia-k{display:inline-block;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--text-3)}
.ia-h2{font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1.3}
.ia-p{margin-top:8px;color:var(--text-2)}
.ia-perks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ia-perk{padding:24px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ia-perk-ic{display:grid;place-items:center;width:44px;height:44px;margin-bottom:18px;border-radius:var(--r-md);background:var(--lime-soft);color:var(--ink-900)}
.ia-perk-ic svg{width:22px;height:22px}
.ia-perk b{display:block;font-size:17px;font-weight:800;letter-spacing:-.03em}
.ia-perk p{margin-top:8px;font-size:14px;line-height:1.7;color:var(--text-2)}

/* 수익 계산기 */
.ia-calc{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:56px;align-items:center}
.ia-range{margin-top:28px}
.ia-range-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.ia-range-h label{font-size:14px;font-weight:700}
.ia-range-h b{font-size:20px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ia-range input{--p:50%;display:block;width:100%;height:24px;margin:10px 0 4px;background:transparent;appearance:none;-webkit-appearance:none;cursor:pointer}
.ia-range input::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--ink-900) var(--p),var(--ink-200) var(--p))}
.ia-range input::-moz-range-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--ink-900) var(--p),var(--ink-200) var(--p))}
.ia-range input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:var(--bg);border:2px solid var(--ink-900);box-shadow:var(--sh-1)}
.ia-range input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--bg);border:2px solid var(--ink-900)}
.ia-range input:focus-visible{outline:0}
.ia-range input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--lime-soft),0 0 0 5px var(--ink-900)}
.ia-range-s{display:flex;justify-content:space-between;font-size:12px;color:var(--text-3)}
.ia-calc-type{display:flex;align-items:center;gap:14px;margin-top:28px;font-size:14px;font-weight:700}
.ia-calc-type .seg{background:var(--ink-200)}
.ia-result{display:flex;flex-direction:column;padding:32px;border-radius:var(--r-xl);background:var(--ink-900);color:#fff;box-shadow:var(--sh-2)}
.ia-res-k{font-size:14px;font-weight:600;color:rgba(255,255,255,.6)}
.ia-res-v{margin-top:4px;font-size:44px;font-weight:800;letter-spacing:-.04em;line-height:1.2;color:var(--lime);font-variant-numeric:tabular-nums}
.ia-res-y{margin-top:2px;font-size:14px;color:rgba(255,255,255,.7)}
.ia-split{height:10px;margin-top:24px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden}
.ia-split i{display:block;height:100%;border-radius:inherit;background:var(--lime)}
.ia-split-l{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:12.5px;color:rgba(255,255,255,.6)}
.ia-res-kv{margin-top:20px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}
.ia-res-kv div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px}
.ia-res-kv dt{color:rgba(255,255,255,.6)}
.ia-res-kv dd{font-weight:600;font-variant-numeric:tabular-nums}
.ia-res-note{display:flex;gap:8px;margin-top:16px;font-size:12.5px;line-height:1.6;color:rgba(255,255,255,.55)}
.ia-res-note svg{flex:none;width:16px;height:16px;margin-top:2px}

/* 신청서 */
.ia-apply-h{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}
.ia-steps{margin-bottom:32px;padding:18px 22px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ia-steps .step .no svg{width:14px;height:14px}
.ia-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
.ia-form{display:flex;flex-direction:column;gap:16px;min-width:0}
.ia-fs{min-width:0;margin:0;padding:24px 28px 28px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ia-fs > legend:not(.sr-only){float:left;width:100%;padding:0;margin-bottom:18px;font-size:17px;font-weight:800;letter-spacing:-.03em}
.ia-fs > legend:not(.sr-only) + *{clear:both}
.ia-fs-help{margin-bottom:14px;font-size:14px;color:var(--text-2)}
.ia-count{display:flex;justify-content:space-between;gap:8px}
.ia-count #careerCnt{font-variant-numeric:tabular-nums}
.ia-link-row + .ia-link-row{margin-top:8px}
.ia-link-row .input-icon{flex:1;min-width:0}
.ia-add{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;margin-top:4px;font-size:13.5px;font-weight:600;color:var(--text-2)}
.ia-add svg{width:16px;height:16px}
.ia-add:hover{color:var(--text)}
.ia-vseg{margin-bottom:16px}
.ia-vpanel.field + .field{margin-top:0}
.ia-drop{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;cursor:pointer}
.ia-drop svg{width:28px;height:28px;margin-bottom:4px;color:var(--text-3)}
.ia-drop b{font-size:14.5px;color:var(--text)}
.ia-drop span{font-size:13px;color:var(--text-3)}
.ia-drop:hover{border-color:var(--ink-900)}
.ia-file{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md)}
.ia-file-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--r-sm);background:var(--bg-subtle)}
.ia-file-ic svg{width:20px;height:20px}
.ia-file-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.ia-file-b b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ia-file-b span{font-size:12.5px;color:var(--text-3)}
#vErr{display:block;margin-top:8px}
.ia-radios{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;min-height:44px}
.ia-ta-sm{min-height:96px}
.ia-paytype{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ia-pt{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--border-strong);border-radius:var(--r-md);cursor:pointer;transition:border-color .15s,box-shadow .15s}
.ia-pt input{flex:none;width:20px;height:20px;margin:1px 0 0;border:1.5px solid var(--border-strong);border-radius:50%;background:var(--bg);appearance:none;-webkit-appearance:none}
.ia-pt input:checked{border:6px solid var(--ink-900)}
.ia-pt:has(input:checked){border-color:var(--ink-900);box-shadow:0 0 0 1px var(--ink-900)}
.ia-pt span{display:flex;flex-direction:column;gap:2px}
.ia-pt b{font-size:15px}
.ia-pt small{font-size:13px;color:var(--text-3)}
.ia-pay-help{margin-top:10px}
.ia-terms{padding-top:20px;padding-bottom:20px}
.ia-all{padding-bottom:14px;width:100%;border-bottom:1px solid var(--border);font-size:15.5px}
.ia-terms ul{margin-top:6px}
.ia-terms li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0}
.ia-terms li .check{font-size:14px;color:var(--text-2)}
.ia-view{flex:none;font-size:13px;color:var(--text-3);text-decoration:underline;text-underline-offset:3px}
.ia-view:hover{color:var(--text)}
.ia-submit{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}
.ia-submit .btn-primary{min-width:200px}
.ia-aside{position:sticky;top:calc(var(--header-h) + 24px);display:flex;flex-direction:column;gap:16px}
.ia-card{padding:24px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
.ia-card h3{margin-bottom:16px;font-size:16px;font-weight:800;letter-spacing:-.03em}
.ia-card-sub{background:var(--bg-subtle);border-color:transparent}
.ia-crit li{display:flex;gap:12px}
.ia-crit li + li{margin-top:16px}
.ia-crit svg{flex:none;width:36px;height:36px;padding:8px;border-radius:var(--r-md);background:var(--ink-100)}
.ia-crit div{display:flex;flex-direction:column;gap:2px}
.ia-crit b{font-size:14.5px}
.ia-crit span{font-size:13px;line-height:1.55;color:var(--text-3)}
.ia-mini-faq details{border-top:1px solid var(--border)}
.ia-mini-faq summary{display:flex;justify-content:space-between;gap:8px;padding:12px 0;font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.ia-mini-faq summary::-webkit-details-marker{display:none}
.ia-mini-faq summary::after{content:"+";flex:none;font-weight:500;color:var(--text-3)}
.ia-mini-faq details[open] summary::after{content:"−"}
.ia-mini-faq p{padding-bottom:12px;font-size:13.5px;line-height:1.65;color:var(--text-2)}
.ia-ask{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:14px;font-weight:700}
.ia-ask svg{width:16px;height:16px}
.ia-ask:hover{text-decoration:underline}
.ia-modal-p{font-size:15px;line-height:1.7;color:var(--text-2)}
.ia-terms-body p{font-size:14px;line-height:1.75;color:var(--text-2)}
.ia-terms-body p + p{margin-top:12px}
.ia-terms-body b{display:block;color:var(--text)}

/* 이미 강사인 경우 */
.ia-already{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 32px;align-items:center;padding:28px;border:1px solid var(--border);border-radius:var(--r-lg)}
.ia-already-me{display:flex;align-items:center;gap:16px;min-width:0}
.ia-already-me > div{display:flex;flex-direction:column;gap:2px;min-width:0}
.ia-already-me b{font-size:18px;font-weight:800}
.ia-already-me span{font-size:13.5px;color:var(--text-3)}
.ia-already-me em{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:13px;font-weight:700;font-style:normal;color:var(--success)}
.ia-already-me em svg{width:16px;height:16px}
.ia-already-st{display:flex}
.ia-already-st div{display:flex;flex-direction:column-reverse;padding:0 24px}
.ia-already-st div + div{border-left:1px solid var(--border)}
.ia-already-st dt{font-size:12.5px;color:var(--text-3);white-space:nowrap}
.ia-already-st dd{font-size:22px;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
.ia-already-act{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;padding-top:20px;border-top:1px solid var(--border)}

/* 접수 완료 */
.ia-done-wrap{padding:24px 0 88px}
.ia-demo-row{display:flex;justify-content:flex-end}
.ia-done{max-width:880px;margin:0 auto}
.ia-done-head{padding:24px 0 32px;text-align:center}
.ia-done-ic{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:var(--lime);color:var(--ink-900)}
.ia-done-ic svg{width:32px;height:32px}
.ia-done-head h1{font-size:30px;font-weight:800;letter-spacing:-.04em}
.ia-done-head p{max-width:520px;margin:10px auto 0;font-size:16px;line-height:1.7;color:var(--text-2)}
.ia-done-head p b{color:var(--text)}
.ia-steps-done{background:var(--bg-subtle);border-color:transparent}
.ia-steps-done .step:not(.is-current):not(.is-done) .no{background:var(--bg)}
.ia-done-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ia-done-kv dd{overflow-wrap:anywhere}
.ia-mono{font-family:var(--font-mono);letter-spacing:0}
.ia-next li{display:flex;gap:12px}
.ia-next li + li{margin-top:16px}
.ia-next li > span{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--ink-100);font-size:12.5px;font-weight:700}
.ia-next b{font-size:14.5px}
.ia-next p{margin-top:2px;font-size:13.5px;line-height:1.6;color:var(--text-2)}
.ia-next p b{font-size:inherit}
.ia-done-act{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:32px}
.ia-done-foot{margin-top:16px;text-align:center;font-size:13.5px;color:var(--text-3)}
.ia-done-foot a{color:var(--text);font-weight:600;text-decoration:underline;text-underline-offset:3px}

@media (max-width:1024px){
  .ia-hero-in{grid-template-columns:minmax(0,1fr) 320px;gap:40px}
  .ia-h1{font-size:36px}
  .ia-float{left:-24px;width:260px}
  .ia-perks{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ia-calc{grid-template-columns:minmax(0,1fr);gap:32px}
  .ia-layout{grid-template-columns:minmax(0,1fr)}
  .ia-aside{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .ia-already{grid-template-columns:minmax(0,1fr)}
  .ia-already-st div:first-child{padding-left:0}
}
@media (max-width:768px){
  .ia-alerts{padding-top:12px}
  .ia-alert{flex-wrap:wrap}
  .ia-alert > div{flex-basis:calc(100% - 34px)}
  .ia-alert .btn{margin-left:30px}
  .ia-hero-in{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px;padding-bottom:40px}
  .ia-h1{margin-top:14px;font-size:28px}
  .ia-lead{font-size:15px}
  .ia-hero-cta{margin-top:22px}
  .ia-hero-cta .btn{flex:1 1 0;padding:0 12px}
  .ia-hero-meta{gap:6px 16px;margin-top:22px;font-size:13px}
  .ia-hero-ph{padding-bottom:64px}
  .ia-hero-ph > .ph{aspect-ratio:4/3}
  .ia-float{left:16px;right:16px;bottom:0;width:auto}
  .ia-sec{padding:48px 0}
  .ia-h2{font-size:22px}
  .ia-perks{grid-template-columns:minmax(0,1fr);gap:10px}
  .ia-perk{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;padding:18px}
  .ia-perk-ic{grid-row:span 2;margin-bottom:0}
  .ia-perk b{font-size:16px}
  .ia-perk p{margin-top:0;font-size:13.5px}
  .ia-calc{gap:24px}
  .ia-range{margin-top:22px}
  .ia-result{padding:24px 20px}
  .ia-res-v{font-size:34px}
  .ia-apply-h{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:20px}
  .ia-apply-h .fb-demo{flex-wrap:wrap;white-space:normal;align-self:flex-start}
  .ia-steps{gap:6px;margin-bottom:20px;padding:14px 16px}
  .ia-steps .step:not(.is-current) .lbl{display:none}
  .ia-steps .sep{min-width:8px}
  .ia-fs{padding:20px 16px}
  .ia-fs > legend:not(.sr-only){font-size:16px;margin-bottom:16px}
  .ia-paytype{grid-template-columns:minmax(0,1fr)}
  .ia-terms li .check{align-items:flex-start;font-size:13.5px}
  .ia-submit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}
  .ia-submit .btn-primary{min-width:0}
  .ia-aside{grid-template-columns:minmax(0,1fr)}
  .ia-already{padding:20px 16px}
  .ia-already-st div{padding:0 14px}
  .ia-already-st dd{font-size:18px}
  .ia-already-act .btn{flex:1 1 auto}
  .ia-done-wrap{padding:16px 0 48px}
  .ia-done-head{padding:16px 0 24px}
  .ia-done-ic{width:60px;height:60px;margin-bottom:16px}
  .ia-done-head h1{font-size:24px}
  .ia-done-head p{font-size:15px}
  .ia-done-grid{grid-template-columns:minmax(0,1fr)}
  .ia-done-act{flex-direction:column}
  .ia-done-act .btn{width:100%}
}
