@charset "UTF-8";

/* =============================================================================
 * onboarding.css — 완두콩 온보딩 프로모션
 * 페이지 순서: 공통 → 히어로 → 내비 → 섹션공통/로그인게이트 → 미션 → 퀴즈 → 완두콩요약 → 버튼 → 유의사항 → 모달 → 호버잠금 → 반응형
 * ============================================================================= */
/* =============================================================================
 * 1. 공통
 * ============================================================================= */
#onboarding_promotion_body {
	overflow-x: hidden;
}

#onboarding_promotion_body * {
	font-family: 'pretendard', sans-serif !important;
}

#onboarding_promotion {
	font-family: 'pretendard', sans-serif;
	background: #fefefe;
	color: #111;
}

#onboarding_promotion .pro-wrap__body {
	position: relative;
}
.only_mo{
	display: none;
}

.onboarding_blind {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#onboarding_promotion_body a:focus,
#onboarding_promotion_body a:focus-visible,
#onboarding_promotion_body a:active {
	outline: none;
	box-shadow: none;
}
/* =============================================================================
 * 2. 히어로
 * ============================================================================= */
.onboarding_hero {
	position: relative;
	min-height: 1000px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background-image: url('../images/event/landingPage/onboarding/hero_bg.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.onboarding_hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1280px;
	opacity: 0;
	transition: opacity 1.2s ease-out;
}

.congal {
	position: absolute;
	z-index: 0;
	pointer-events: none;
}

/* congal_01: .onboarding_hero__steps 기준 */
.onboarding_hero__steps .congal.congal_01 {
	left: 0;
	top: -140px;
}

.congal.congal_02 {
	right: 5%;
	bottom: -10px;
}

.onboarding_hero.is-visible .onboarding_hero__inner {
	opacity: 1;
}

.onboarding_hero__title-wrap {
	position: relative;
	z-index: 2;
	text-align: center;
	margin-bottom: 16px;
}

.onboarding_hero__sub {
	position: relative;
	z-index: 2;
	text-align: center;
	font-size: 42px;
	line-height: 1.4;
	color: #333;
	margin: 55px 0;
	letter-spacing: 0.01em;
}

.onboarding_hero__steps {
	position: relative;
	display: flex;
	gap: 24px;
	width: 100%;
	margin: 0 auto;
}

.onboarding_step_card {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 410px;
	min-height: 221px;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 16px;
	padding: 48px 32px;
	box-sizing: border-box;
}

#onboarding_promotion_body .onboarding_step_card__label {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 18px;
	font-weight: 700;
	color: #0DB530;
	margin-bottom: 6px;
}

.onboarding_step_card__title {
	font-size: 28px;
	font-weight: 700;
	color: #111;
	margin-bottom: 6px;
	letter-spacing: -0.02em;
}

.onboarding_step_card__desc {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.5;
	color: #333;
	margin: 0;
	letter-spacing: -0.02em;
}

/* =============================================================================
 * 3. 내비게이션
 * ============================================================================= */
.onboarding_nav {
	position: sticky;
	left: 0;
	top: 108px;
	z-index: 90;
	background: #004527;
	height: 72px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: top 0.2s;
}

.onboarding_nav__list {
	display: flex;
	align-items: center;
	gap: 60px; 
	list-style: none;
	margin: 0;
	padding: 0;
}

.onboarding_nav__list a {
	color: #FEFEFE;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
	letter-spacing: -0.02em;
	outline: none;
}

.onboarding_nav__list a:focus,
.onboarding_nav__list a:focus-visible,
.onboarding_nav__list a:active {
	outline: none;
	box-shadow: none;
}

.onboarding_nav__divider {
	color: #cecece;
	font-size: 14px;
	user-select: none;
}

/* =============================================================================
 * 4. 섹션 공통
 * ============================================================================= */
.onboarding_section {
	padding: 120px 0;
	box-sizing: border-box;
}
.onboarding_section--gray {
	background: #f3f4f6;
}

.onboarding_section__inner {
	max-width: 960px;
	margin: 0 auto;
}

.onboarding_section__title {
	font-size: 48px;
	font-weight: 800;
	text-align: center;
	color: #111;
	margin-bottom:32px;
	letter-spacing: -0.02em;
}

/* =============================================================================
 * 4-1. 비로그인 블러 · 로그인 게이트 (미션/퀴즈/요약 공통)
 * ============================================================================= */
.onboarding_content_lock {
	position: relative;
}

.onboarding_content_lock.is-blurred .onboarding_mission_card,
.onboarding_content_lock.is-blurred .onboarding_quiz_card,
.onboarding_content_lock.is-blurred .onboarding_summary_card {
	filter: blur(8px);
	pointer-events: none;
	user-select: none;
}

