/* 일사천리 다크 프리미엄 (처음 C안 색)
   짙은 남보라 바탕 + 은은한 보라 빛 + 노란 포인트.
   화면 구성은 dark.css 그대로 두고 색만 C안으로 바꿉니다. */
:root {
  --bg: #0B0A14;
  --surface: #13111F;
  --surface-2: #1B1830;
  --sunken: #100D22;
  --line: #2A2640;
  --line-2: #3B3654;
  --text: #EEECF6;
  --text-2: #B8B3CC;
  --text-3: #8E89A6;
  --purple: #7C5CFF;
  --purple-hover: #6B48F5;
  --purple-text: #A68CFF;
  --gray-700: #B8B3CC;
  --gray-500: #8E89A6;
  --gray-300: #3B3654;
  --gray-200: #2A2640;
  --gray-100: #1B1830;
  --lavender: #251E4A;
  --lavender-2: #17142A;
  --yellow: #FFE58A;
}
main > section + section { border-top: 0; }
.eyebrow { color: var(--purple-text); }

/* 노란 동그라미 체크 */
.slide-points li::before,
.plan-features li::before {
  border-radius: 50%; background-color: var(--yellow);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%2317142A' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* 위 안내 띠: 보라 / 상단 메뉴: 짙은 남보라 */
.promo { background: #6135E1; color: #fff; border-bottom: 0; }
.promo-sub, .promo-close { color: #E2D9FF; }
.promo-link { color: var(--yellow); }
.badge-new { background: #FF5A4E; color: #fff; }
.header { background: rgba(11, 10, 20, .84); border-bottom-color: var(--line); }
.nav { color: #CFCBDD; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--yellow); }
.nav a[aria-current="page"] { text-decoration-color: var(--yellow); }
.header-phone { color: #CFCBDD; }
.header-phone svg { stroke: var(--purple-text); }
@media (max-width: 860px) {
  .nav { background: #13111F; }
}

/* 첫 화면: 왼쪽은 짙은 남보라, 오른쪽으로 갈수록 보라 빛 */
.hero-plan {
  background:
    radial-gradient(55% 75% at 88% 45%, rgba(124, 92, 255, .38) 0%, transparent 70%),
    linear-gradient(90deg, #0B0A14 0%, #120E28 50%, #1E1450 100%);
}
.hero-plan h1 { color: #fff; }
.hero-plan h1 em { color: var(--yellow); }
.hero-plan .hero-lead { color: #CFCBDD; }
.hero-plan .eyebrow-chip { background: rgba(255, 255, 255, .12); color: #fff; border: 0; }
.hero-plan .btn-primary { background: #fff; color: #6135E1; }
.hero-plan .btn-primary:hover { background: #E6E0FF; }
.hero-plan .btn-ghost { background: rgba(255, 255, 255, .06); color: #fff; border-color: rgba(255, 255, 255, .45); }
.hero-plan .btn-ghost:hover { background: rgba(255, 255, 255, .12); border-color: #fff; }
.hero-plan .hero-checks { color: rgba(255, 255, 255, .88); }
.hero-plan .hero-checks li::before {
  border-radius: 50%; background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%236135E1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.hero-media { border-color: rgba(166, 140, 255, .28); box-shadow: 0 40px 90px -40px rgba(124, 92, 255, .6); }

/* 일·사·천·리 */
.about { background: radial-gradient(55% 45% at 90% 0%, rgba(124, 92, 255, .22) 0%, transparent 70%), var(--bg); }
.car-btn { background: var(--surface); border-color: var(--line-2); color: #fff; }
.car-btn:hover { background: var(--purple); border-color: var(--purple); }
.slide { background: var(--surface); border-color: var(--line); }
.slide.is-active { border-color: #4B3F8A; box-shadow: 0 30px 60px -34px rgba(124, 92, 255, .5); }
.slide-visual { background: var(--surface-2); }
.slide-key span { color: var(--purple-text); }
.slide-link { color: var(--yellow); }
.car-tab .bar i { background: var(--yellow); }
.car-tab.is-active b { background: var(--purple); color: #fff; }
.promise-ico { background: rgba(255, 229, 138, .12); border-color: transparent; }
.promise-ico svg { stroke: var(--yellow); }

/* 상품 */
.products { background: radial-gradient(50% 40% at 88% 0%, rgba(124, 92, 255, .3) 0%, transparent 70%), #100D22; }
.plan { background: #15122A; border-color: var(--line); }
.plan-main {
  border: 1.5px solid transparent;
  background: linear-gradient(#1A1436, #15122A) padding-box, linear-gradient(140deg, #FFE58A 0%, #A68CFF 45%, rgba(255, 255, 255, .12) 100%) border-box;
}
.plan-visual { background: var(--surface-2); border-bottom-color: var(--line); }
.plan-visual svg .win, .plan-visual svg .env rect { fill: var(--surface-2); }
.plan-visual svg .floor { fill: rgba(124, 92, 255, .14); }
.plan-visual svg .lock rect, .plan-visual svg .lock path { stroke: var(--yellow); }
.plan-visual svg .mb.is-hl rect, .plan-visual svg .mb.is-hl path { stroke: var(--yellow); }
.badge-best { background: var(--yellow); color: #17142A; }
.plan-one { color: #C9B8FF; }
.plan-for { background: var(--lavender-2); border-color: #3A2F70; }
.plan-for strong { color: var(--yellow); }
.products .btn-primary { background: #fff; color: #6135E1; }
.products .btn-primary:hover { background: #E6E0FF; }
.products .btn-outline { color: #C9B8FF; border-color: var(--purple); }
.products .btn-outline:hover { background: var(--lavender); border-color: var(--purple); }
.plan-help { background: #15122A; border-color: var(--line); }
.plan-help-ico { background: var(--yellow); border: 0; }
.plan-help-ico svg { stroke: #17142A; }

/* 무료 강의 */
.program { background: var(--bg); }
.course { background: var(--surface); border-color: var(--line); }
.course-no { color: var(--purple-text); }
.course-tag { background: var(--lavender); color: #C9B8FF; }
.curriculum li { background: var(--surface-2); }
.curriculum li::before { color: var(--purple-text); }
.course-result { background: var(--lavender-2); border-color: #3A2F70; }
.course-result strong { color: var(--yellow); }
.course-proof { color: #C9B8FF; }
.mw-window { background: var(--surface-2); }
.mw-bar { background: var(--surface); border-bottom-color: var(--line); }
.mw-prompt { background: var(--lavender); }
.program-cta { background: linear-gradient(120deg, #6135E1, #2A1380); border: 0; color: #fff; }
.program-cta p { color: #E2D9FF; }
.program-cta .btn-primary { background: #fff; color: #6135E1; }
.program-cta .btn-primary:hover { background: #E6E0FF; }
.program-cta .btn-ghost-dark { color: #fff; border-color: rgba(255, 255, 255, .55); }

/* 시설 · 상담 · 맨 아래 */
.amenities { background: var(--bg); }
.amenity-grid li { background: var(--surface); border-color: var(--line); }
.amenity-grid svg { stroke: var(--purple-text); }
.contact { background: linear-gradient(160deg, #2A1380 0%, #13111F 100%); }
.contact-copy .eyebrow { color: #C9B8FF; }
.contact-copy > p { color: #CFCBDD; }
.contact-phone { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .16); }
.contact-form { background: var(--surface); border-color: var(--line); }
.field input, .field select { background-color: var(--bg); border-color: var(--line); }
.field input::placeholder { color: #6F6A88; }
.footer { background: #07060E; border-top-color: var(--line); }
.mobile-bar { background: rgba(11, 10, 20, .96); }

/* ───────── 강의실 ───────── */
.cr-hero { background: radial-gradient(50% 50% at 90% 0%, rgba(124, 92, 255, .38) 0%, transparent 70%), #100D22; }
.cr-hero .eyebrow-chip { background: rgba(255, 255, 255, .12); color: #fff; border: 0; }
.cr-signup-done svg { stroke: var(--yellow); }
.cr-me { background: var(--surface); border-color: var(--line); }
.cr-me-title { color: var(--purple-text); }
.cr-ring-fg { stroke: var(--yellow); }
.cr-me-next { background: var(--lavender-2); border-color: #3A2F70; }
.cr-me-label { color: var(--yellow); }
.cr-course { background: var(--surface); border-color: var(--line); }
.cr-course-result { background: var(--lavender-2); border-color: #3A2F70; }
.cr-course-result strong { color: var(--yellow); }
.cr-progress.is-mine .cr-progress-bar i { background: var(--yellow); }
.cr-course-go { background: transparent; color: #C9B8FF; border-color: var(--purple); }
.cr-course-go:hover { background: var(--purple); color: #fff; }
.cr-step-ico svg { stroke: var(--purple-text); }
.cr-toolbar { background: rgba(11, 10, 20, .9); }
.cr-tab[aria-pressed="true"] { background: var(--purple); border-color: var(--purple); color: #fff; }
.cr-tab[aria-pressed="true"] span { background: rgba(255, 255, 255, .18); color: #fff; }
.cr-filter[aria-pressed="true"] { background: var(--yellow); border-color: var(--yellow); color: #17142A; }
.lec { background: var(--surface); border-color: var(--line); }
.lec:not(.is-soon):hover { border-color: #4B3F8A; }
.lec-done[aria-pressed="true"] { background: var(--yellow); border-color: var(--yellow); color: #17142A; }
.lec-thumb, .lec-ph { background: linear-gradient(150deg, #4A2BC2 0%, #1F0D69 100%); }
.lec-mkt .lec-ph { background: linear-gradient(150deg, #33198F 0%, #150850 100%); }
.lec-ph-top { color: rgba(255, 255, 255, .6); }
.lec-ph-top b { color: #C9B8FF; }
.is-done .lec-thumb::after { background: rgba(11, 10, 20, .6); }
.cr-faq summary::after { background-color: var(--lavender); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 7v10M7 12h10' fill='none' stroke='%23C9B8FF' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E"); }

/* 칼럼: 한눈에 보기 상자는 노란 포인트 */
.col-summary { border-left-color: var(--yellow); }
.col-summary strong { color: var(--yellow); }
.col-summary li::before { background: var(--yellow); }

/* 로고: 흰색이 아니라 원래 보라색 그대로 */
.brand img { filter: none; }
