/*
 * Branch theme foundation.
 * The server only emits allowlisted data-theme values; gold-v1 is the fallback.
 */
:root,
html[data-theme="gold-v1"] {
    --muse-theme-primary: #FFCC00;
    --muse-theme-on-primary: #171717;
    --muse-theme-secondary: #F2A900;
    --muse-theme-on-secondary: #171717;
    --muse-theme-deep: #9A5A00;
    --muse-theme-on-deep: #FFFFFF;
    --muse-theme-accent: #9A5A00;
    --muse-theme-soft: #FFF9D6;
    --muse-theme-border: #D9AD00;
    --muse-theme-focus: rgba(255, 204, 0, .32);
    --muse-theme-surface: #FFFBF0;
    --muse-theme-surface-border: #E5CF77;
    --muse-theme-overlay-strong: rgba(94, 74, 0, .84);
    --muse-theme-overlay-mid: rgba(94, 74, 0, .36);
    --muse-theme-overlay-light: rgba(94, 74, 0, .08);
}

html[data-theme="wine-v1"] {
    --muse-theme-primary: #9C243C;
    --muse-theme-on-primary: #FFFFFF;
    --muse-theme-secondary: #CA6377;
    --muse-theme-on-secondary: #171717;
    --muse-theme-deep: #641728;
    --muse-theme-on-deep: #FFFFFF;
    --muse-theme-accent: #9C243C;
    --muse-theme-soft: #F8E9EC;
    --muse-theme-border: #7C1D30;
    --muse-theme-focus: rgba(156, 36, 60, .28);
    --muse-theme-surface: #FFF7F9;
    --muse-theme-surface-border: #D9AAB4;
    --muse-theme-overlay-strong: rgba(69, 10, 21, .90);
    --muse-theme-overlay-mid: rgba(69, 10, 21, .35);
    --muse-theme-overlay-light: rgba(69, 10, 21, .08);
}

html[data-theme="forest-v1"] {
    --muse-theme-primary: #315F4C;
    --muse-theme-on-primary: #FFFFFF;
    --muse-theme-secondary: #6B927F;
    --muse-theme-on-secondary: #171717;
    --muse-theme-deep: #1E4033;
    --muse-theme-on-deep: #FFFFFF;
    --muse-theme-accent: #315F4C;
    --muse-theme-soft: #E8F0ED;
    --muse-theme-border: #244638;
    --muse-theme-focus: rgba(49, 95, 76, .28);
    --muse-theme-surface: #F3F8F5;
    --muse-theme-surface-border: #9EBBAD;
    --muse-theme-overlay-strong: rgba(20, 59, 45, .90);
    --muse-theme-overlay-mid: rgba(20, 59, 45, .38);
    --muse-theme-overlay-light: rgba(20, 59, 45, .09);
}

html[data-theme="blue-v1"] {
    --muse-theme-primary: #85A9FF;
    --muse-theme-on-primary: #11182A;
    --muse-theme-secondary: #5D82D8;
    --muse-theme-on-secondary: #11182A;
    --muse-theme-deep: #385EA8;
    --muse-theme-on-deep: #FFFFFF;
    --muse-theme-accent: #385EA8;
    --muse-theme-soft: #EDF3FF;
    --muse-theme-border: #5D82D8;
    --muse-theme-focus: rgba(133, 169, 255, .34);
    --muse-theme-surface: #F2F5FF;
    --muse-theme-surface-border: #AEBEE7;
    --muse-theme-overlay-strong: rgba(24, 50, 110, .86);
    --muse-theme-overlay-mid: rgba(24, 50, 110, .36);
    --muse-theme-overlay-light: rgba(24, 50, 110, .08);
}

html[data-theme="orange-v1"] {
    --muse-theme-primary: #FF6600;
    --muse-theme-on-primary: #171717;
    --muse-theme-secondary: #FF9A3D;
    --muse-theme-on-secondary: #171717;
    --muse-theme-deep: #B34700;
    --muse-theme-on-deep: #FFFFFF;
    --muse-theme-accent: #B34700;
    --muse-theme-soft: #FFF0E6;
    --muse-theme-border: #CC5200;
    --muse-theme-focus: rgba(255, 102, 0, .30);
    --muse-theme-surface: #FFF4F0;
    --muse-theme-surface-border: #E9B7AB;
    --muse-theme-overlay-strong: rgba(121, 43, 31, .84);
    --muse-theme-overlay-mid: rgba(121, 43, 31, .34);
    --muse-theme-overlay-light: rgba(121, 43, 31, .08);
}