.onboarding_login_gate {
	display: none;
}

.onboarding_content_lock.is-blurred .onboarding_login_gate {
	display: flex;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 30px;
	padding: 24px;
	background: rgba(255, 255, 255, 0.28);
	box-sizing: border-box;
	pointer-events: auto;
}

.onboarding_login_gate__text {
	margin: 0;
	font-size: 36px;
	font-weight: 600;
	line-height: 1.5;
	color: #333;
	text-align: center;
}

.onboarding_login_gate__text.is-restricted {
	color: #0FB433;
}

#onboarding_promotion_body .onboarding_login_gate__btn {
	display: inline-block;
	width: auto;
	min-width: 200px;
	padding: 14px 32px;
	border-radius: 12px;
	background: #fff;
	color: #0FB433;
	border:2px solid #0FB433;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	box-sizing: border-box;
}

#onboarding_promotion_body .onboarding_login_gate__btn[hidden] {
	display: none !important;
}

#onboarding_promotion_body a.onboarding_btn.onboarding_login_gate__btn:hover,
#onboarding_promotion_body a.onboarding_btn.onboarding_login_gate__btn:focus,
#onboarding_promotion_body a.onboarding_btn.onboarding_login_gate__btn:active {
	color: #0FB433;
	background: #fff;
	text-decoration: none;
	outline: none;
}

/* =============================================================================
 * 5. 미션
 * ============================================================================= */
/* 5-1. 미션 카드 · 적립 포인트 */
.onboarding_mission_card {
	background: #fefefe;
	border-radius:24px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	padding: 48px;
}

.onboarding_mission_card__head {
	margin-bottom: 20px;
}

.onboarding_mission_card__head-text {
	min-width: 0;
}

.onboarding_mission_card__label {
	font-size: 14px;
	font-weight: 600;
	color: #666;
	margin: 0 0 4px;
}

.onboarding_mission_card__points {
	display: flex;
	align-items: baseline;
	gap: 6px;
	margin: 0;
}

.onboarding_mission_card__points strong {
	font-size: 28px;
	font-weight: 800;
	color: #111;
	letter-spacing: -0.02em;
}

.onboarding_mission_card__points span {
	font-size: 18px;
	font-weight: 500;
	color: #999;
}

/* 5-2. 미션 탭 A~E */
.onboarding_mission_tabs {
	display: flex;
	background: #F4F5F6;
	border-radius: 56px;
	max-height:112px;
	padding: 8px;
	gap: 0;
	margin-bottom: 16px;
	box-sizing: border-box;
}

.onboarding_mission_tab {
	flex: 1;
	border: none;
	background: transparent;
	border-radius: 48px;
	max-height: 96px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	cursor: pointer;
	padding: 10px 4px;
}

.onboarding_mission_tab.is-active {
	background: #fefefe;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.onboarding_mission_tab__icon {
	position: relative;
	width: 40px;
	height: 40px;
	flex-shrink: 0;
}

#onboarding_promotion_body .onboarding_mission_tab__label {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	border-radius: 20px;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px;
	font-weight: 700;
	color: #999;
	background: #FEFEFE;
	border: 1px solid #CECECE;
}

#onboarding_promotion_body .onboarding_mission_tab.is-claimable .onboarding_mission_tab__label,
#onboarding_promotion_body .onboarding_mission_tab.is-done .onboarding_mission_tab__label {
	background: #004527;
	color: #fefefe;
}

#onboarding_promotion_body .onboarding_mission_tab.is-done .onboarding_mission_tab__label {
	background: #004527;
	color: #fefefe;
	font-size: 0 !important;
}

#onboarding_promotion_body .onboarding_mission_tab__name {
	font-family: 'pretendard', sans-serif !important;
	font-size: 18px;
	font-weight: 600;
	color: #333;
	text-align: center;
	letter-spacing: -0.02em;
	word-break: keep-all;
}

#onboarding_promotion_body .onboarding_mission_tab.is-active .onboarding_mission_tab__name {
	color: #111;
	font-weight: 700;
}

.onboarding_mission_tab__check {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 16px;
	margin: 0;
	transform: translate(-50%, -50%);
	background: url('../images/event/landingPage/onboarding/ic_check.svg') center/contain no-repeat;
	pointer-events: none;
}

.onboarding_mission_tab.is-done .onboarding_mission_tab__check {
	display: block;
}

.onboarding_mission_tab__dot {
	display: none;
	position: absolute;
	top: -1px;
	right: -2px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #1ec84a;
	border: 2px solid #fefefe;
	box-sizing: border-box;
	z-index: 2;
	pointer-events: none;
}

.onboarding_mission_tab.is-claimable .onboarding_mission_tab__dot {
	display: block;
}

