/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/
.yellow {color: #ffe600!important;}
/* 헤더 미니카트의 "View cart"/"Checkout" 영문 버튼 - 번역이 안 먹혀서 그냥 숨김 (보안 민감 콘텐츠 아니라 display:none 사용 가능) */
.fusion-menu-cart-checkout {display: none !important;}
#main {background-color: #f4f4f1 !important;padding: 16px !important;}
/* 결제 페이지 "구매를 진행하면 이용 약관 및 개인정보 보호정책에 동의하는 것입니다" 문구 */
.wc-block-checkout__terms,
.wc-block-checkout__terms a {color: #c8372d;}

/* 결제(Checkout) 페이지 디자인 - 클로드 디자인 "Checkout" 목업 기준
   가격/할인배지/합계 줄 등은 장바구니와 클래스명이 같아서 위에 이미 있는 CSS가 자동으로 같이 적용됨 */
.woocommerce-checkout .alignwide {
  position: static !important;
  left: auto !important;
  transform: none !important;
  max-width: none !important;
  min-width: 0 !important;
  width: auto !important;
}

/* 섹션 제목 앞 "01/02/03" 빨간 번호 + 아래 구분선 (아바다/WC 번호 기능과 무관하게 직접 카운터를 만듦) */
.wc-block-checkout__form {counter-reset: koreaarnis-step;}
.wc-block-components-checkout-step__heading-container {padding-bottom: 14px; border-bottom: 1px solid #1f2128; margin-bottom: 4px;}
.wc-block-components-checkout-step__title {counter-increment: koreaarnis-step; display: flex; align-items: baseline; gap: 12px; font-size: 20px !important; font-weight: 700; letter-spacing: -.01em;}
.wc-block-components-checkout-step__title::before {content: counter(koreaarnis-step, decimal-leading-zero); order: -1; font-size: 13px; font-weight: 700; color: #c8372d;}

/* 입력창(이메일/이름/전화번호 등) */
.wc-block-components-text-input,
.wc-blocks-components-select__container {border: 1px solid #c9c6bf !important; border-radius: 4px !important; background: #fff;}
.wc-block-components-text-input.is-active,
.wc-block-components-text-input:focus-within {border-color: #1f2128 !important;}

/* 청구주소 저장 후 보이는 카드("편집" 링크 포함) */
.wc-block-components-address-card {border: 1px solid #c9c6bf; border-radius: 4px; padding: 14px 16px;}
.wc-block-components-address-card__edit {color: #c8372d !important; cursor: pointer;}

/* 결제 옵션 라디오 카드 */
.wc-block-components-radio-control__option {padding: 20px 20px 20px 48px !important; background: #fff;}
.wc-block-components-radio-control__input:checked {accent-color: #c8372d;}
.wc-block-components-payment-method-label {font-size: 16px; font-weight: 700;}
.wc-block-components-radio-control-accordion-content {font-size: 14px; line-height: 1.6; color: #5a5a5a;}

/* 주문하기 버튼 */
.wc-block-components-checkout-place-order-button {height: 60px !important; border-radius: 4px !important; background: #1f2128 !important; font-size: 17px !important; font-weight: 700 !important;}
.wc-block-components-checkout-place-order-button:hover {background: #c8372d !important;}

/* 오른쪽 주문 요약 박스 */
.wc-block-checkout__sidebar {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; padding: 28px;}
.wc-block-components-checkout-order-summary__title {display: flex; align-items: baseline; gap: 8px; margin-bottom: 8px;}
.wc-block-components-checkout-order-summary__title-text {font-size: 16px; font-weight: 700;}
.wc-block-components-checkout-order-summary__title-price {margin-left: auto; font-weight: 700;}

/* 주문 요약 안 상품 줄 (수량 배지를 이미지 오른쪽 위 동그라미로) */
.wc-block-components-order-summary-item {padding: 16px 0; border-top: 1px solid #e1dfd9;}
.wc-block-components-order-summary-item__image {position: relative !important;}
.wc-block-components-order-summary-item__image img {width: 64px !important; height: 64px !important; object-fit: cover; border-radius: 4px; background: #e4e2dc;}
.wc-block-components-order-summary-item__quantity {position: absolute !important; top: -6px !important; right: -6px !important; left: auto !important; bottom: auto !important; min-width: 20px; height: 20px; background: #1f2128 !important; color: #fff !important; border-radius: 999px !important; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 700;}
.wc-block-checkout__sidebar .wc-block-components-product-name {font-size: 15px !important; font-weight: 700 !important;}
.home #main {padding-top: 0px !important;}
.home #main.width-100 {padding-left: 0!important; padding-right: 0!important;}
.row {
    margin-left: 0px!important;
    margin-right: 0px!important;
}

/* 아바다 코어가 "넓게(alignwide)" 블록에 기본으로 주는 80vw 확장 효과 - 우커머스 Cart 블록도 이 클래스를 써서 같이 걸림. 장바구니 페이지에서만 무효화 */
.woocommerce-cart .alignwide {
  position: static !important;
  left: auto !important;
  transform: none !important;
  max-width: none !important;
  min-width: 0 !important;
  width: auto !important;
}

/* WC 블록이 좁은 화면(is-mobile/is-small/is-medium)에서 삭제 버튼을 자체적으로 숨기는데, 장바구니 페이지에서는 계속 보이게 함 */
.woocommerce-cart .wc-block-cart-item__remove-link {
  display: revert !important;
}
/* 원래 헤더행("상품"/"총계")은 "장바구니 N" 제목줄(#cart-head-bar, 아래)로 대체해서 항상 숨김 */
.woocommerce-cart .wc-block-cart-items__header {
  display: none !important;
}

/* 장바구니 페이지 (우커머스 Cart 블록) 디자인 - 클로드 디자인 "Cart" 목업 기준
   기초/특화 배지만 블록에 없는 정보라 제외. "장바구니 N개"/"정가·할인 합계"는 functions.php의 wp_footer 스크립트(is_cart)가
   실제 DOM(수량·가격)을 읽어서 계산해 넣어줌 - 아래는 그 결과물 스타일링 */
.wc-block-components-totals-wrapper {border-top: 0; padding: 0;}
/* 표 위에 독립적으로 삽입되는 "장바구니 N / 총계" 제목줄 (고정폭 제약 없음, 모바일에서도 줄바꿈 안 됨) */
#cart-head-bar {display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-bottom: 16px; border-bottom: 1px solid #1f2128; margin-bottom: 8px;}
#cart-head-bar h2 {margin: 0; font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: #1f2128;}
#cart-head-bar .wc-cart-count {color: #c8372d;}
#cart-head-bar .cart-head-total {font-size: 14px; color: #6b6b6b; white-space: nowrap;}
/* WC 블록이 좁은 화면에서 한 줄을 "이미지80px+내용132px" 그리드로 바꾸는데, 장바구니 페이지에서는 원래 표(행) 형태 그대로 유지 */
.woocommerce-cart .wc-block-cart-items__row {
  display: table-row !important;
  grid-template-columns: none !important;
  column-gap: 0 !important;
  padding: 0 !important;
}
table.wc-block-cart-items {border: 0; width: 100%;}
.wc-block-cart-items__row {border-bottom: 1px solid #d9d7d1 !important;}
.wc-block-cart-items__row td {padding: 24px 10px !important; vertical-align: top !important;}
/* 고정 px 대신 비율(4:3) 기반으로 해서, 화면 폭이 얼마가 되든(탭/브라우저 리사이즈 포함) 칸을 넘치지 않고 자동으로 줄어들게 함 */
.wc-block-cart-item__image {max-width: 144px; min-width: 70px; width: 144px;}
/* 로딩 중 보여지는 회색 미리보기(스켈레톤) 박스는 <img>가 아니라서 아래 규칙이 안 먹힘 - 이미지 칸 안의 자식(<a> 등)이면 뭐든 칸 폭에 맞춰 같은 비율로 묶음 */
.wc-block-cart-item__image > * {width: 100% !important; height: auto !important; aspect-ratio: 4 / 3; min-height: 0 !important; max-height: none !important; padding: 0 !important; border-radius: 4px; box-sizing: border-box !important; display: block;}
/* <img>는 <td> 바로 밑이 아니라 <a> 한 겹 더 안에 있어서, 위 규칙만으로는 안 걸리고 상품마다 원본 크기로 남아있었음 - img도 부모(<a>)를 그대로 꽉 채우게 함 */
.wc-block-cart-item__image img {width: 100% !important; height: 113px !important; object-fit: cover; background: #e4e2dc;}
.wc-block-components-product-name {font-size: 18px!important; font-weight: 700!important; color: #1f2128;}
.wc-block-cart-item__prices {margin-top: 6px;}
.wc-block-components-product-price__regular {font-size: 14px; color: #9a9a9a;}
.wc-block-components-product-price__value.is-discounted {font-size: 14px; color: #1f2128; font-weight: 500;}
.wc-block-cart-item__quantity {display: flex; align-items: center; gap: 12px; margin-top: 10px;}
.wc-block-components-quantity-selector {height: 40px; border: 1px solid #c9c6bf; border-radius: 999px; background: #fff; overflow: hidden;}
.wc-block-components-quantity-selector__button {width: 40px; height: 40px; color: #1f2128;}
.wc-block-components-quantity-selector__input {font-size: 15px; font-weight: 500;}
/* 아바다 코어가 input[type=number] 등에 전역으로 주는 높이(--form_input_height)가 알약 안의 숫자칸을 밀어내서, 장바구니 페이지에서만 무효화 */
.woocommerce-cart .wc-block-components-quantity-selector__input {height: 40px !important; padding: 0 !important;}
.wc-block-cart-item__remove-link {height: 40px;}
.wc-block-cart-item__total-price-and-sale-badge-wrapper {align-items: flex-end; gap: 8px;}
.wc-block-cart-item__total .wc-block-components-product-price__value {font-size: 20px; font-weight: 700; color: #1f2128;}
.wc-block-components-sale-badge {font-size: 12px; font-weight: 500; color: #c8372d; background: #f7e3e0; padding: 3px 8px; border-radius: 3px; white-space: nowrap;}
.wc-block-cart__sidebar {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; padding: 28px;}
.wc-block-cart__totals-title {margin: 0 0 16px; font-size: 16px!important; font-weight: 700!important;}
.wc-block-components-totals-coupon.wc-block-components-panel {border-top: 1px solid #e1dfd9;}
.wc-block-components-panel__button {padding: 16px 0 !important; font-size: 14px; color: #1f2128;}
.wc-block-components-totals-footer-item {padding: 20px 0 24px !important; border-top: 1px solid #1f2128 !important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {font-size: 18px; font-weight: 700;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {font-size: 28px; font-weight: 700; color: #c8372d;}
.wc-block-cart__submit-button {height: 56px; border-radius: 4px; background: #1f2128 !important; font-size: 16px; font-weight: 700;}
.wc-block-cart__submit-button:hover {background: #c8372d !important;color: #fff;}
.wc-block-cart__main .wc-block-cart-items tr:first-child td {border-top:0;}
.wc-block-components-sidebar-layout.wc-block-cart {padding-top: 30px;}

/* [위 스크립트가 넣어주는] 정가/할인 합계 2줄 */
#cart-price-breakdown {display: flex; flex-direction: column; gap: 10px; padding: 16px 0; border-top: 1px solid #e1dfd9; font-size: 14px;}
.cart-breakdown-row {display: flex; justify-content: space-between;}
.cart-breakdown-row span:first-child {color: #5a5a5a;}
.cart-breakdown-was {color: #9a9a9a; text-decoration: line-through;}
.cart-breakdown-save {color: #c8372d; font-weight: 500;}

/* 온라인 프로그램 페이지 과정 카드 ("corse card" 템플릿 - Post Card Image/Title/Content/Code Block[course_price] + [course_badge] 배지)
   클로드 디자인 "Online Program Grid" 목업 기준 */
.post-card {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow: hidden; transition: transform .2s, box-shadow .2s;}
.post-card:hover {transform: translateY(-4px); box-shadow: 0 14px 30px rgba(31,33,40,.12);}
.fusion-post-card-image {background: #e4e2dc;}
.course-badge {position: absolute; top: 12px; left: 12px; z-index: 2; font-size: 12px; font-weight: 700; letter-spacing: .02em; padding: 4px 10px; color: #fff; border-radius: 3px; pointer-events: none;}
.post-card h2, .post-card h3 {margin: 0; font-size: 21px; font-weight: 700 !important; line-height: 1.35; letter-spacing: -.01em; color: #1f2128;}
.post-card p:not(.course-price) {margin: 10px 0 0; font-size: 15px; line-height: 1.7; color: #5a5a5a; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}

/* 과정 카드 가격 (WooCommerce get_price_html - 할인중이면 del(정가)+ins(할인가), 아니면 가격만) */
.post-card p.course-price {display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 16px 0 0; padding-top: 16px; border-top: 1px solid #e1dfd9;}
.post-card p.course-price > *:only-child {margin-left: auto;}
.post-card p.course-price del {font-size: 14px; color: #9a9a9a; text-decoration: line-through;}
.post-card p.course-price ins,
.post-card p.course-price > .woocommerce-Price-amount {font-size: 22px; font-weight: 700; color: #c8372d; text-decoration: none;}

/* 과정 상세 페이지 - 레슨(강의) 목록 가로형 리스트 ("lesson card" 템플릿: [lesson_no] + Post Card Image + [lesson_info])
   클로드 디자인 "Course Lectures" 목업 기준. .single-course로 범위를 좁혀서 "corse card"(온라인 프로그램 그리드)와 안 겹치게 함 */
.single-course .fusion-post-cards .fusion-grid {display: flex !important; flex-direction: column; gap: 0 !important; margin: 0 !important;}
.single-course .fusion-post-cards .fusion-grid > .fusion-grid-column {width: 100% !important; padding: 0 !important;}
.single-course .post-card {background: transparent; border: 0; border-bottom: 1px solid #dcdad4; border-radius: 0; box-shadow: none; padding: 0; transition: background .15s;}
.single-course .post-card:hover {background: #fff; transform: none; box-shadow: none;}
.single-course .fusion-post-card-image {position: relative; width: 220px; max-width: 100%; flex: 0 0 auto; border-radius: 4px; overflow: hidden; background: #e4e2dc;}
.single-course .fusion-post-card-image::after {content: ""; position: absolute; right: 8px; bottom: 8px; width: 30px; height: 30px; border-radius: 50%; background: rgba(31,33,40,.78);}
.single-course .fusion-post-card-image::before {content: ""; position: absolute; right: 19px; bottom: 19px; z-index: 1; width: 0; height: 0; border-left: 9px solid #fff; border-top: 6px solid transparent; border-bottom: 6px solid transparent;}
.lesson-no {width: 40px; font-size: 24px; font-weight: 700; color: #c9c6bf; font-variant-numeric: tabular-nums;}
.lesson-text {flex: 1 1 260px; min-width: 0; display: flex; flex-direction: column; gap: 6px;}
.lesson-text-top {display: flex; align-items: center; gap: 10px; flex-wrap: wrap;}
.lesson-text-top h3 {margin: 0; font-size: 19px !important; font-weight: 700 !important; letter-spacing: -.01em;}
.lesson-text p {margin: 0; font-size: 15px; line-height: 1.6; color: #5a5a5a;}
.lesson-free-badge {font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 3px; background: #1f2128; color: #fff;}
.lesson-btn {display: inline-block; font-family: inherit; font-size: 14px; font-weight: 700; padding: 11px 22px; border-radius: 4px; white-space: nowrap; text-decoration: none; cursor: pointer;}
.lesson-btn-outline {border: 1px solid #1f2128; color: #1f2128 !important; background: transparent;}
.lesson-btn-outline:hover {background: #1f2128; color: #fff !important;}
.lesson-btn-fill {background: #c8372d; color: #fff !important; border: 0; padding: 12px 22px;}
.lesson-btn-fill:hover {background: #a92c23;}
.lesson-btn:disabled {opacity: .6; cursor: default;}

/* 레슨 카드 "무료보기" 클릭 시 뜨는 유튜브 영상 모달 */
.lesson-video-modal {position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 16px;}
.lesson-video-modal[hidden] {display: none;}
.lesson-video-modal-backdrop {position: absolute; inset: 0; background: rgba(0,0,0,.75);}
.lesson-video-modal-box {position: relative; width: min(90vw, 900px);}
.lesson-video-modal-frame {position: relative; width: 100%; aspect-ratio: 16/9; background: #000; border-radius: 6px; overflow: hidden;}
.lesson-video-modal-frame iframe {position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.lesson-video-modal-close {position: absolute; top: -42px; right: 0; width: 32px; height: 32px; border-radius: 50%; border: 0; background: #fff; color: #1f2128; font-size: 20px; line-height: 1; cursor: pointer; z-index: 2;}

/* 장바구니 담기 후 "장바구니로 이동할지" 묻는 확인 모달 (예/아니오) */
.lesson-confirm-modal {position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 16px;}
.lesson-confirm-modal[hidden] {display: none;}
.lesson-confirm-backdrop {position: absolute; inset: 0; background: rgba(0,0,0,.6);}
.lesson-confirm-box {position: relative; width: min(90vw, 360px); background: #fff; border-radius: 8px; padding: 28px 24px 22px; text-align: center;}
.lesson-confirm-msg {margin: 0 0 20px; font-size: 15px; line-height: 1.6; color: #1f2128;}
.lesson-confirm-btns {display: flex; gap: 10px; justify-content: center;}
.lesson-confirm-btns .lesson-btn {flex: 1;}

/* 레슨 목록 상단 헤더 ("[current_title] 강의 목록" + "총 [lesson_count]강") */
.lesson-list-head {display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: 2px solid #1f2128; margin-bottom: 4px;}
.lesson-list-head h2 {margin: 0 !important; font-size: 20px !important; font-weight: 700 !important;}
.lesson-count {font-size: 16px; color: #6b6b6b;}
.lesson-count b {color: #1f2128;}
.m_online_plogram_lessons {display: flex; justify-content: space-between; border-bottom:2px solid #8f8f8f;}
.m_online_plogram .fusion-grid-posts-cards>.fusion-post-cards-grid-column>.fusion-content-layout-column {display: flex; flex-direction: row !important; flex-wrap: wrap; align-items: center; gap: 20px 28px; padding: 22px 8px;}
.lesson-btn-outline, .lesson-btn-fill {min-width: 138px; text-align: center;}
.m_online_plogram .fusion-post-cards {margin-top: 0!important;}

/* 모바일 - 레슨 목록 줄바꿈 */
@media (max-width: 600px) {
  .m_online_plogram .fusion-grid-posts-cards>.fusion-post-cards-grid-column>.fusion-content-layout-column {gap: 12px 16px; padding: 16px 4px;}
  .single-course .fusion-post-card-image {width: 100%; order: -1;}
  .lesson-no {width: auto; font-size: 18px;}
  .lesson-text {flex-basis: 100%;}
  .lesson-btn {width: 100%; text-align: center; padding: 11px 0 !important;}
}

/* 카드 그리드 ([kboard_notice_cards] 등에서 사용, 기획서 디자인 기준) */
.cards {display: grid; grid-template-columns: repeat(auto-fill, minmax(24%, 1fr)); gap: 16px;}
.card {display: block; background: #fff; border: 1px solid #dddcd6; border-radius: 10px; padding: 18px 18px 20px; color: inherit; text-decoration: none;}
.card:hover {border-color: #d9573b; box-shadow: 0 3px 14px rgba(0,0,0,.06);}
.card h3 {margin: 0 0 6px; font-size: 20px !important; font-weight: bold !important;}
.card p {margin: 0; color: #5b5d63; font-size: 14.5px; line-height: 1.65;}
.card .go {display: inline-block; margin-top: 12px; font-size: 13.5px; font-weight: 700; color: #b3342b;}
.card-tit {font-size: 22px; font-weight:bold; margin-bottom:10px;}

/* 서브페이지 섹션 공통 ("교육과정 소개" 등 - A-site 기획서 HTML 그대로 붙여넣을 때 쓰는 구조)
   다른 플러그인/아바다 클래스와 안 겹치게 .site 안에서만 적용되게 범위를 좁힘 */
.site .sec {padding: 44px 0;}
.site .sec + .sec {padding-top: 0;}
.site .sec h2 {font-size: 28px; margin: 0 0 12px; letter-spacing: -.02em;font-weight: bold;}
.site .sub {margin: 0 0 20px; color: #5b5d63; font-size: 15px;}
.site .rows {border-top: 1px solid #dddcd6;}
.site .row {display: flex; gap: 18px; padding: 16px 0; border-bottom: 1px solid #dddcd6; align-items: flex-start;}
.site .row .k {flex: 0 0 14%; font-weight: 700; font-size: 17px;}
.site .row .v {flex: 1; color: #5b5d63; font-size: 14.5px; line-height: 1.7;}
.site .callout {background: #ededea; border: 1px solid #dddcd6; border-left: 4px solid #d9573b; border-radius: 10px; padding: 15px 17px; font-size: 14.5px; line-height: 1.7; color: #5b5d63;}
.site .callout b {color: #1c1d20;}
.site .quotes {display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px;}
.site .quotes div {background: #fff; border: 1px solid #dddcd6; border-left: 4px solid #d9573b; border-radius: 10px; padding: 14px 16px;}
.site .quotes b {display: block; font-size: 17px;}
.site .quotes span {color: #5b5d63; font-size: 14.5px;}
.site .tabs {display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid #dddcd6;}
.site .tabs button {font: inherit; font-size: 14.5px; font-weight: 600; background: none; border: 0; border-bottom: 2px solid transparent; padding: 10px 14px; cursor: pointer; color: #5b5d63;}
.site .tabs button:hover {color: #1c1d20;}
.site .tabs button[aria-selected="true"] {color: #1c1d20; border-bottom-color: #d9573b;}
.site .tabpanel > * + * {margin-top: 22px;}
.site .tabpanel .rows {margin-bottom: 20px;}
.site .tabpanel .modlist {margin-bottom: 20px;}
.site .modlist {list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(24%, 1fr)); gap: 8px 18px;}
.site .modlist li {position: relative; padding: 9px 12px 9px 30px; background: #fff; border: 1px solid #dddcd6; border-radius: 8px; font-size: 14.5px; line-height: 1.5;}
.site .modlist li::before {content: ""; position: absolute; left: 12px; top: 15px; width: 8px; height: 8px; border-radius: 2px; background: #d9573b;}
.site .ladder {display: grid; gap: 10px;}
.site .ladder .step {display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid #dddcd6; border-radius: 10px; padding: 13px 15px;}
.site .ladder .step .belt {flex: 0 0 auto; width: 42px; height: 12px;}
.site .ladder .step .belt::after {top: -4px; width: 9px; height: 20px;}
.site .ladder .step b {font-size: 15.5px; flex: 0 0 110px;}
.site .ladder .step span {color: #5b5d63; font-size: 14.5px; line-height: 1.6;}
.site .locked {background: #fff; border: 1px dashed #dddcd6; border-radius: 10px; padding: 30px 24px; text-align: center;}
.site .locked svg {display: block; margin: 0 auto 10px; color: #5b5d63;}
.site .locked h3 {margin: 0 0 8px; font-size: 18px;}
.site .locked p {margin: 0 auto 16px; max-width: 460px; color: #5b5d63; font-size: 14.5px; line-height: 1.7;}
.site .flow {display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0;}
.site .flow span {background: #fff; border: 1px solid #dddcd6; border-radius: 999px; padding: 6px 14px; font-weight: 700; font-size: 14.5px;}
.site .flow i {color: #5b5d63; font-style: normal;}
.site .course-hero-img {position: relative; aspect-ratio: 16/7; border-radius: 10px; overflow: hidden; background-color: #e6e5e0; background-image: repeating-linear-gradient(135deg, rgba(28,29,32,.05) 0 10px, transparent 10px 20px); background-size: cover; background-position: center;}
.site .course-hero-img .course-hero-ph {position: absolute; left: 12px; bottom: 10px; font-size: 12px; color: #5b5d63;}
.site .course-hero-img.has-img .course-hero-ph {display: none;}
.site .course-video {position: relative; aspect-ratio: 16/7; border-radius: 10px; overflow: hidden; background: #000;}
.site .course-video iframe {position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.site .site-map {position: relative; aspect-ratio: 16/7; border-radius: 10px; overflow: hidden;}
.site .site-map iframe {position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.site .btn {display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 46px; padding: 0 22px; border-radius: 8px; font-weight: 700; font-size: 15px; border: 1.5px solid transparent; white-space: nowrap; text-decoration: none;}
.site .btn-orange {background: #d9573b; color: #fff !important;}
.site .btn-orange:hover {background: #c84f34;}
.site .btn-line {background: transparent; color: #1c1d20 !important; border-color: #dddcd6;}
.site .btn-line:hover {background: #f4f4f1;}
.site .sec-cta {display: flex; gap: 10px; flex-wrap: wrap; margin-top: 22px;}

/* 폼 form */
.fusion-form-form-wrapper .fusion-form-field.fusion-form-label-above label {font-weight: bold;}
.submit-btn {width: 100%;}
.fusion-form-form-wrapper .fusion-form-field .fusion-form-input-with-icon {background-color: #fff;}

/* 메인페이지 */
p.course-price ins {float: right; font-size: 20px; color: #9d1616;}

/* 메인페이지 히어로 ([home_hero] 숏코드 - 비메오 배경영상 1920x680 + 문구 + 체험상담신청 버튼) */
.home-hero {position: relative; width: 100%; aspect-ratio: 1920/680; max-height: 680px; min-height: 320px; overflow: hidden; display: flex; align-items: center; color: #fff;}
.home-hero-video {position: absolute; inset: 0; overflow: hidden; pointer-events: none;}
.home-hero-video iframe {position: absolute; top: 50%; left: 50%; width: 100%; height: 100%; min-width: 177.78vh; min-height: 56.26vw; transform: translate(-50%, -50%); border: 0; opacity: 0; transition: opacity 1s ease;}
.home-hero-video iframe.loaded {opacity: 1;}
.home-hero-overlay {position: absolute; inset: 0; background: linear-gradient(270deg, rgba(20,20,22,.80) 0%, rgba(20,20,22,.55) 45%, rgba(20,20,22,0) 78%);}
.home-hero-content {position: relative; z-index: 2; width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 40px; text-align: right;}
.home-hero-eyebrow {font-size: 19px; font-weight: 600; color: #fff; margin: 0 0 18px; text-shadow: 0 1px 4px rgba(0,0,0,.25);}
.home-hero-btn {display: inline-block; background-color: #d9573b; color: #fff !important; font-weight: 700; font-size: 15px; height: 46px; line-height: 46px; padding: 0 24px; border-radius: 8px; text-decoration: none;}
.home-hero-btn:hover {background-color: #a23f2a;}

/*메인 슬라이드 세로 사이즈*/
.main_slider>.fusion-builder-row>.fusion-layout-column {height: 680px;}

/* 메인페이지 이벤트 배너 ([home_event_banner] 숏코드 - 공지사항 썸네일 슬라이드) */
.home-event {position: relative; background: #1c1d20; padding: 0 0 14px;}
.home-event-track {position: relative; height: 172px;}
.home-event-slide {position: absolute; inset: 0; width: 100%; height: 100%; display: flex; opacity: 0; pointer-events: none; transition: opacity .6s ease; background-position: center; background-size: cover; background-color: #2b2c30; color: #fff; text-decoration: none; align-items: center; justify-content: center; text-align: center;}
.home-event-slide.on {opacity: 1; pointer-events: auto;}
.home-event-slide-title {font-size: 16px; font-weight: 600; padding: 0 20px;}
.home-event-nav {position: absolute; top: 50%; transform: translateY(-50%); width: 34px; height: 34px; border-radius: 50%; border: 0; background: rgba(255,255,255,.9); color: #1c1d20; display: flex; align-items: center; justify-content: center; font-size: 20px; z-index: 2; cursor: pointer;}
.home-event-nav.prev {left: 18px;}
.home-event-nav.next {right: 18px;}
.home-event-dots {display: flex; justify-content: center; gap: 6px; margin-top: 10px;}
.home-event-dots span {width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.35); cursor: pointer;}
.home-event-dots span.on {background: #fff;}

/* 메인페이지 "교육과정" 섹션 ([home_courses] 숏코드) - 클로드 디자인 "Home" 목업 ⑤번 섹션 기준
   사진은 아직 없어서 회색 자리표시 박스(.home-course-img 배경)로 비워둠 - 실제 사진 받으면 해당 .home-course-img에 background-image만 추가하면 됨 */
.home-courses-wrap {padding: 56px 0;}
.home-head-row {display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-bottom: 24px;}
.home-head-row h2, .home-actions-wrap h2, .home-videos-wrap h2, .home-faqs-wrap h2 {margin: 0 0 8px; font-size: 34px!important; font-weight: 700 !important; letter-spacing: -.02em!important;}
.home-lead {margin: 0; color: #5a5a5a; font-size: 16px;}
.home-link-red {display: inline-flex; align-items: center; gap: 6px; color: #c8372d !important; font-weight: 700; text-decoration: none; white-space: nowrap;}
.home-link-red:hover {color: #a92c23 !important;}
.home-arrow {font-size: 15px;}

.home-courses {display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px;}
.home-course {display: flex; flex-direction: column; background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow: hidden; color: inherit !important; text-decoration: none; transition: transform .2s, box-shadow .2s;}
.home-course:hover {transform: translateY(-4px); box-shadow: 0 14px 30px rgba(31,33,40,.12);}
.home-course-img {position: relative; aspect-ratio: 4/3; background-color: #e4e2dc; background-image: repeating-linear-gradient(135deg, rgba(31,33,40,.06) 0 10px, transparent 10px 20px); background-size: cover; background-position: center;}
.home-course-img::after {content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20,20,22,0) 45%, rgba(20,20,22,.72) 100%);}
.home-badges {position: absolute; top: 10px; left: 10px; z-index: 2; display: flex; gap: 5px; flex-wrap: nowrap;}
.home-badge {font-size: 11.5px; font-weight: 700; padding: 3px 8px; border-radius: 5px; color: #fff; white-space: nowrap;}
.home-badge-offline {background: #1f2128;}
.home-badge-online {background: #1d4c8c;}
.home-badge-soon {background: rgba(255,255,255,.92); color: #5a5a5a; box-shadow: inset 0 0 0 1px rgba(90,90,90,.5);}
.home-course-img h3 {position: absolute; left: 14px; right: 14px; bottom: 12px; margin: 0; color: #fff!important; font-size: 19px!important; font-weight: 700 !important; letter-spacing: -.01em; z-index: 2;}
.home-course-body {padding: 14px 16px 18px;}
.home-course-for {margin: 0 0 6px; font-size: 16px; font-weight: 700; color: #c8372d;}
.home-course-desc {margin: 0; color: #5a5a5a; font-size: 16px; line-height: 1.6;}

.home-pro-block {margin-top: 34px;}
.home-pro-strip {background: #f7e3e0; border-radius: 6px; padding: 22px 26px; display: flex; align-items: center; gap: 16px;}
.home-pro-strip p {margin: 0!important; flex: 1; font-size: 18px; font-weight: 600;}
.home-pro-cards {margin-top: 18px;}
.home-pro-img {aspect-ratio: 4/3; display: flex; align-items: flex-end;}

/* 메인페이지 "지도자 과정" 안내띠 ([home_instructor] 숏코드) - 클로드 디자인 "Home" 목업 ⑤-2번 섹션 기준 */
.home-instructor {background: #fff; border-top: 1px solid #e1dfd9; border-bottom: 1px solid #e1dfd9;}
.home-instructor-wrap {max-width: 1400px; margin: 0 auto; padding: 30px 28px; display: flex; align-items: center; gap: 20px;}
.home-instructor-wrap h2 {margin: 0; font-size: 26px!important; font-weight: 700 !important;}
.home-instructor-wrap p {margin: 4px 0 0; color: #5a5a5a; font-size: 15px;}
.home-instructor-btns {display: flex; gap: 10px; flex-wrap: wrap; margin-left: auto;}
.home-instructor-btn {display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 22px; border-radius: 4px; border: 1px solid #c9c6bf; color: #1f2128 !important; font-weight: 700; font-size: 15px; text-decoration: none; white-space: nowrap; transition: border-color .2s, background .2s;}
.home-instructor-btn:hover {border-color: #1f2128; background: #f2f1ee;}

/* 메인페이지 "무엇을 하고 싶으세요?" 섹션 ([home_actions] 숏코드) - 클로드 디자인 "Home" 목업 ⑥번 섹션 기준
   사진은 아직 없어서 어두운 회색 박스로 비워둠 - 실제 사진 받으면 .home-action-img에 background-image만 추가하면 됨 */
.home-actions-wrap {padding: 56px 0;}
.home-actions-wrap h2 {margin: 0 0 8px; font-size: 28px; font-weight: 700 !important; letter-spacing: -.02em;}
.home-actions-wrap .home-lead {margin: 0 0 26px;}
.home-actions {display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px;}
.home-action {position: relative; border-radius: 6px; overflow: hidden; aspect-ratio: 4/3; color: #fff;}
.home-action-img {position: absolute; inset: 0; background-color: #3a3b3f; background-image: repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 10px, transparent 10px 20px); background-size: cover; background-position: center;}
.home-action::after {content: ""; position: absolute; inset: 0; background: rgba(20,20,22,.55); pointer-events: none;}
.home-action-inner {position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 12px; padding: 18px; text-align: center;}
.home-action-inner h3 {margin: 0; font-size: 21px!important; font-weight: 700 !important; letter-spacing: -.01em!important; color: #fff!important;}
.home-action-note {font-size: 12px; opacity: .85; margin: -6px 0 0!important; color: #fff;}
.home-action-btn {display: inline-flex; align-items: center; justify-content: center; height: 34px; padding: 0 14px; border-radius: 4px; border: 1.5px solid rgba(255,255,255,.85); color: #fff !important; font-size: 13.5px; font-weight: 700; text-decoration: none; background: transparent; white-space: nowrap; transition: background .2s;}
.home-action-btn:hover {background: rgba(255,255,255,.12);}

/* 메인페이지 "영상으로 먼저 보기" 섹션 ([home_videos] 숏코드) - 클로드 디자인 "Home" 목업 ⑦번 섹션 기준
   썸네일은 유튜브가 자동 제공하는 이미지(img.youtube.com)를 그대로 가져다 씀 - youtube ID만 넣으면 됨, 사진 따로 안 올려도 됨 */
.home-videos-wrap {padding: 56px 0;}
.home-videos-wrap h2 {margin: 0 0 8px; font-size: 28px; font-weight: 700 !important; letter-spacing: -.02em;}
.home-videos-wrap .home-lead {margin: 0 0 26px;}
.home-videos {display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 14px;}
.home-video {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow: hidden; display: flex; flex-direction: column;}
.home-video-thumb {display: block; width: 100%; margin: 0; padding: 0; border: 0; cursor: pointer; position: relative; aspect-ratio: 16/10; background-color: #e4e2dc; background-image: repeating-linear-gradient(135deg, rgba(31,33,40,.06) 0 10px, transparent 10px 20px); background-size: cover; background-position: center;}
.home-video-thumb.is-empty {cursor: default;}
.home-video-play {position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; pointer-events: none;}
.home-video-play-ico {position: relative; width: 46px; height: 46px; border-radius: 50%; background: rgba(20,20,22,.78); display: flex; align-items: center; justify-content: center;}
.home-video-play-ico::before {content: ""; margin-left: 3px; width: 0; height: 0; border-left: 14px solid #fff; border-top: 9px solid transparent; border-bottom: 9px solid transparent;}
.home-video-body {padding: 12px 12px 14px; display: flex; flex-direction: column; gap: 10px; flex: 1;}
.home-video-body h3 {margin: 0; font-size: 17px!important; line-height: 1.35!important; font-weight: 700 !important;}
.home-video-btn {margin-top: auto; width: 100%; text-align: center;}
.home-video-btn.is-empty {opacity: .5; cursor: default;}
.home-video-btn.is-empty:hover {background: transparent; color: #1f2128 !important;}

/* 메인페이지 "궁금한 점을 확인해 보세요" 섹션 ([home_faqs] 숏코드) - 클로드 디자인 "Home" 목업 ⑧번 섹션 기준
   사진은 아직 없어서 회색 자리표시 박스로 비워둠 - 실제 사진 받으면 .home-faq-img에 background-image만 추가하면 됨 */
.home-faqs-wrap {padding: 56px 0;}
.home-faqs-wrap .home-lead {margin: 0 0 26px;}
.home-faqs {display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px;}
.home-faq {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow: hidden; display: flex; flex-direction: column;}
.home-faq-img {aspect-ratio: 16/10; background-color: #e4e2dc; background-image: repeating-linear-gradient(135deg, rgba(31,33,40,.06) 0 10px, transparent 10px 20px); background-size: cover; background-position: center;}
.home-faq-body {padding: 16px 16px 18px; display: flex; flex-direction: column; gap: 8px; flex: 1;}
.home-faq-body h3 {margin: 0; font-size: 18px!important; font-weight: 700 !important; line-height: 1.4!important; letter-spacing: -.01em!important;}
.home-faq-body p {margin: 0; color: #5a5a5a; font-size: 14.5px; line-height: 1.6;}
.home-faq-body .home-link-red {margin-top: auto; padding-top: 6px; font-size: 14px;}

@media (max-width: 1040px) {
  .home-courses {grid-template-columns: repeat(2, minmax(0,1fr));}
  .home-actions {grid-template-columns: repeat(3, minmax(0,1fr));}
  .home-videos {grid-template-columns: repeat(3, minmax(0,1fr));}
  .home-faqs {grid-template-columns: repeat(2, minmax(0,1fr));}
}
@media (max-width: 600px) {
  .home-head-row {flex-direction: column; align-items: flex-start;}
  .home-courses {grid-template-columns: 1fr;}
  .home-pro-strip {flex-direction: column; align-items: flex-start; padding: 18px;}
  .home-instructor-wrap {flex-direction: column; align-items: flex-start;}
  .home-instructor-btns {margin-left: 0; width: 100%;}
  .home-instructor-btn {flex: 1;}
  .home-actions {grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px;}
  .home-action-inner h3 {font-size: 14.5px;}
  .home-action-btn {height: 30px; padding: 0 10px; font-size: 12px;}
  /* 제목+안내문구(note)+버튼이 다 들어가는 카드("온라인으로 배우고 싶어요" 등)는 4:3 비율로는 키가 모자라서 위가 잘리는데,
     그 카드만 높이를 늘리면 같은 줄의 다른 카드와 키가 안 맞아서 - 카드 8개 전부 똑같은 고정 높이로 통일함 */
  .home-action {aspect-ratio: auto; height: 190px;}
  .home-videos {display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; gap: 12px;}
  .home-video {flex: 0 0 72%; scroll-snap-align: start;}
  .home-faqs {grid-template-columns: 1fr;}
}

/* 회원가입 */
.req-text {display:none;}
.cosmosfarm-members-form {max-width: 800px;}

/* 헤더 */
.fusion-secondary-menu .fusion-secondary-menu-icon {background-color: #444444;}
#menu-item-26 .sub-menu li:last-child {border-top: 1px solid #ccc;}

/* 페이지 타이틀바 */
.fusion-page-title-wrapper {display: flex !important; align-items: flex-start!important; flex-direction: column !important; justify-content: center!important;}
.fusion-breadcrumbs .awb-breadcrumb-list {color: #9b9fa8 ;}
.fusion-page-title-secondary, .fusion-page-title-secondary a {color: #9b9fa8 !important;}
.fusion-page-title-bar-left .fusion-page-title-secondary {margin-left: 0px!important; margin-bottom:0px!important;}
.fusion-page-title-secondary {order: -1; margin-bottom: 10px;}
.fusion-page-title-captions h1 {margin: 10px 0 !important;}
.fusion-page-title-bar .fusion-page-title-row h1 {font-weight:500;}

/* 푸터 */
.fusion-footer-widget-column:first-child {margin-bottom: 20px!important;}
.fusion-footer-widget-area .fusion-column {width: 17% !important;}
.fusion-footer-widget-area .fusion-column:nth-child(2) {width: 83% !important;}
.foot-email {background-color: #fff; padding: 1px 5px; border-radius: 3px;}
.fusion-footer-copyright-area>.fusion-row {border-top: 1px solid #c3c3c3; padding: 30px 0;}
.menu-foot_menu-container {float: right;}
.fusion-footer-widget-area .widget_nav_menu>div>ul>li {padding-top: 0;}
.fusion-footer-widget-area .widget_nav_menu ul ul li a {padding-top: 0px!important;}
.fusion-widget-area .widget_nav_menu li {padding: 0px 10px 8px 12px!important;}
#menu-item-384 a {color:#ba0a0a!important; font-weight:bold;}
.fusion-footer-widget-area {padding-bottom: 10px!important;}

/* foot_menu - 5칸 가로 배치 (최상위 항목=굵은 제목, 하위 항목=링크 목록) */
#menu-foot_menu {display: flex; flex-wrap: wrap; gap: 16px 24px; list-style: none; margin: 0; padding: 0; text-align: left;}
#menu-foot_menu > li {flex: 0 1 auto; min-width: 120px; text-align: left;}
#menu-foot_menu > li > a {display: block; font-weight: 700; font-size: 15px; color: #1c1d20; text-decoration: none; margin-bottom: 8px; text-align: left;}
#menu-foot_menu .sub-menu {list-style: none; margin: 0; padding: 0; text-align: left;}
#menu-foot_menu .sub-menu li {margin-bottom: 2px; text-align: left;}
#menu-foot_menu .sub-menu a {color: #5b5d63; font-size: 13.5px; text-decoration: none; line-height: 1.5;}
#menu-foot_menu .sub-menu a:hover {color: #d9573b;}
/* 아바다 기본 위젯 메뉴 스타일(화살표 아이콘, 밑줄) 제거 */
#menu-foot_menu li a:before {content: none !important;}
#menu-foot_menu li, #menu-foot_menu li a {border-bottom: 0 !important; padding-left: 0 !important;}

/* 개인정보취급방침 페이지 스타일 (privacy-policy.html의 .privacy-policy-page와 짝) */
.privacy-policy-page {line-height: 1.7;}
.privacy-policy-page h2 {margin-bottom: 20px;}
.privacy-policy-page h3 {margin-top: 32px; margin-bottom: 10px;}
.privacy-policy-page h4 {margin-top: 20px; margin-bottom: 8px; font-size: 16px;}
.privacy-policy-page ol, .privacy-policy-page ul {padding-left: 24px; margin: 8px 0;}
.privacy-policy-page .policy-sub-list {list-style-type: decimal; padding-left: 24px; margin-top: 6px;}
.privacy-policy-page li {margin-bottom: 6px;}

/* 상단바 "내 정보" → 띠 그림 + 아이디 + 급수 (자리표시, 나중에 DB 연동 예정) */
.user-info-menu {display: inline-flex; align-items: center; gap: 7px;}
.user-info-menu b {font-weight: 700;font-size: 14px;margin: 0 9px;}
.user-info-menu .belt-level {opacity: 0.8;}
.belt {display: inline-block; position: relative; width: 26px; height: 9px; border-radius: 2px; border: 1px solid rgba(0,0,0,.28); background: #fff;}
.belt::after {content: ""; position: absolute; left: 50%; top: -3px; transform: translateX(-50%); width: 6px; height: 15px; border-radius: 1px; background: inherit; border: 1px solid rgba(0,0,0,.28);}
.belt[data-belt="white"] {background: #fff;}
.belt[data-belt="blue"] {background: #7fc3e8;}
.belt[data-belt="purple"] {background: #6b3fa0;}
.belt[data-belt="black"] {background: #17181b;}
.fusion-secondary-menu>ul>li {border-left:0!important;}
.fusion-top-header .fusion-header {border-top: 1px solid #CCC;border-bottom: 1px solid #CCC!important;}

/* 상단바 체험·상담 신청 버튼 (메뉴 항목에 CSS 클래스 btn-trial 지정) */
.btn-trial a {display: inline-block; background-color: #d9573b; color: #fff !important; padding: 0px 18px!important; border-radius: 6px; font-weight: 700; font-size: 14px; text-decoration: none; margin: 3px 13px; height:30px!important; line-height: 30px;}
.btn-trial a:hover {background-color: #a23f2a;}

/* 내강의/온라인과정 ([my_courses] 숏코드) - 클로드 디자인 "My Lectures" 목업 기준, 과정별 아코디언 */
.my-courses {display: flex; flex-direction: column; gap: 16px;}
.my-course-block {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow: hidden;}
.my-course-head {width: 100%; display: flex; align-items: center; gap: 16px; padding: 22px 28px; border: 0; background: #fff; font-family: inherit; color: #1f2128; cursor: pointer; text-align: left;}
.my-course-head:hover {background: #faf9f6;}
.my-course-tag {flex: none; font-size: 11px; font-weight: 700; letter-spacing: .02em; padding: 3px 8px; color: #fff; border-radius: 3px;}
.my-course-name {flex: 1; min-width: 0; font-size: 22px; font-weight: 700; letter-spacing: -.01em; line-height: 1.35;}
.my-course-count {flex: none; font-size: 14px; color: #6b6b6b; white-space: nowrap;}
.my-course-chevron {flex: none; width: 36px; height: 36px; border-radius: 50%; border: 1px solid #c9c6bf; background: #fff; display: flex; align-items: center; justify-content: center;}
.my-course-chevron::before {content: ""; width: 8px; height: 8px; border-right: 1.5px solid #1f2128; border-bottom: 1.5px solid #1f2128; transform: translateY(-2px) rotate(45deg); transition: transform .2s;}
.my-course-block.is-open .my-course-chevron {border-color: #1f2128; background: #1f2128;}
.my-course-block.is-open .my-course-chevron::before {border-color: #fff; transform: translateY(2px) rotate(-135deg);}
.my-course-lessons {list-style: none; margin: 0; padding: 0 28px 12px; border-top: 1px solid #1f2128; display: none;}
.my-course-block.is-open .my-course-lessons {display: block;}
.my-course-lessons li {display: flex; align-items: center; gap: 20px; padding: 16px 0; border-top: 1px solid #e1dfd9;}
.my-course-lessons li:first-child {border-top: 0;}
.my-course-no {flex: none; width: 28px; font-size: 14px; font-weight: 700; color: #c8372d; font-variant-numeric: tabular-nums;}
.my-course-lesson-title {flex: 1; min-width: 0; font-size: 16px; line-height: 1.5;}
.my-course-watch {flex: none; display: flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 999px; background: #1f2128; color: #fff !important; font-size: 14px; font-weight: 500; text-decoration: none; transition: background .2s;}
.my-course-watch:hover {background: #c8372d;}
.my-course-play {width: 0; height: 0; border-left: 8px solid #fff; border-top: 5px solid transparent; border-bottom: 5px solid transparent;}
.my-course-empty {padding: 16px 0; color: #888;}

/* [my_courses] 수강 중인 과정이 없을 때 - 클로드 디자인 "My Lectures Empty" 목업 기준 */
.my-courses-empty {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; padding: 72px 24px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 24px;}
.my-courses-empty-icon {width: 88px; height: 88px; border-radius: 50%; background: #f2f1ee; display: flex; align-items: center; justify-content: center;}
.my-courses-empty h2 {margin: 0; font-size: 22px; font-weight: 700 !important; letter-spacing: -.01em;}
.my-courses-empty p {margin: 10px 0 0; font-size: 15px; line-height: 1.7; color: #5a5a5a;}
.my-courses-empty-actions {display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 8px;}
.my-courses-empty-btn {display: flex; align-items: center; gap: 10px; height: 52px; padding: 0 26px; border-radius: 4px; font-size: 15px; font-weight: 700; text-decoration: none; transition: background .2s, border-color .2s;}
.my-courses-empty-btn.fill {background: #1f2128; color: #fff !important;}
.my-courses-empty-btn.fill:hover {background: #c8372d;}
.my-courses-empty-btn.outline {border: 1px solid #c9c6bf; background: #fff; color: #1f2128 !important; font-weight: 500; padding: 0 22px;}
.my-courses-empty-btn.outline:hover {border-color: #1f2128;}
@media (max-width: 600px) {
  .my-courses-empty {padding: 48px 20px;}
  .my-courses-empty-btn {width: 100%; justify-content: center;}
  .my-courses-empty-actions {width: 100%; flex-direction: column;}
}
@media (max-width: 600px) {
  .my-course-head {flex-wrap: wrap; gap: 10px 14px; padding: 18px 20px;}
  .my-course-tag {order: 0;}
  .my-course-count {order: 2;}
  .my-course-chevron {order: 3; margin-left: auto;}
  .my-course-name {order: 1; flex-basis: 100%; font-size: 18px;}
  .my-course-lessons {padding: 0 20px 10px;}
  .my-course-lessons li {flex-wrap: wrap; gap: 10px 16px;}
  .my-course-watch {width: 100%; justify-content: center;}
}

/* LMS */
.course_tit h2 {font-weight: bold!important;}
.fusion-flex-container .fusion-flex-align-items-flex-start {gap: 10px; flex-wrap: unset!important;}
.m_online_plogram .m_button {width: 100%; padding: 22px !important; font-weight: 500; margin-bottom: 80px!important;}
.m_online_plogram .m_online_plogram_lesson_title {font-size: 28px; margin: 0 0 12px; letter-spacing: -.02em; font-weight: bold;}

/* 수강권 정보 */
.product-grid-view {margin: 40px 0;}
.product-grid-view .product_title {font-weight: 600 !important;}
.product-grid-view .woocommerce-tabs .panel {padding: 0;}
.product-grid-view .social-share {display: none !important;}
.product-grid-view section ul li {margin: 0;}
.product-grid-view section ul li .featured-image img {height: 230px; object-fit: cover;}
.product-grid-view section .title-heading-left {font-weight:bold!important;}
.product-grid-view section ul li .product-details-container h3 {font-size: 24px; margin-bottom: 12px;}
.onsale {background-color:#b3342b!important;}

/* 결제 */
.wc-block-components-form .wc-block-components-text-input input {border: 1px solid #ccc!important;}
.wc-block-components-form .wc-block-components-text-input {border:0!important;}
.wc-block-components-form .wc-blocks-components-select .wc-blocks-components-select__select {border:0!important;}
.wc-block-components-form .wc-block-components-radio-control__option {border:0!important; margin-bottom: 10px;}
.wc-block-components-form .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted {box-shadow: unset; border: 1px solid #ccc;}
.wp-block-woocommerce-checkout-order-summary-coupon-form-block {margin-top: 15px!important;}
.wp-block-woocommerce-checkout-order-summary-totals-block {padding-top: 15px;}
.wc-block-components-totals-footer-item {padding: 20px 16px 24px !important}
.wp-block-woocommerce-checkout-shipping-method-block, .wp-block-woocommerce-checkout-pickup-options-block {display:none;}
.m_cart_empty {font-weight:bold!important; margin-top:3rem;}
.m_course_pass {font-size: 25px!important;}
/* flex 아이템(.wc-block-grid__product)이 기본적으로 min-width:auto라서, 안의 이미지 원본 크기(min-content)만큼 칸이 늘어나 카드마다 폭이 달라짐 - min-width:0으로 막아줌 */
.wc-block-grid__products .wc-block-grid__product-image img {width: revert-layer; height: 230px; object-fit: cover;}


/* ====== 레슨(Learning Mode) 페이지 - 클로드 디자인 "Lesson Player" 목업 기준 ======
   이 템플릿은 Sensei 자체 전체화면 레이아웃(사이드바 열고닫기, 진행률 등)을 쓰므로, 그 동작(position/width)은 건드리지 않고 색상·타이포·간격만 입힘 */
body.sensei-course-theme .sensei-course-theme__header {position: sticky; top: 0; z-index: 20; background: #1f2128; color: #fff;}
body.sensei-course-theme .sensei-course-theme-header-content {height: 64px; padding: 0 20px !important;}
body.sensei-course-theme .wp-block-site-logo img {max-height: 32px; width: auto;}
body.sensei-course-theme .wp-block-sensei-lms-course-title {margin: 0; font-size: 16px; font-weight: 700 !important; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
body.sensei-course-theme .sensei-course-theme-course-progress {font-size: 13px; color: #c9c6bf; white-space: nowrap;}
body.sensei-course-theme .wp-block-sensei-lms-exit-course a {display: flex; align-items: center; height: 36px; padding: 0 14px; border: 1px solid rgba(255,255,255,.35); border-radius: 4px; color: #fff !important; font-size: 13px; font-weight: 500; text-decoration: none;}
body.sensei-course-theme .wp-block-sensei-lms-exit-course a:hover {border-color: #fff;}
body.sensei-course-theme .sensei-course-theme__sidebar-toggle {color: #fff;}
body.sensei-course-theme .sensei-course-theme__sidebar-toggle:hover {background: rgba(255,255,255,.1);}
body.sensei-course-theme .sensei-course-theme-course-progress-bar {height: 3px; background: rgba(255,255,255,.12);}
body.sensei-course-theme .sensei-course-theme-course-progress-bar-inner {background: #c8372d !important;}
.sensei-course-theme__header+*:not(style) {margin-top: 0!important;}

/* 사이드바 강의 목록 */
body.sensei-course-theme .sensei-course-theme__sidebar {background: #fff; border-right: 1px solid #e1dfd9;}
body.sensei-course-theme .sensei-lms-course-navigation__lessons {list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px;}
body.sensei-course-theme .sensei-lms-course-navigation__lessons::before {content: "강의 목록"; display: block; padding: 0 12px 12px; font-size: 12px; font-weight: 700; letter-spacing: .04em; color: #6b6b6b;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson__link {display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 12px; border-radius: 4px; text-decoration: none; color: #1f2128; font-size: 15px;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson__link:hover {background: #f2f1ee; color: #1f2128;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson.current-lesson .sensei-lms-course-navigation-lesson__link {background: #f2f1ee; font-weight: 700; box-shadow: inset 3px 0 0 #c8372d;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson__status {flex: none; width: 22px; height: 22px; color: #c9c6bf;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson.status-in-progress .sensei-lms-course-navigation-lesson__status,
body.sensei-course-theme .sensei-lms-course-navigation-lesson.status-completed .sensei-lms-course-navigation-lesson__status {color: #1f2128;}
body.sensei-course-theme .sensei-lms-course-navigation-lesson__title {flex: 1;}

/* 본문 - 레슨 번호, 제목, 영상 */
body.sensei-course-theme .sensei-course-theme__main-content {padding: 48px 24px 96px;}
body.sensei-course-theme .sensei-course-theme__main-content .entry-content,
body.sensei-course-theme .wp-block-post-title,
body.sensei-course-theme .sensei-course-theme__main-content > .wp-block-group,
body.sensei-course-theme .wp-block-comments,
body.sensei-course-theme #respond.comment-respond {max-width: 880px; margin-left: auto; margin-right: auto;}
body.sensei-course-theme .lesson-player-no {display: block; font-size: 13px; font-weight: 700; color: #c8372d; margin: 0 0 6px;}
body.sensei-course-theme .wp-block-post-title {font-size: 36px; font-weight: 700 !important; letter-spacing: -.02em; margin: 0 0 20px;}
body.sensei-course-theme .sensei-course-theme__main-content .entry-content > .wp-block-embed {margin: 0 0 20px; border-radius: 6px; overflow: hidden; background: #e4e2dc;}
body.sensei-course-theme .sensei-content-description:empty {display: none;}
/* Sensei 기본 블록 템플릿에 레슨 완료/다음 강의 버튼 묶음이 본문 중간에 한 번 더 중복으로 들어있어서, 아래쪽 footer 줄만 남기고 숨김 */
body.sensei-course-theme .sensei-course-theme__main-content > .sensei-block-wrapper {display: none;color: #000;}
.sensei-block-wrapper {width: 100%;}
.sensei-course-theme .wp-block-sensei-lms-lesson-actions .wp-block-sensei-button.wp-block-button.is-style-outline .wp-block-button__link {border:1px solid #000;}

/* 완료/다음 강의 버튼 줄 (페이지 하단) */
body.sensei-course-theme .sensei-lesson-footer .sensei-buttons-container {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 0; border-top: 1px solid #1f2128; border-bottom: 1px solid #d9d7d1; margin-top: 8px;}
body.sensei-course-theme .sensei-lesson-footer .wp-block-button__link {display: flex; align-items: center; gap: 10px; height: 52px!important; padding: 0 24px!important; border-radius: 4px!important; font-family: inherit; font-size: 15px!important; font-weight: 700!important; text-decoration: none; transition: all .2s;}
body.sensei-course-theme .wp-block-sensei-lms-button-lesson-completed .wp-block-button__link {border: 1.5px solid #1f2128 !important; background: #fff !important; color: #1f2128 !important;}
/* 다음 강의 - 평소엔 배경 없이 가벼운 텍스트 링크, 레슨을 완료하면(옆의 완료 버튼에 Sensei가 붙여주는 is-completed 클래스로 감지) 꽉 찬 빨간 버튼으로 강조 */
body.sensei-course-theme .wp-block-sensei-lms-button-next-lesson .wp-block-button__link {border: 0 !important; background: transparent !important; color: #1f2128 !important; padding: 0 4px !important; font-weight: 500 !important;}
body.sensei-course-theme .sensei-buttons-container:has(.is-completed) .wp-block-sensei-lms-button-next-lesson .wp-block-button__link {background: #c8372d !important; color: #fff !important; padding: 0 24px !important; font-weight: 700 !important;}
body.sensei-course-theme .wp-block-sensei-lms-button-next-lesson .wp-block-button__link:hover {color: #c8372d !important;}
body.sensei-course-theme .sensei-buttons-container:has(.is-completed) .wp-block-sensei-lms-button-next-lesson .wp-block-button__link:hover {background: #a92c23 !important; color: #fff !important;}

/* 댓글 영역 */
body.sensei-course-theme .wp-block-comments-title {font-size: 22px; font-weight: 700 !important; letter-spacing: -.01em; margin: 40px 0 24px;}
body.sensei-course-theme .wp-block-comment-template {list-style: none; margin: 0; padding: 0;}
body.sensei-course-theme .wp-block-comment-template > li {padding: 20px 0; border-top: 1px solid #d9d7d1;}
body.sensei-course-theme .wp-block-avatar img {border-radius: 50% !important;}
body.sensei-course-theme .wp-block-comment-author-name {font-size: 14px; font-weight: 700 !important;}
body.sensei-course-theme li.bypostauthor .wp-block-comment-author-name::after {content: "강사"; margin-left: 8px; font-size: 11px; font-weight: 700; padding: 2px 6px; border-radius: 3px; background: #c8372d; color: #fff; vertical-align: middle;}
body.sensei-course-theme .wp-block-comment-date {font-size: 12px; color: #8a8a8a;}
body.sensei-course-theme .wp-block-comment-date time a {color: inherit; text-decoration: none;}
body.sensei-course-theme .wp-block-comment-content p {margin: 6px 0 0; font-size: 15px; line-height: 1.7;}
body.sensei-course-theme .comment-reply-link {font-size: 13px; color: #6b6b6b; text-decoration: none;}
body.sensei-course-theme .comment-reply-link:hover {color: #c8372d;}
/* 중첩 답글(대댓글) - 흰 카드로 구분 */
body.sensei-course-theme .wp-block-comment-template ol {list-style: none; margin: 12px 0 0; padding: 0 0 0 54px;}
body.sensei-course-theme .wp-block-comment-template ol li {background: #fff; border-radius: 6px; padding: 16px; border-top: 0;}

/* 답글 남기기 폼 */
body.sensei-course-theme #respond.comment-respond {margin-top: 32px; padding: 28px; background: #fff; border: 1px solid #e1dfd9; border-radius: 6px;}
body.sensei-course-theme #respond .fusion-title {margin: 0 0 14px !important;}
body.sensei-course-theme #respond .comment-reply-title {font-size: 18px !important; font-weight: 700 !important;}
body.sensei-course-theme #respond .logged-in-as {font-size: 14px; color: #5a5a5a; margin: 0 0 14px;}
body.sensei-course-theme #respond .comment-form-comment label {display: block; font-size: 13px; font-weight: 500; margin-bottom: 8px;}
body.sensei-course-theme #respond textarea#comment {width: 100%; box-sizing: border-box; padding: 14px 16px; background: #f8f7f4; border: 1px solid #c9c6bf; border-radius: 4px; font-family: inherit; font-size: 15px; line-height: 1.6; color: #1f2128; resize: vertical;}
body.sensei-course-theme #respond .form-submit {text-align: right; margin: 14px 0 0;}
body.sensei-course-theme #respond input#submit {height: 48px; padding: 0 28px; border: 0; border-radius: 4px; background: #1f2128; color: #fff; font-family: inherit; font-size: 15px; font-weight: 700; cursor: pointer; transition: background .2s;}
body.sensei-course-theme #respond input#submit:hover {background: #c8372d;}

/* "회원정보"(계정 관리, 글 10번) 페이지 - 코스모스팜 멤버스 플러그인 자체 CSS(스킨 three)가 2x2 박스 중 마지막 칸(로그아웃)의 아래쪽 테두리를 지워버림.
   그 규칙이 다른 페이지에서도 쓰일 수 있어서 전역으로 고치지 않고, 이 페이지(.page-id-10)에서만 테두리를 되돌림 */
body.page-id-10 .cosmosfarm-members-form ul.members-link li:last-child a {border-bottom: 1px solid #e4eaf1 !important;}

/* "소식"(글 264번) 페이지 - 이 페이지 안의 한 섹션이 빌더에서 "Flex" 레이아웃 컨테이너로 설정되어 있어서(fusion-flex-container),
   다른 페이지와 달리 그 안의 행(.fusion-row)이 가로로 펼쳐짐. 빌더에서 그 섹션의 Layout을 바로잡는 게 우선이지만,
   당장은 이 페이지에서만 flex를 꺼서 다른 페이지와 똑같이 세로로 쌓이게 함 */
body.page-id-264 .fusion-flex-container .fusion-row {display: block !important;}

/* 마이페이지 "내 계정"(My Account) - 인사말/고객센터 안내줄, 좌측 메뉴(대시보드/주문/다운로드/주소/계정정보/로그아웃)는 다 숨기고 내용(주문 내역표 등)만 보이게 함 */
body.woocommerce-account .avada-myaccount-user {display: none !important;}
body.woocommerce-account .woocommerce-MyAccount-navigation {display: none !important;}
body.woocommerce-account .woocommerce-MyAccount-content {width: 100% !important;}
body.woocommerce-account .woocommerce-MyAccount-content .wc-block-components-notice-banner {display: none !important;}
.woocommerce-MyAccount-content {margin-left: 0!important;}

/* 로그인, 회원가입, 내정보 수정 */
.cosmosfarm-members-form button {background-color: #000!important;box-shadow: 0 4px 12px rgb(217 217 217 / 20%)!important;}
.cosmosfarm-members-form.signin-form .link-register {color: #b3342b;}
.cosmosfarm-members-form button:hover {background-color: #b3342b !important;}
.cosmosfarm-members-form button, .cosmosfarm-members-form input[type=submit] {background-color: #000000 !important;}
.cosmosfarm-members-form input[type=submit]:hover {background-color: #b3342b !important;}


/* ====== 모바일: 헤더는 로고+햄버거만 남기고, 하단 고정 탭바 표시 ====== */
/* 아바다 "Header Responsive Breakpoint"가 1320px로 설정되어 있어서, 여기도 1320px로 맞춤 (안 맞으면 그 사이 구간에서 상단바/아이콘이 중복으로 보임) */
@media (max-width: 1320px) {
  .fusion-mobile-menu-icons {position: absolute !important; top: 30px!important; transform: translateY(-50%);}
  .fusion-logo {max-width: 80%!important;}
  .wc-block-cart .wc-block-components-sidebar .wc-block-cart__totals-title {display:unset;}
  .wc-block-cart__sidebar {padding: 20px!important;}
  .wc-block-components-totals-wrapper {margin-top: 10px;}
  
  /* 헤더 - 로고와 햄버거를 한 줄로, 햄버거 크게 */
  .fusion-header {padding: 10px 20px!important; position: relative;}

  .fusion-mobile-menu-icons .awb-icon-shopping-cart, .fusion-mobile-menu-icons .awb-icon-search {display:none;}
  .fusion-mobile-menu-icons a.awb-icon-bars {font-size: 24px;}
  /* 상단바(SNS/로그인/체험상담버튼 줄) 숨김 */
  .fusion-secondary-header {display: none !important;}
  /* 메인 메뉴 옆 장바구니 아이콘도 숨김 (하단 탭바에 따로 있음) */
  .fusion-main-menu-cart {display: none !important;}
  /* 하단 탭바 자리 확보 (내용이 가려지지 않게) */
  body {padding-bottom: 60px;}

  /* 메인페이지 히어로/이벤트배너 */
  .home-hero {aspect-ratio: 16/9; max-height: none;}
  .home-hero-content {text-align: left; padding: 0 20px;}
  .home-hero-overlay {background: linear-gradient(180deg, rgba(20,20,22,.25) 0%, rgba(20,20,22,.78) 75%);}
  .home-event-nav.prev {left: 10px;}
  .home-event-nav.next {right: 10px;}
  .main_slider>.fusion-builder-row>.fusion-layout-column {height: 420px;}
  .home-event-track {height: 130px;}
  /* 푸터 foot_menu */
  #menu-foot_menu {flex-direction: column; gap: 24px;}
}

@media (min-width: 1321px) {
  /* 데스크톱에서는 하단 탭바 숨김 */
  .mobile-tabbar {display: none !important;}
}
@media (max-width: 480px) {
  .wp-block-woocommerce-checkout-order-summary-block {padding: 0 16px;}
  .fusion-mobile-menu-icons {top: 23px!important;}
  .fusion-footer-widget-area .fusion-column {width: 100% !important;}
  #menu-foot_menu {display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px;}
  .fusion-widget-area .widget_nav_menu li {padding: 0px 0px 8px 12px !important;}
  .fusion-flex-container .fusion-flex-align-items-flex-start {margin-right: 0!important; margin-left: 0!important;}
  .fusion-post-cards {margin-top: 0!important;}
  .fusion-post-cards .fusion-grid {display: unset !important;}
  .fusion-post-cards .fusion-grid li {margin-bottom: 16px !important;}
  /* 이미지는 이제 비율 기반이라 칸이 더 좁아지면 자동으로 따라 줄어듦 - 여기선 칸 자체만 조금 더 좁혀줌 */
  .wc-block-cart-item__image {min-width: 56px !important; max-width: 64px !important; width: 64px !important;}

  /* 서브페이지 섹션(.site .row) */
  .cards {grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));}
  .site .modlist {grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));}
  .site .row {flex-direction: column; gap: 4px;}
  .site .row .k {flex: none;}
  .site .sec-cta .btn {flex: 1 1 100%;}
  /* 메인페이지 히어로/이벤트배너 */
  .home-hero-eyebrow {font-size: 16px;}
  .home-hero-btn {font-size: 13.5px; height: 40px; line-height: 40px; padding: 0 16px;width:100%!important;text-align: center;}
  .home-event-slide-title {font-size: 13.5px;}
  .main_slider>.fusion-builder-row>.fusion-layout-column {height: 320px;}
  .width-100 .main_2_depth {margin-top: 130px;}
  
}

.mobile-tabbar {position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; display: flex; background: #fff; border-top: 1px solid #ddd; box-shadow: 0 -2px 8px rgba(0,0,0,.06);}
.mobile-tabbar a {flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 8px 0; color: #5b5d63; text-decoration: none; font-size: 11px; position: relative;}
.mobile-tabbar a:hover {color: #d9573b;}
.mobile-tabbar-badge {position: absolute; top: 2px; right: 18%; background: #d9573b; color: #fff; font-size: 10px; line-height: 1; min-width: 15px; height: 15px; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding: 0 3px;}

@media (max-width: 600px) {
  body.sensei-course-theme .sensei-course-theme__main-content {padding: 32px 16px 64px;}
  body.sensei-course-theme .wp-block-post-title {font-size: 26px;}
  body.sensei-course-theme .sensei-lesson-footer .wp-block-button__link {width: 100%; justify-content: center;}
  body.sensei-course-theme .sensei-lesson-footer .sensei-buttons-container {flex-direction: column; align-items: stretch;}
  body.sensei-course-theme .wp-block-comment-template ol {padding-left: 20px;}
  body.sensei-course-theme #respond.comment-respond {padding: 20px;}
}

/* ====== 회원가입 페이지(코스모스팜 멤버스, 스킨 three) - 클로드 디자인 "Register" 목업 기준 ======
   입력창/라벨/성별 버튼 레이아웃 자체는 플러그인 기본 CSS가 이미 처리하고 있어서, 색상(파랑→검정/빨강)과 모서리만 사이트 톤에 맞춰 덮어씀.
   섹션 번호(01~04 제목)와 "모두 동의합니다"/"주소 검색" 버튼은 원래 마크업에 없는 요소라 functions.php의 JS가 추가함 */
.cosmosfarm-members-form.signup-form {max-width: 1000px; margin: 0 auto; padding: 0; background: transparent; border: 0; box-shadow: none; border-radius: 0;background: #fff; border-radius: 16px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06); border: 1px solid #eaeaea; padding: 40px;}
.cosmosfarm-members-form.signup-form select,
.cosmosfarm-members-form.signup-form input[type=text],
.cosmosfarm-members-form.signup-form input[type=email],
.cosmosfarm-members-form.signup-form input[type=tel],
.cosmosfarm-members-form.signup-form input[type=password] {border-radius: 4px; border-color: #c9c6bf;}
.cosmosfarm-members-form.signup-form select:hover,
.cosmosfarm-members-form.signup-form input[type=text]:hover,
.cosmosfarm-members-form.signup-form input[type=email]:hover,
.cosmosfarm-members-form.signup-form input[type=tel]:hover,
.cosmosfarm-members-form.signup-form input[type=password]:hover,
.cosmosfarm-members-form.signup-form select:focus,
.cosmosfarm-members-form.signup-form input[type=text]:focus,
.cosmosfarm-members-form.signup-form input[type=email]:focus,
.cosmosfarm-members-form.signup-form input[type=tel]:focus,
.cosmosfarm-members-form.signup-form input[type=password]:focus {border-color: #1f2128 !important;}

/* 섹션 번호("01 약관 동의" 등, JS가 각 구간 시작 라벨 앞에 삽입) */
.cosmosfarm-members-form.signup-form .reg-step {display: flex; align-items: baseline; gap: 12px; padding-bottom: 14px; margin: 40px 0 20px; border-bottom: 1px solid #1f2128;}
.cosmosfarm-members-form.signup-form legend + .reg-step {margin-top: 0;}
.cosmosfarm-members-form.signup-form .reg-step-no {font-size: 13px; font-weight: 700; color: #c8372d;}
.cosmosfarm-members-form.signup-form .reg-step h2 {margin: 0; font-size: 20px; font-weight: 700; letter-spacing: -.01em;}

/* 약관/개인정보 동의 박스 */
.cosmosfarm-members-form.signup-form .policy_content {border: 1px solid #e1dfd9; border-radius: 4px; background: #f8f7f4;}
.cosmosfarm-members-form.signup-form .div_checkbox.agree > label {display: flex; align-items: center; gap: 10px; margin: 14px 0 0; font-size: 15px; font-weight: 500; cursor: pointer;}
.cosmosfarm-members-form.signup-form .div_checkbox.agree > label input[type=checkbox] {width: 20px; height: 20px; accent-color: #1f2128; flex: none;}
/* "모두 동의합니다" (JS가 삽입) */
.cosmosfarm-members-form.signup-form .reg-agree-all {display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 0 20px; border: 1.5px solid #1f2128; border-radius: 4px; background: #fff; font-size: 16px; font-weight: 700; color: #1f2128; cursor: pointer; margin: 0 0 16px;}
.cosmosfarm-members-form.signup-form .reg-agree-all input {width: 20px; height: 20px; accent-color: #1f2128; flex: none;}

/* 아이디+중복확인 / 우편번호+주소검색 (가로 한 줄 배치로 변경 - 기본은 버튼이 입력창 안에 겹쳐서 보임) */
.cosmosfarm-members-form.signup-form .add-buttons {display: flex; gap: 8px; position: static;}
.cosmosfarm-members-form.signup-form .add-buttons input {flex: 1; min-width: 0; margin-bottom: 0 !important;}
.cosmosfarm-members-form.signup-form .add-buttons .add-buttons-wrap {position: static; transform: none; flex: none;}
.cosmosfarm-members-form.signup-form .add-buttons .add-buttons-wrap button {height: 52px; padding: 0 20px !important; font-size: 14px; font-weight: 700; color: #1f2128; background: #fff !important; border: 1px solid #1f2128; border-radius: 4px; box-shadow: none;}
.cosmosfarm-members-form.signup-form .add-buttons .add-buttons-wrap button:hover {background: #1f2128 !important; color: #fff;}

/* 성별 - 2칸 가로 버튼 (플러그인 기본은 칩 형태라 전체 폭 2등분으로 변경) */
.cosmosfarm-members-form.signup-form .div_radio {display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px;}
.cosmosfarm-members-form.signup-form .div_radio label {margin: 0 !important; width: auto; min-width: 0; height: 52px; display: flex; align-items: center; justify-content: center; border-radius: 4px; box-shadow: none;}
.cosmosfarm-members-form.signup-form .div_radio input[type=radio]:checked + label {background-color: #1f2128 !important; border-color: #1f2128 !important; color: #fff !important; box-shadow: none; transform: none;}

/* 회원가입 제출 버튼 - 약관 2개 모두 동의 전까지는 비활성처럼 보이게 */
.cosmosfarm-members-form.signup-form button,
.cosmosfarm-members-form.signup-form input[type=submit] {background-color: #1f2128 !important; border-radius: 4px; box-shadow: none;}
.cosmosfarm-members-form.signup-form button:hover,
.cosmosfarm-members-form.signup-form input[type=submit]:hover {background-color: #c8372d !important; box-shadow: none; transform: none;}
.cosmosfarm-members-form.signup-form fieldset:has(#policy_service:not(:checked)) input[type=submit],
.cosmosfarm-members-form.signup-form fieldset:has(#policy_privacy:not(:checked)) input[type=submit] {background-color: #9a9893 !important; cursor: not-allowed;}
.cosmosfarm-members-form.signup-form fieldset:has(#policy_service:not(:checked)) input[type=submit]:hover,
.cosmosfarm-members-form.signup-form fieldset:has(#policy_privacy:not(:checked)) input[type=submit]:hover {background-color: #9a9893 !important;}
.cosmosfarm-members-form .policy_content {color: #999999;}

/* "회원정보 수정" 화면에서만 JS가 아이디 입력창을 readonly로 바꿔줌 - 그 상태일 때만 회색으로 비활성처럼 보이게 */
.cosmosfarm-members-form.signup-form input#user_email:read-only {background: #f2f1ee !important; color: #6b6b6b; cursor: not-allowed;}

/* ====== 마이페이지 "주문" 내역 - 클로드 디자인 "Orders v2" 목업 기준 (표 형태 유지) ======
   실제 표에 있는 칸(주문/날짜/상태/총계/동작)만 스타일링. 둥근 테두리 박스(.orders-table-wrap)와 상태 배지(.order-status-pill)는
   functions.php의 wp_footer 스크립트가 감싸줌 - 원래 마크업엔 없는 "장식용 래퍼"라 JS로 추가 */
body.woocommerce-account .avada-woocommerce-myaccount-heading {margin: 0 0 20px; font-size: 22px; font-weight: 700 !important; letter-spacing: -.01em;}
body.woocommerce-account .orders-table-wrap {background: #fff; border: 1px solid #e1dfd9; border-radius: 6px; overflow-x: auto;}
body.woocommerce-account .woocommerce-orders-table {width: 100%; min-width: 820px; border-collapse: collapse; font-size: 15px; border: 0;}
body.woocommerce-account .woocommerce-orders-table thead tr {background: #1f2128; color: #fff;}
body.woocommerce-account .woocommerce-orders-table thead th {padding: 16px 24px; text-align: left; font-size: 13px; font-weight: 700; white-space: nowrap; border: 0;}
body.woocommerce-account .woocommerce-orders-table thead .woocommerce-orders-table__header-order-actions {text-align: right;}
body.woocommerce-account .woocommerce-orders-table tbody tr {border-top: 1px solid #e1dfd9;}
body.woocommerce-account .woocommerce-orders-table tbody tr:hover {background: #faf9f7;}
body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell {padding: 22px 24px; white-space: nowrap; border: 0; text-align: left; vertical-align: middle;}
body.woocommerce-account .woocommerce-orders-table__cell-order-number {font-weight: 700;}
body.woocommerce-account .woocommerce-orders-table__cell-order-number a {color: #c8372d; text-decoration: underline; text-underline-offset: 3px;}
body.woocommerce-account .woocommerce-orders-table__cell-order-date {color: #3d3f45;}
body.woocommerce-account .woocommerce-orders-table__cell-order-total {color: #5a5a5a;}
body.woocommerce-account .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {margin-left: 4px; font-size: 17px; font-weight: 700; color: #1f2128;}
body.woocommerce-account tr.woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {text-decoration: line-through; color: #8a8a8a;}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions {text-align: right!important; padding: 14px 24px;}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions a.woocommerce-button {display: inline-flex; align-items: center; height: 40px; padding: 0 16px; border-radius: 4px; border: 1px solid #c9c6bf; background: #fff; color: #1f2128; font-size: 14px; font-weight: 500; white-space: nowrap; text-decoration: none; vertical-align: middle;}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions a.woocommerce-button + a.woocommerce-button {margin-left: 6px;}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions a.woocommerce-button.view {border-color: #1f2128; background: #1f2128; color: #fff; font-weight: 700;}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions a.woocommerce-button:hover {border-color: #1f2128;}

/* 상태 배지 (JS가 상태 글자를 .order-status-pill span으로 감싸줌) */
body.woocommerce-account .order-status-pill {display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: #e4efe6; color: #2f6b3d;}
body.woocommerce-account .order-status-pill::before {content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor;}
body.woocommerce-account tr.woocommerce-orders-table__row--status-cancelled .order-status-pill,
body.woocommerce-account tr.woocommerce-orders-table__row--status-failed .order-status-pill {background: #ecebe7; color: #6b6b6b;}