html[data-theme] a:focus-visible,
html[data-theme] button:focus-visible,
html[data-theme] input:focus-visible,
html[data-theme] select:focus-visible,
html[data-theme] textarea:focus-visible {
    outline: 3px solid var(--muse-theme-focus);
    outline-offset: 2px;
}

/* Primary actions and selected states */
html[data-theme] .main_consult_btn > ul,
html[data-theme] .sub_cont .resume_bottom input,
html[data-theme] .sub_cont .resume_bottom a.on,
html[data-theme] .sub_cont .cust_bottom input,
html[data-theme] .sub_cont .cust_bottom a.on,
html[data-theme] .sub_cont .reserFinish.on,
html[data-theme] .seb_consult_btn a,
html[data-theme] .auth_div .submit_auth,
html[data-theme] .btnRequest,
html[data-theme] .lay_popup_date .pop_bottom.on,
html[data-theme] .lay_popup_date .pop_calendar_btn.on,
html[data-theme] .cartBtn > div,
html[data-theme] .lay_popup .pop_bottom.on,
html[data-theme] .pop_calendar_btn.on,
html[data-theme] .lay_popup_reser .reser_pay_b,
html[data-theme] .lay_popup_reser .reserEnd,
html[data-theme] .lay_popup_result .pop_cont .result_ok,
html[data-theme] .lay_popup_add2 .pop_bottom.on,
html[data-theme] .popTicketingBox .detail .addTicket.active,
html[data-theme] .pop_contBox .pop_info .pi_move,
html[data-theme] .pop_contBox .pop_happyCall .happyCall_conts .more a:hover,
html[data-theme] .pop_contBox .pop_happyCall .happyCall_conts .more a:active,
html[data-theme] .searchReserve .btnReservation.active,
html[data-theme] .visitOverseas .btn div,
html[data-theme] .sub_cont .reser_pay_b a.on,
html[data-theme] .v2_qna div:nth-child(even) {
    color: var(--muse-theme-on-primary) !important;
    background-color: var(--muse-theme-primary) !important;
    border-color: var(--muse-theme-border) !important;
}

html[data-theme] .main_consult_btn > ul a,
html[data-theme] .cartBtn > div a,
html[data-theme] .lay_popup_reser .reser_pay_b a,
html[data-theme] .sub_cont .price_l_top .price_menu li.on a,
html[data-theme] .lay_popup_add .pop_cont .price_l_top .price_menu li.on a {
    color: inherit !important;
}

/* Compact actions, dots, checks and calendar selections */
html[data-theme] .option-input:checked::after,
html[data-theme] .ReserCont .option-input:checked::after,
html[data-theme] .main_cont .main_visual .flex-control-nav li a.flex-active,
html[data-theme] .sub_cont .price_l_top .price_menu li.on,
html[data-theme] .lay_popup_add .pop_cont .price_l_top .price_menu li.on,
html[data-theme] .sub_cont .price_list > div .price_list_btn li:last-child,
html[data-theme] .sub_cont .price_event .price_event_list > div .price_list_btn li,
html[data-theme] .sub_cont .price_product .price_product_list > div .product_btn li,
html[data-theme] .bg_change .swiper-pagination-bullet-active,
html[data-theme] .sub_cont .price_boot_sur .price_boot_bcont > div .price_list_btn li:last-child,
html[data-theme] .sub_cont .event_list > div .event_list_btn li:last-child,
html[data-theme] .cust_certified .type a,
html[data-theme] .auth_div .auth_btn,
html[data-theme] .lay_popup_date .pop_calendar_time > div > div.swiper-slide.on,
html[data-theme] #myCalender td.action,
html[data-theme] .certified .type a,
html[data-theme] .pop_calendar_time > div.timeListBox > div.on,
html[data-theme] .lay_popup_add .pop_cont .price_list > div .price_list_btn li,
html[data-theme] .lay_popup_conf .pop-layer .pop_conf_div .pop_conf_div_cont > ul li.kakao,
html[data-theme] .lay_popup_select .pop-layer .pop_select_div .pop_select_div_select > ul li.kakao,
html[data-theme] .popCartBox ul > li:nth-child(2),
html[data-theme] .sub_cont .reser_form .reser_form_t > div > div:last-child .sameN_subm,
html[data-theme] .sub_cont .reser_form .reser_form_t > div > div:last-child .tAuth_getBtn,
html[data-theme] .sub_cont .reser_form .reser_form_t .tel_AuthNum .tAuth_subm,
html[data-theme] .sub_cont .reser_form_Txt > div.userTicket .no-uT .ticketUse,
html[data-theme] .sub_cont .reser_form_Txt > div.userHistory .history .historyCheck,
html[data-theme] .sub_cont .reser_form_Agree .chkAll > input:checked + label,
html[data-theme] .searchReserve .item.active .progress,
html[data-theme] .v2_slider .swiper-pagination-bullet-active,
html[data-theme] .vs_tab .swiper-pagination-bullet-active {
    color: var(--muse-theme-on-primary) !important;
    background-color: var(--muse-theme-primary) !important;
    border-color: var(--muse-theme-border) !important;
}