/* 5-4. 미션 상세 패널 */
.onboarding_mission_panel {
	display: none;
	background: #f4f5f6;
	border-radius: 16px;
	padding: 40px;
	box-sizing: border-box;
}

.onboarding_mission_panel.is-visible {
	display: block;
}

.onboarding_mission_panel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}

.onboarding_mission_panel__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	padding: 10px 18px;
	border-radius: 999px;
	background: #111;
	color: #fefefe;
	font-size: 16px;
	font-weight: 600;
	line-height: 1;
	margin: 0;
}

.onboarding_mission_panel__badge.is-incomplete {
	background: #111;
	opacity: 0.4;
	color: #fefefe;
}

.onboarding_mission_panel__title {
	font-size: 32px;
	font-weight: 700;
	margin: 0;
	color: #111;
	letter-spacing: -0.02em;
}

.onboarding_mission_panel__desc {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-size: 20px;
	font-weight:400;
	line-height: 1.6;
	color: #333;
	margin-bottom:24px;
	word-break: break-word;
}

.onboarding_mission_panel__info {
	margin: 0 0 28px;
	padding: 0;
}

.onboarding_mission_panel__row {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 18px 0;
	border-bottom: 1px solid #e0e0e0;
	font-size: 18px;
	max-height: 60px;
	box-sizing: border-box;
}

.onboarding_mission_panel__row:last-child {
	border-bottom: none;
}

.onboarding_mission_panel__row dt {
	flex: 0 0 88px;
	color: #666;
	font-weight: 600;
}

.onboarding_mission_panel__row dd {
	margin: 0;
	color: #333;
	flex: 1;
	font-weight: 400;
}

.onboarding_mission_panel__helper {
	font-size: 16px;
	color: #666;
	text-align: center;
	margin-top: 12px;
}

.onboarding_mission_panel__helper a {
	color: inherit;
	text-decoration: underline;
}

/* 5-5. 전부 완료 접힘/펼침 */
.onboarding_mission_toggle {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex-shrink: 0;
	height: 40px;
	padding: 8px 18px;
	border: 1.5px solid #d1d5db;
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: -0.02em;
	cursor: pointer;
	box-sizing: border-box;
}

#onboarding_promotion_body .onboarding_mission_toggle:hover,
#onboarding_promotion_body .onboarding_mission_toggle:focus,
#onboarding_promotion_body .onboarding_mission_toggle:active {
	color: #111;
	background: #fff;
	border-color: #d1d5db;
	outline: none;
}

.onboarding_mission_toggle__caret {
	display: block;
	width: 20px;
	height: 20px;
	transition: transform 0.2s ease;
}

#onboardingMission.is-all-paid .onboarding_mission_card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}

#onboardingMission.is-all-paid .onboarding_mission_toggle {
	display: inline-flex;
}

#onboardingMission.is-all-paid:not(.is-collapsed) .onboarding_mission_toggle__caret {
	transform: rotate(180deg);
}

.onboarding_mission_complete {
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	background: #f4f5f6;
	border-radius: 20px;
	padding: 40px;
	box-sizing: border-box;
}

.onboarding_mission_complete__title {
	margin: 0;
	font-size: 32px;
	font-weight: 700;
	color: #111;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.onboarding_mission_complete__peas {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

.onboarding_mission_complete__pea {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #0fb433 url('../images/event/landingPage/onboarding/ic_check.svg') center/16px 16px no-repeat;
}

#onboardingMission.is-all-paid .onboarding_mission_card__label {
	font-size: 18px;
}

#onboardingMission.is-all-paid .onboarding_mission_card__points strong {
	font-size: 48px;
}

#onboardingMission.is-all-paid .onboarding_mission_card__points span {
	font-size: 32px;
}

#onboardingMission.is-collapsed .onboarding_mission_card__body {
	display: none;
}

#onboardingMission.is-collapsed .onboarding_mission_complete {
	display: flex;
}

/* =============================================================================
 * 6. 퀴즈
 * ============================================================================= */
#onboardingQuiz {
	background: #fff;
	padding:120px 0;
}

#onboardingQuiz .onboarding_section__title {
	font-size: 48px;
	font-weight: 800;
	letter-spacing: -0.02em;
	text-align: center;
	margin-bottom:32px;
}

#onboardingQuiz .onboarding_quiz_card {
	background: #fff;
	border-radius: 24px;
	box-shadow: 0px 8px 24px 0px #00000014;
	padding: 48px;
	text-align: left;
	box-sizing: border-box;
	border: 1px solid #EEEEEE;
}

/* 6-1. 주차 라벨 · 문제 */
#onboardingQuiz .onboarding_quiz_week {
	display: inline-flex;
	align-items: center;
	margin-bottom:24px;
	padding: 8px 18px;
	border: 1px solid #111;
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-size: 16px;
	font-weight: 700;
	gap:6px;
}
#onboardingQuiz .onboarding_quiz_week .divider{
	font-weight:500;
	color:#666;
}

#onboardingQuiz .onboarding_quiz_question {
	display: flex;
	gap: 4px;
	align-items: flex-start;
	justify-content: flex-start;
	margin-bottom:28px;
	max-width: none;
	text-align: left;
}

#onboardingQuiz .onboarding_quiz_question__icon {
	width: 48px;
	height: 48px;
}

#onboardingQuiz .onboarding_quiz_question__text {
	font-size: 32px;
	font-weight: 700;
	line-height: 1.5;
	color: #111;
	margin: 0;
	word-break: keep-all;
}

/* 6-2. 힌트 확인 */
#onboardingQuiz .onboarding_quiz_hint {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: #F4F5F6;
	border-radius: 14px;
	padding: 16px 20px;
	margin-bottom:28px;
	text-align: left;
}

#onboardingQuiz .onboarding_quiz_hint__row {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	min-width: 0;
}

#onboardingQuiz .onboarding_quiz_hint__thumb {
	width: 72px;
	height: 72px;
	flex-shrink: 0;
	border-radius: 10px;
	background: #E5E7EB;
	display: flex;
	justify-content: center;
	align-items: center;
}

#onboardingQuiz .onboarding_quiz_hint__title {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 20px;
	font-weight: 700;
	color: #111;
	margin-bottom: 2px;
	letter-spacing: 0.02em;
}

#onboardingQuiz .onboarding_quiz_hint__check {
	display: none;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	background: center / contain no-repeat url("../images/event/landingPage/onboarding/ic_check_b.svg");
}

#onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_quiz_hint__check {
	display: inline-block;
}

#onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_btn--outline {
	background: #FEFEFE;
	color: #333;
	border:1px solid #CECECE;
}

#onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_btn--outline img {
	display: none;
}

#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_btn--outline:hover,
#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_btn--outline:focus {
	background: #FEFEFE;
	color: #333;
}

#onboardingQuiz .onboarding_quiz_hint__sub {
	font-size: 16px;
	font-weight: 400;
	color: #666;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

#onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	gap:6px;
	flex-shrink: 0;
	padding: 12px 32px;
	border: none;
	border-radius: 16px;
	background: #C0EBCA;
	color: #076D1E;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.02em;
	white-space: nowrap;
	cursor: pointer;
	box-sizing: border-box;
}

#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline:hover,
#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline:focus,
#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline:active {
	background: #C0EBCA;
	color: #076D1E;
	text-decoration: none;
}

/* 6-3. 보기 (OX / 객관식) */
#onboardingQuiz .onboarding_quiz_choices {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 24px;
}

#onboardingQuiz .onboarding_quiz_choices.is-ox {
	flex-direction: row;
	gap: 12px;
}

#onboardingQuiz .onboarding_quiz_ox {
	position: relative;
	flex: 1;
	margin: 0;
	padding:45px 0;
	border: 1px solid #eee;
	border-radius: 16px;
	background: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

#onboardingQuiz .onboarding_quiz_ox input[type="radio"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	margin: 0;
	pointer-events: none;
}

#onboardingQuiz .onboarding_quiz_ox__mark {
	display: block;
	width: 48px;
	height: auto;
}

#onboardingQuiz .onboarding_quiz_ox--o .onboarding_quiz_ox__mark {
	width: 56px;
}

#onboardingQuiz .onboarding_quiz_ox--x .onboarding_quiz_ox__mark {
	width: 49px;
}

#onboardingQuiz .onboarding_quiz_ox--o.is-selected,
#onboardingQuiz .onboarding_quiz_ox--o:has(input:checked) {
	background: #CBE3FE;
	border-color:#CBE3FE;
}

#onboardingQuiz .onboarding_quiz_ox--x.is-selected,
#onboardingQuiz .onboarding_quiz_ox--x:has(input:checked) {
	background: #FED7D5;
	border-color: #FED7D5;
}

#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_ox:hover,
#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_ox:focus,
#onboarding_promotion_body #onboardingQuiz .onboarding_quiz_ox:active {
	text-decoration: none;
	filter: none;
	transform: none;
}

#onboardingQuiz .onboarding_quiz_choice {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 16px 18px;
	border: 2px solid #eee;
	border-radius: 14px;
	background: #fff;
	text-align: left;
	box-sizing: border-box;
	cursor: pointer;
}

#onboardingQuiz .onboarding_quiz_choice:has(input:checked),
#onboardingQuiz .onboarding_quiz_choice.is-selected {
	border-color: #111;
	border-width: 2px;
	background-color: #F4F5F6;
}