/* Legacy yellow fills that are rendered outside the shared action components. */
html[data-theme] .main_pc .main_hero_pc_pagination .swiper-pagination-bullet-active,
html[data-theme] #mainHeroMobile .main_hero_mobile_pagination .swiper-pagination-bullet-active,
html[data-theme] .main_cont ul.tabs > li.on,
html[data-theme] .sub_cont .staff_l_top .staff_menu li.on,
html[data-theme] .sub_cont .reser_info div.txt {
    color: var(--muse-theme-on-primary) !important;
    background-color: var(--muse-theme-primary) !important;
}

/* Accent text and interactive strokes use a white-background-safe tone. */
html[data-theme] .header > ul > li a.hover,
html[data-theme] .header .top_search_div form > div.search_div > .display_box .search_tit span,
html[data-theme] .header .top_search_div form > div.search_div > .display_box .search_subtit span,
html[data-theme] .header .top_search_div .bg ul li:nth-child(2),
html[data-theme] .pcVideoContent .bg ul li:nth-child(2) a,
html[data-theme] .slide_menu .hover,
html[data-theme] .slide_menu > div .menu_intro > div,
html[data-theme] .slide_menu > div .menu_prevent > div,
html[data-theme] .slide_menu > div .menu_muse > div,
html[data-theme] .main_cont .swiper_consult .swiper-slide > a,
html[data-theme] .main_cont .main_skincare .skincare_tit span,
html[data-theme] .sub_cont .price_list > div .price_list_tit span,
html[data-theme] .sub_cont .price_list > div .price_list_subtit span,
html[data-theme] .sub_cont .price_view_cont .price_view_cont_text .view_txt strong,
html[data-theme] .sub_cont .price_view_cont .price_view_cont_text .event_group li:nth-child(3) strong.color,
html[data-theme] .sub_cont .event_list > div.none_search span,
html[data-theme] .sub_cont .hire .color,
html[data-theme] .recent .recentBox .conts .list .price,
html[data-theme] .tabs div.Active label,
html[data-theme] .tabs-ticket dl dt label,
html[data-theme] .auth_div .auth_list .a_l_tit,
html[data-theme] .lay_popup .pop_cont > div .booking_tit.T,
html[data-theme] .lay_popup .acc_prod .acc_prod_tab span,
html[data-theme] .lay_popup .acc_prod .acc_prod_cont > div .acc_prod_cont_t .price_list_price,
html[data-theme] .lay_popup .acc_prod .acc_prod_cont > div .acc_prod_cont_t .price_list_btn li a,
html[data-theme] .pop_calendar_time > div.timeListBox > div.composure > span,
html[data-theme] .pop_calendar_time > div.timeListBox > div.composure.on > span,
html[data-theme] .lay_popup_reser .pop_cont .res_sur .res_sur_b > div .res_sur_num,
html[data-theme] .lay_popup_add .pop_cont .price_list > div .price_list_tit > span,
html[data-theme] .lay_popup_add .pop_cont .price_list > div .price_list_subtit > span,
html[data-theme] .lay_popup_add .pop_cont .price_list > div .price_list_price,
html[data-theme] .lay_popup_add .pop_cont div.none_search span,
html[data-theme] .lay_popup_conf .pop-layer .pop_conf_div .pop_conf_div_btn a,
html[data-theme] .lay_popup_select .pop-layer .pop_select_div .pop_select_div_btn a,
html[data-theme] .sub_cont .intro_content .color,
html[data-theme] .sub_cont .intro_content .kakao,
html[data-theme] .sub_cont .guid_intro .guid_map .map_t_tit,
html[data-theme] .sub_cont .guid_intro .guid_time01 span,
html[data-theme] .sub_cont .guid_intro .guid_time02 li span,
html[data-theme] .sub_cont .guid_intro .guid_time03 > div > div:first-child,
html[data-theme] #videoText li.goaTxt > a,
html[data-theme] .sub_cont.sub_fixed .bg ul li:nth-child(2) a,
html[data-theme] .historyReserve .historyReserveClose,
html[data-theme] .checkReserve .checkReserveClose,
html[data-theme] .helpMessage.Active .msgBox .msgOK,
html[data-theme] #calTitle #prevMonth,
html[data-theme] #calTitle #nextMonth,
html[data-theme] .action:hover {
    color: var(--muse-theme-accent) !important;
}