#onboardingQuiz .onboarding_quiz_choice input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	width: 24px;
	height: 24px;
	margin: 0;
	flex-shrink: 0;
	border: 1px solid #d0d0d0;
	border-radius: 50%;
	background: #fff;
	box-shadow: none;
	box-sizing: border-box;
	cursor: pointer;
	outline: none;
}

#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:focus,
#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:focus-visible,
#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:active {
	outline: none;
	box-shadow: none;
}

#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:checked {
	border-color: #111;
	background: #111;
	box-shadow: inset 0 0 0 4px #fff;
	outline: none;
}

#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:checked:focus,
#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:checked:focus-visible,
#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:checked:active {
	outline: none;
	box-shadow: inset 0 0 0 5px #fff;
}

#onboardingQuiz .onboarding_quiz_choice:focus,
#onboardingQuiz .onboarding_quiz_choice:focus-visible,
#onboardingQuiz .onboarding_quiz_choice:active {
	outline: none;
	box-shadow: none;
}

#onboardingQuiz .onboarding_quiz_choice__num {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid #111827;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 700;
	color:#111827;
}

#onboardingQuiz .onboarding_quiz_choice__text {
	flex: 1;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.6em;
	letter-spacing: 0.02em;
	color: #333;
}

#onboardingQuiz #onboardingQuizSubmitBtn {
	width: 100%;
	padding: 23px 0;
	border: none;
	border-radius: 16px;
	background: #0db530;
	color: #FEFEFE;
	font-size: 28px;
	font-weight: 800;
}

#onboarding_promotion_body #onboardingQuiz #onboardingQuizSubmitBtn:disabled,
#onboarding_promotion_body #onboardingQuiz #onboardingQuizSubmitBtn:disabled:hover {
	background: #9ee0b8;
	color: #fff;
}

#onboardingQuiz .onboarding_quiz_submit_helper {
	font-size: 16px;
	font-weight: 400;
	color: #666;
	text-align: center;
	margin-top: 10px;
}

/* =============================================================================
 * 7. 오래 모은 완두콩 요약
 * ============================================================================= */
#onboardingSummary .onboarding_summary_card {
	position: relative;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px 28px rgba(17, 17, 17, 0.06);
	padding: 48px;
	box-sizing: border-box;
}

#onboardingSummary .onboarding_summary_card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 28px;
}

#onboardingSummary .onboarding_summary_card__head {
	margin: 0;
}

#onboardingSummary .onboarding_summary_card__year {
	font-size: 18px;
	font-weight: 600;
	color: #666;
	margin-bottom:4px;
}

#onboardingSummary .onboarding_summary_card__count {
	font-size: 48px;
	font-weight: 800;
	line-height: 1.1;
	color: #111;
	margin: 0;
	letter-spacing: -0.03em;
}

#onboardingSummary .onboarding_summary_card__count strong {
	font-weight: 800;
}

#onboarding_promotion_body #onboardingPeaCount {
	background: linear-gradient(180deg, #111111 0%, #444444 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

#onboardingSummary .onboarding_summary_card__coins {
	position: absolute;
	top: 48px;
	right: 48px;
	width: 180px;
	height: auto;
	display: block;
	pointer-events: none;
}

#onboardingSummary .onboarding_summary_links {
	display: flex;
	flex-direction: row;
	gap: 24px;
}

#onboardingSummary .onboarding_summary_link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex: 1;
	gap: 12px;
	min-width: 0;
	padding:22px 24px;
	border: none;
	border-radius: 16px;
	background: #f4f5f6;
	color: #111;
	text-decoration: none;
	box-sizing: border-box;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

#onboardingSummary .onboarding_summary_link::after {
	content: none;
}

#onboardingSummary .onboarding_summary_link__text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 0;
}

#onboardingSummary .onboarding_summary_link__label {
	font-size: 14px;
	font-weight: 400;
	color: #666;
	line-height: 1.5;
	letter-spacing: -0.02em;
}

#onboardingSummary .onboarding_summary_link__title {
	font-size: 20px;
	font-weight: 700;
	color: #111;
	letter-spacing: -0.02em;
}

#onboardingSummary .onboarding_summary_link__chevron,
#onboardingSummary .onboarding_summary_link__share {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	background: center / contain no-repeat;
}

#onboardingSummary .onboarding_summary_link__chevron {
	background-image: url("../images/event/landingPage/onboarding/ic_caretright.svg");
}

#onboardingSummary .onboarding_summary_link__share {
	background-image: url("../images/event/landingPage/onboarding/ic_export.svg");
}