/* Lines, selected tabs and rounded labels formerly fixed to #fc0. */
html[data-theme] .header .top_search_div form > div #keyword,
html[data-theme] .sub_cont .price_search form input[type="text"],
html[data-theme] .lay_popup_add .price_search form input[type="text"],
html[data-theme] #searchForm input,
html[data-theme] .sub_cont .staffIntro .tabs li.ui-tabs-active,
html[data-theme] .sub_cont .guid_intro > ul li.ui-tabs-active,
html[data-theme] .hire_tab li.active,
html[data-theme] .sub_cont .event_order_group ul li.on,
html[data-theme] .searchReserve .Keyword,
html[data-theme] .vs_tab_page,
html[data-theme] #ticket_use,
html[data-theme] .etc_list.action,
html[data-theme] .sub_cont .intro_content .kakao span {
    border-bottom-color: var(--muse-theme-primary) !important;
}

html[data-theme] .header .top_search_div > div,
html[data-theme] .sub_cont.sub_fixed .sub_cont_right,
html[data-theme] .sub_cont.sub_fixed .sub_fixed_right {
    border-left-color: var(--muse-theme-primary) !important;
}

html[data-theme] .sub_cont .guid_intro .guid_map .map_t_icon {
    border-color: var(--muse-theme-primary) !important;
}

html[data-theme] .main_cont .map_t_icon {
    border-color: var(--muse-theme-primary) !important;
}

html[data-theme] .sub_cont .reser_info div.btnContent {
    border-bottom-color: var(--muse-theme-primary) !important;
}

html[data-theme] .sub_cont .reser_info div.txt::after {
    border-right-color: var(--muse-theme-primary) !important;
}

html[data-theme] .arrow_all:before,
html[data-theme] .arrow_all2:before,
html[data-theme] .sub_cont .sub_notice .notice_list li .noti_tit span.arrow:before,
html[data-theme] .sub_cont .accordion span.arrow:before,
html[data-theme] .happyCall-tit .i-arrow:after,
html[data-theme] .sub_cont .sub_policy .policy_list li .poli_tit span.arrow:before,
html[data-theme] .lay_popup .acc_prod .acc_prod_tab span.arrow:before {
    border-color: var(--muse-theme-accent) !important;
    border-right-color: transparent !important;
    border-top-color: transparent !important;
}

html[data-theme] .auth_div .auth_head,
html[data-theme] .auth_div .auth_list .a_list_b .auth_m,
html[data-theme] .lay_popup_date .pop_calendar,
html[data-theme] .pop_calendar .date_arrow_box,
html[data-theme] .lay_popup_add .pop_cont .price_more,
html[data-theme] .lay_popup .acc_prod .acc_prod_cont > div .acc_prod_cont_t .price_list_btn li.hover,
html[data-theme] .sub_cont .reser_form_Agree .chkAll {
    border-color: var(--muse-theme-border) !important;
}

html[data-theme] .main_consult_btn > ul li:first-child::after,
html[data-theme] .cartBtn > div:first-of-type::after,
html[data-theme] .seb_consult_btn a:nth-child(2):after,
html[data-theme] .visitOverseas .btn:before {
    background-color: var(--muse-theme-border) !important;
}