#onboarding_promotion_body #onboardingSummary .onboarding_summary_link:hover,
#onboarding_promotion_body #onboardingSummary .onboarding_summary_link:focus {
	color: #111;
	text-decoration: none;
}

/* =============================================================================
 * 8. 공통 버튼
 * ============================================================================= */
.onboarding_btn {
	display: block;
	width: 100%;
	padding: 23px 0;
	border: none;
	border-radius: 16px;
	font-size: 28px;
	font-weight: 800;
	cursor: pointer;
	text-align: center;
	box-sizing: border-box;
}

.onboarding_btn--primary {
	background: #0db530;
	color: #fefefe;
}

.onboarding_btn--primary:disabled {
	background: #b8e6c3;
	cursor: not-allowed;
}

.onboarding_btn--outline {
	display: block;
	width: 100%;
	padding: 12px;
	border: 1px solid #0db530;
	border-radius: 16px;
	background: #fff;
	color: #0db530;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.onboarding_btn--outline:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* =============================================================================
 * 8-1. 호버/포커스 색상 고정
 * ============================================================================= */
#onboarding_promotion_body .onboarding_btn:hover,
#onboarding_promotion_body .onboarding_btn:focus,
#onboarding_promotion_body .onboarding_btn:active,
#onboarding_promotion_body .onboarding_btn--primary:hover,
#onboarding_promotion_body .onboarding_btn--primary:focus,
#onboarding_promotion_body .onboarding_btn--primary:active {
	background: #0db530;
	color: #fefefe;
	text-decoration: none;
}

#onboarding_promotion_body .onboarding_btn--primary:disabled:hover,
#onboarding_promotion_body .onboarding_btn--primary:disabled:focus,
#onboarding_promotion_body .onboarding_btn--primary:disabled:active {
	background: #b8e6c3;
	color: #fefefe;
}

#onboarding_promotion_body .onboarding_btn--outline:hover,
#onboarding_promotion_body .onboarding_btn--outline:focus,
#onboarding_promotion_body .onboarding_btn--outline:active {
	background: #fff;
	color: #0db530;
	text-decoration: none;
}

#onboarding_promotion_body .onboarding_mission_tab:hover,
#onboarding_promotion_body .onboarding_mission_tab:focus,
#onboarding_promotion_body .onboarding_mission_tab:active,
#onboarding_promotion_body .onboarding_quiz_choice:hover,
#onboarding_promotion_body .onboarding_quiz_choice:focus,
#onboarding_promotion_body .onboarding_quiz_choice:active,
#onboarding_promotion_body .onboarding_quiz_choice input[type="radio"]:hover,
#onboarding_promotion_body .onboarding_quiz_choice input[type="radio"]:focus,
#onboarding_promotion_body .onboarding_quiz_choice input[type="radio"]:active,
#onboarding_promotion_body .onboarding_quiz_ox:hover,
#onboarding_promotion_body .onboarding_quiz_ox:focus,
#onboarding_promotion_body .onboarding_quiz_ox:active,
#onboarding_promotion_body .onboarding_mission_toggle:hover,
#onboarding_promotion_body .onboarding_mission_toggle:focus,
#onboarding_promotion_body .onboarding_modal__btns a:hover,
#onboarding_promotion_body .onboarding_modal__btns a:focus,
#onboarding_promotion_body .onboarding_modal__btns a:active,
#onboarding_promotion_body .onboarding_modal__btns button:hover,
#onboarding_promotion_body .onboarding_modal__btns button:focus,
#onboarding_promotion_body .onboarding_modal__btns button:active {
	text-decoration: none;
	filter: none;
	transform: none;
}

#onboarding_promotion_body .onboarding_modal__cancel:hover,
#onboarding_promotion_body .onboarding_modal__cancel:focus,
#onboarding_promotion_body .onboarding_modal__cancel:active {
	background: #f0f0f0;
	color: #333;
}

#onboarding_promotion_body .onboarding_modal__confirm:hover,
#onboarding_promotion_body .onboarding_modal__confirm:focus,
#onboarding_promotion_body .onboarding_modal__confirm:active {
	background: #0db530;
	color: #fff;
}

/* =============================================================================
 * 9. 유의사항
 * ============================================================================= */
.onboarding_guide {
	background: #222;
	color: #eee;
	padding: 40px 0 60px;
}

.onboarding_guide__inner {
	max-width: 960px;
	margin: 0 auto;
	padding:0 50px;
	box-sizing: border-box;
}

.onboarding_guide__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 16px;
	color:#FEFEFE;
}
.onboarding_guide__title img{
	width:32px;
	height:32px;
}
.onboarding_guide__list {
	list-style: disc;
	font-size: 20px;
	font-weight:400;
	line-height: 1.6;
	letter-spacing: -0.02em;
	color: #FEFEFE;
	padding-left: 20px;
	margin: 0;
	word-break: keep-all;
}

.onboarding_guide__list li {
	margin-bottom: 8px;
}

.onboarding_guide__list_sub{
	list-style: decimal;
	padding-left:20px;
}
/* =============================================================================
 * 10. 모달 (로그인 유도 / 알림 / 퀴즈 결과)
 * ============================================================================= */
.onboarding_modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.5);
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.onboarding_modal__content {
	background: #fff;
	border-radius: 16px;
	padding: 30px;
	max-width: 360px;
	width: 100%;
	text-align: center;
}

.onboarding_modal__title {
	font-size: 20px;
	font-weight: 800;
	color: #111;
	margin: 0 0 8px;
}

.onboarding_modal__message {
	font-size: 15px;
	line-height: 1.6;
	color: #111;
	margin: 0 0 20px;
}

.onboarding_modal__btns {
	display: flex;
	gap: 8px;
}

.onboarding_modal__btns a,
.onboarding_modal__btns button {
	flex: 1;
	padding: 12px;
	border: none;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	box-sizing: border-box;
}

.onboarding_modal__cancel {
	background: #f0f0f0;
	color: #333;
}

.onboarding_modal__confirm {
	background: #0db530;
	color: #fff;
}

.onboarding_modal__btns--single .onboarding_modal__confirm {
	flex: none;
	width: 100%;
}

/* =============================================================================
 * 12. 반응형 — 태블릿 
 * ============================================================================= */
@media screen and (max-width: 1024px) {
	.onboarding_nav {
		top: 64px;
	}
	.onboarding_hero{
		padding:0 20px;
	}
	.congal.congal_01,
	.congal.congal_02{
		display: none;
	}
}

/* =============================================================================
 * 13. 반응형 — 모바일
 * ============================================================================= */
@media all and (max-width:680px){
	.only_pc{
		display: none;
	}
	.only_mo{
		display: block;
	}
	.onboarding_hero{
		min-height:690px;
		padding:50px 20px 30px;
	}
	.congal.congal_01,
	.congal.congal_02{
		display: none;
	}
	.onboarding_hero__sub{
		margin:20px 0;
	}
	.onboarding_hero__steps{
		flex-direction: column;
		gap:8px;
	}
	.onboarding_step_card{
		padding:16px 20px;
		min-height: auto;
		max-width: 100%;
	}
	#onboarding_promotion_body .onboarding_step_card__label{
		font-size: 12px;
	}
	.onboarding_step_card__title{
		font-size: 18px;
	}
	.onboarding_step_card__desc{
		font-size: 14px;
	}
	.onboarding_nav__list a{
		font-size: 14px;
	}
	.onboarding_nav{
		height:48px;
	}
	.onboarding_nav__list{
		gap:16px;
	}
	.onboarding_section{
		padding:48px 20px;
	}
	.onboarding_section__title{
		font-size:28px;
		margin-bottom:20px;
	}
	.onboarding_login_gate__text{
		font-size:20px;
	}
	#onboarding_promotion_body .onboarding_login_gate__btn{
		font-size:16px;
	}
	.onboarding_mission_card{
		padding:16px;
		border-radius: 16px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_card__head {
		flex-direction: column;
		align-items: stretch;
		gap: 16px;
		margin-bottom: 16px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_toggle {
		width: 100%;
		height: 36px;
		padding: 10px 16px;
		font-size: 12px;
		gap: 4px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_toggle__caret {
		width: 16px;
		height: 16px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_card__label {
		font-size: 14px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_card__points strong {
		font-size: 28px;
	}
	#onboardingMission.is-all-paid .onboarding_mission_card__points span {
		font-size: 18px;
	}
	.onboarding_mission_complete {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		padding: 16px;
		border-radius: 16px;
	}
	.onboarding_mission_complete__title {
		font-size: 20px;
		text-align: center;
	}
	.onboarding_mission_complete__peas {
		gap: 20px;
	}
	.onboarding_mission_complete__pea {
		width: 32px;
		height: 32px;
		background-size: 13px 13px;
	}
	#onboarding_promotion_body .onboarding_mission_tab__name{
		display: none;
	}
	.onboarding_mission_panel{
		padding:16px;
	}
	.onboarding_mission_panel__head{
		flex-direction:column-reverse;
		align-items:flex-start ;
		gap:12px;
		margin-bottom: 16px;
	}
	.onboarding_mission_panel__badge{
		font-size:12px;
		padding:8px 16px;
	}
	.onboarding_mission_panel__title{
		font-size: 20px;
	}
	.onboarding_mission_panel__desc{
		font-size: 14px;
		margin-bottom: 16px;
	}
	.onboarding_mission_panel__row{
		font-size:13px;
		max-height:40px;
		padding:10px 0;
		gap:8px;
	}
	.onboarding_mission_panel__info{
		margin-bottom: 16px;
	}
	.onboarding_btn{
		font-size: 18px;
		padding:15px 0;
		border-radius: 12px;
	}
	.onboarding_mission_panel__helper{
		font-size:12px;
		margin-top:8px;
	}
	.onboarding_mission_panel__row dt{
		flex: 0 0 64px;
	}
	#onboardingQuiz{
		padding:48px 20px;
	}
	#onboardingQuiz .onboarding_section__title{
		font-size: 28px;
		margin-bottom: 20px;
	}
	#onboardingQuiz .onboarding_quiz_card{
		padding:20px;
	}
	#onboardingQuiz .onboarding_quiz_week{
		font-size: 12px;
		margin-bottom: 16px;
	}
	#onboardingQuiz .onboarding_quiz_question__text{
		font-size: 20px;
	}
	#onboardingQuiz .onboarding_quiz_hint{
		padding:12px;
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 16px;
	}
	#onboardingQuiz .onboarding_quiz_hint__thumb{
		background:transparent;
		width:40px;
		height:40px;
	}
	#onboardingQuiz .onboarding_quiz_hint__sub{
		font-size: 12px;
	}
	#onboardingQuiz .onboarding_quiz_hint.is-claimed .onboarding_btn--outline{
		width:100%;
	}
	#onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline{
		border-radius: 10px;
		width:100%;
		font-size: 13px;
	}
	#onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline span{
		font-size: 13px;
	}
	#onboardingQuiz .onboarding_quiz_hint .onboarding_btn--outline img{
		width:14px;
		height:14px;
	}
	#onboardingQuiz .onboarding_quiz_choice{
		gap:10px;
	}
	#onboardingQuiz .onboarding_quiz_choice__num{
		font-size:12px;
		width:20px;
		height:20px;
		flex: 0 0 20px;
	}
	#onboardingQuiz .onboarding_quiz_choice__text{
		font-size: 15px;
		color:#111;
	}
	#onboardingQuiz .onboarding_quiz_choice input[type="radio"]{
		width:18px;
		height:18px;
	}
	#onboardingQuiz .onboarding_quiz_choice input[type="radio"]:checked{
		box-shadow: inset 0 0 0 3px #fff;
	}
	#onboardingQuiz #onboardingQuizSubmitBtn{
		font-size: 18px;
		padding:15px 0;
		border-radius: 12px;
	}
	#onboardingQuiz .onboarding_quiz_choices{
		margin-bottom:16px;
	}
	#onboardingQuiz .onboarding_quiz_submit_helper{
		font-size: 12px;
		margin-top:8px;
	}
	#onboardingSummary .onboarding_summary_card{
		padding:20px;
		border-radius: 16px;
	}
	#onboardingSummary .onboarding_summary_card__year,
	#onboardingSummary .onboarding_summary_card__year #onboardingPeaYear{
		font-size: 12px;
	}
	#onboardingSummary .onboarding_summary_card__count,
	#onboardingSummary .onboarding_summary_card__count #onboardingPeaCount{
		font-size: 32px;
	}
	#onboardingSummary .onboarding_summary_card__top{
		margin-bottom: 24px;
	}
	#onboardingSummary .onboarding_summary_card__coins{
		right:20px;
		top:20px;
		width:100px;
	}
	#onboardingSummary .onboarding_summary_links{
		flex-direction: column;
		gap:8px;
	}
	#onboardingSummary .onboarding_summary_link{
		padding:13px 16px;
		border-radius: 12px;
	}
	#onboardingSummary .onboarding_summary_link__text{
		gap:2px;
	}
	#onboardingSummary .onboarding_summary_link__label{
		font-size: 12px;
	}
	#onboardingSummary .onboarding_summary_link__title{
		font-size: 14px;
	}
	.onboarding_guide__title img{
		width:16px;
		height:16px;
	}
	.onboarding_guide__title{
		gap:2px;
	}
	.onboarding_guide__title,
	.onboarding_guide__title span{
		font-size: 14px;
	}
	.onboarding_guide__list{
		font-size: 14px;
	}
	.onboarding_guide{
		padding:32px 0;
	}
	.onboarding_guide__inner{
		padding:0 20px;
	}
	#onboardingQuiz .onboarding_quiz_ox{
		padding:30px 0;
	}
	
	#onboardingQuiz .onboarding_quiz_ox--o .onboarding_quiz_ox__mark{
		width:35px;
	}
	#onboardingQuiz .onboarding_quiz_ox--x .onboarding_quiz_ox__mark{
		width:30px;
	}
}