/* OEREP refinement, 2026-11-11. Presentation only; no commerce controls hidden. */
:root {
  --ore-ink: #24332c;
  --ore-muted: #66756c;
  --ore-accent: #244d3d;
  --ore-line: #dfe6e0;
  --ore-soft: #f4f7f4;
}
#gnb.om-nav, .om-mobile, .oh-collection, [data-oerep-catalog],
#faq_wrap, #faq_sch, #mb_login {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
}
/* Quieter chrome, with the existing grouped menus and interaction geometry intact. */
#gnb.om-grouped .om-top-item {
  border-radius: 9px;
  background: rgba(255,255,255,.025);
  box-shadow: none;
}
#gnb.om-grouped .om-top-item[data-om-play] {
  border-radius: 9px;
  background: rgba(215,193,132,.06);
  box-shadow: none;
}
#gnb.om-grouped .om-top-item:hover,
#gnb.om-grouped .om-top-item:focus-within,
#gnb.om-grouped .om-top-item[data-om-play]:hover,
#gnb.om-grouped .om-top-item[data-om-play]:focus-within {
  box-shadow: none;
  transform: none;
}
#gnb.om-grouped .om-parent-link { letter-spacing: -.025em; }
#gnb.om-grouped .om-group-label { color: #acb8b2; }
#gnb.om-grouped .om-toggle { border-radius: 0 8px 8px 0; }
#gnb.om-grouped .om-panel {
  border-color: #dce4dd;
  border-top-color: rgb(var(--om-accent));
  box-shadow: 0 14px 35px rgba(19,36,27,.14);
}
#gnb.om-grouped .om-child-link { font-size: 14px; color: #34443a; }
#gnb.om-grouped .om-search,
.om-mobile .om-search {
  border-color: #d4ded6;
  background: #fbfcfa;
}
#gnb.om-nav a:focus-visible, #gnb.om-nav button:focus-visible,
#gnb.om-nav input:focus-visible, .om-mobile a:focus-visible,
.om-mobile button:focus-visible, .om-mobile input:focus-visible {
  outline-color: #789b85;
}
#hd .oerep-header-utility #hd_tnb .tnb_btn {
  width: 38px;
  height: 36px;
}
#hd .oerep-header-utility #hd_tnb .tnb_btn:focus-visible {
  outline-color: #9db5a5;
}
.om-mobile.om-mobile-grouped .om-mobile-section-title {
  color: #5c7061;
  letter-spacing: .035em;
}
.om-mobile.om-mobile-grouped .om-mobile-link[aria-current] {
  color: var(--ore-accent);
  background: #edf4ef;
}
.om-mobile .om-child-link { line-height: 1.65; }

/* Keep the editorial four/two-column collection and its sales/filter selectors. */
.oh-intro .oh-description { color: #647168; font-size: 14px; line-height: 1.8; }
.oh-meta { font-size: 12px; }
.oh-meta span { color: #68766b; }
.oh-info h3 { font-size: 15px; line-height: 24px; height: 48px; }
.oh-price { margin-top: 12px; font-size: 17px; font-variant-numeric: tabular-nums; }
.oh-filters select, .oh-filters button { min-height: 44px; }
.oh-count, .oh-progress { color: #657368; }
.oh-more { border-color: #587665; }
.oh-home .ogb-home { border-color: #dce5dc; border-left-color: #244d3d; }
.oh-home .ogb-home-link { min-height: 44px; font-weight: 600; font-size: 12px; }

/* Notice emphasis follows the same palette without changing pinning or ordering. */
#bo_list li.bo_notice { background: #f2f6f2; border-color: #dce6dd; }
#bo_list .bo_notice .notice_icon { background: #e2ece2; color: #315d40; }
#bo_list .bo_subject { line-height: 1.65; }
#bo_list .bo_info { color: #68776d; }

/* Override the legacy submit fill only inside the sign-in form. */
#mb_login #login_fs .btn_submit,
#mb_login #login_frm .btn_submit { background: #294f3c !important; color: #fff !important; }
#mb_login #login_fs .btn_submit:hover,
#mb_login #login_frm .btn_submit:hover { background: #1c3c2c !important; }
#mb_login #login_frm > div {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-height: 44px;
}
#mb_login #login_frm > div label { display: inline-flex; align-items: center; min-height: 44px; }
#mb_login #login_frm input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: #294f3c; }

@media (max-width: 767px) {
  .oh-intro .oh-description { font-size: 13px; line-height: 1.8; }
  .oh-meta { font-size: 11px; }
  .oh-info h3 { font-size: 13px; line-height: 22px; height: 44px; }
  .oh-price { font-size: 16px; line-height: 24px; margin-top: 9px; }
  .oh-image-note { font-size: 9px; }
  .oh-summary { font-size: 12px; }
  .oh-home .ogb-home-link { font-size: 11px; padding: 8px 10px; }
}
@media (prefers-reduced-motion: reduce) {
  #gnb.om-grouped .om-top-item { transition: none; }
}

/* Catalogue captions: retain the existing card grids and two-line titles. */
#container [data-oerep-catalog] .oerep-catalog-name,
#container [data-oerep-catalog] .sct_txt > a,
#container [data-oerep-catalog] a.sct_txt,
#container [data-oerep-catalog] .oerep-catalog-name > a.oerep-catalog-product-name {
    color: #2b3932;
    font-weight: 500;
    letter-spacing: -.015em;
}
#container #sct.oerep-category-layout > .con_right [data-oerep-catalog="desktop"]:not(.sct_40) .oerep-catalog-product-name,
#container #sct.oerep-category-layout > #sct_wrap.sct_10 .oerep-catalog-product-name {
    height: 42px;
    min-height: 42px;
    max-height: 42px;
    line-height: 21px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -.015em;
    color: #2b3932;
}
#container [data-oerep-catalog] .oerep-catalog-tag {
    border-color: #dce3de;
    border-radius: 4px;
    background: #f4f6f3;
    color: #56645b;
    font-size: 10px;
    font-weight: 500;
}
#container [data-oerep-catalog] .oerep-catalog-tag--domestic {
    border-color: #cbded0;
    background: #edf5ee;
    color: #315e42;
}
#container [data-oerep-catalog] .oerep-catalog-tag--overseas {
    border-color: #d6dfe3;
    background: #f0f4f6;
    color: #526570;
}
#container [data-oerep-catalog] a.oerep-catalog-tag--factory:hover {
    border-color: #9caf9f;
    background: #edf3ed;
    color: #234832;
}
#container [data-oerep-catalog] a.oerep-catalog-tag--factory:focus-visible {
    outline: 2px solid #406b55;
    outline-offset: 2px;
}
#container [data-oerep-catalog] .sct_cost,
#container #sct.oerep-category-layout > .con_right [data-oerep-catalog="desktop"]:not(.sct_40) .sct_cost,
#container #sct.oerep-category-layout > #sct_wrap.sct_10 .sct_cost {
    color: #183e2c;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    letter-spacing: -.02em;
}
#container [data-oerep-catalog] .sct_cost .sct_discount {
    color: #78837b;
    font-size: 12px;
    font-weight: 400;
}

/* Category choices: keep the existing row counts and bounded scrolling. */
#sct.oerep-category-layout .oc-picker {
    padding: 22px;
    border-color: #e0e6e1;
    border-radius: 10px;
    background: #fff;
}
#sct.oerep-category-layout .oc-picker h2 {
    margin-bottom: 16px;
    color: #2a3b30;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: -.025em;
}
#sct.oerep-category-layout .oc-categories a {
    min-height: 44px;
    border-color: #e0e7e1;
    border-radius: 6px;
    background: #f8faf7;
    color: #46584b;
    font-size: 12px;
    line-height: 1.5;
}
#sct.oerep-category-layout .oc-categories a:hover,
#sct.oerep-category-layout .oc-categories a[aria-current="page"],
#sct.oerep-category-layout .oc-categories a.oc-ancestor {
    border-color: #294f3c;
    background: #294f3c;
    color: #fff;
}
#sct.oerep-category-layout .oc-categories a:focus-visible,
#sct.oerep-category-layout .oc-toolbar a:focus-visible,
#sct.oerep-category-layout .oc-toolbar button:focus-visible {
    outline: 2px solid #406b55;
    outline-offset: 2px;
}
#sct.oerep-category-layout .oc-sort a {
    color: #69786d;
    font-size: 12px;
}
#sct.oerep-category-layout .oc-sort a:hover,
#sct.oerep-category-layout .oc-sort a[aria-current] {
    color: #234832;
    font-weight: 600;
}
#sct.oerep-category-layout .oc-view button {
    border-color: #dfe6df;
    color: #718078;
}
#sct.oerep-category-layout .oc-view button.sct_lst_on,
#sct.oerep-category-layout .oc-view button:hover {
    color: #294f3c;
    background: #edf3ed;
}

/* FAQ alone uses the muted green tabs; other board categories stay scoped out. */
body:has(#faq_wrap) #bo_cate {
    border-color: #e1e7e1;
}
body:has(#faq_wrap) #bo_cate ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 14px 20px;
    margin: 0;
}
body:has(#faq_wrap) #bo_cate li {
    float: none;
    margin: 0;
}
body:has(#faq_wrap) #bo_cate a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid #dfe6df;
    border-radius: 6px;
    background: #fff;
    color: #536458;
    font-size: 13px;
    line-height: 1.5;
    text-decoration: none;
    box-shadow: none;
}
body:has(#faq_wrap) #bo_cate #bo_cate_on,
body:has(#faq_wrap) #bo_cate a:hover {
    border-color: #294f3c;
    background: #294f3c;
    color: #fff;
    font-weight: 600;
    box-shadow: none;
    -webkit-box-shadow: none;
}
body:has(#faq_wrap) #bo_cate #bo_cate_on::before {
    background: transparent;
}
body:has(#faq_wrap) #bo_cate a:focus-visible,
#faq_sch .frm_input:focus-visible,
#faq_sch .btn_submit:focus-visible,
#faq_wrap li h3 a:focus-visible,
#faq_con .closer_btn:focus-visible {
    outline: 2px solid #406b55;
    outline-offset: 2px;
}
#faq_sch {
    padding: 26px 20px;
    border-color: #e1e7e1;
    background: #f7f9f6;
}
#faq_sch form {
    display: flex;
    align-items: center;
    gap: 8px;
    max-width: 620px;
    margin: 0 auto;
}
#faq_sch .sch_tit {
    flex: 0 0 auto;
    margin-right: 8px;
    color: #3a4f40;
    font-size: 15px;
    font-weight: 500;
    white-space: nowrap;
}
#faq_sch .frm_input {
    flex: 1 1 auto;
    box-sizing: border-box;
    min-width: 0;
    width: 0;
    height: 48px;
    padding: 10px 14px;
    border: 1px solid #d8e1d9;
    border-radius: 6px;
    background-color: #fff;
    color: #263c2e;
    font-size: 16px;
    box-shadow: none;
}
#faq_sch .btn_submit {
    position: static;
    flex: 0 0 auto;
    box-sizing: border-box;
    min-width: 48px;
    width: auto;
    height: 48px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid #294f3c;
    border-radius: 6px;
    background: #294f3c;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
    box-shadow: none;
}
#faq_sch .btn_submit:hover {
    border-color: #1c3c2c;
    background: #1c3c2c;
}
#faq_wrap ol {
    padding: 20px;
}
#faq_wrap li {
    margin: 10px 0;
    border: 1px solid #e1e7e1;
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
    -webkit-box-shadow: none;
}
#faq_wrap li h3 {
    position: relative;
    min-height: 56px;
    margin: 0;
    padding: 0;
    color: #293e31;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.65;
}
#faq_wrap li h3 a {
    display: block;
    box-sizing: border-box;
    min-height: 56px;
    padding: 16px 18px 16px 54px;
    color: inherit;
    line-height: inherit;
}
#faq_wrap li h3 .tit_bg,
#faq_con h3 .faq_alp {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #e8f0e9;
    color: #31563d;
    font-size: 12px;
    font-weight: 600;
    line-height: 24px;
    text-align: center;
}
#faq_con .con_inner {
    padding: 18px 18px 18px 54px;
    border-top: 1px solid #e5ebe5;
    background: #f8faf7;
    color: #4a5c4f;
    font-size: 14px;
    line-height: 1.8;
}
#faq_con .con_inner .tit_bg,
#faq_con .con_inner .faq_alp {
    top: 18px;
    left: 16px;
    width: 24px;
    height: 24px;
    background: #e5ece5;
    color: #526956;
    line-height: 24px;
}
#faq_con .con_inner .closer_btn,
#faq_con .closer_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 44px;
    height: auto;
    margin-top: 4px;
    padding: 10px 16px;
    border: 1px solid #d8e1d9;
    border-radius: 6px;
    background: #fff;
    color: #46604e;
    font-size: 12px;
    line-height: 1.5;
}

/* Sign-in only. Registration, guest order and purchase fields are untouched. */
#mb_login {
    box-sizing: border-box;
    width: calc(100% - 32px);
    max-width: 460px;
    margin: 64px auto 72px;
    padding: 34px 32px 26px;
    border: 1px solid #e0e7e0;
    border-radius: 12px;
    background: #fff;
    text-align: left;
    box-shadow: 0 10px 32px rgba(27, 57, 38, .045);
}
#mb_login h1 {
    margin: 0 0 26px;
    padding: 0;
    color: #234431;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -.035em;
    text-align: center;
}
#mb_login #login_fs {
    min-width: 0;
    padding: 0;
}
#mb_login #login_fs .frm_input,
#mb_login #login_frm .frm_input {
    box-sizing: border-box;
    width: 100%;
    min-height: 50px;
    height: 50px;
    margin: 0 0 10px;
    padding: 12px 14px;
    border: 1px solid #dce4dc;
    border-radius: 6px;
    background-color: #fff;
    color: #263b2d;
    font-size: 16px;
    line-height: 1.5;
    box-shadow: none;
}
#mb_login #login_fs .frm_input:focus,
#mb_login #login_frm .frm_input:focus {
    border-color: #668973;
    outline: 2px solid #406b55;
    outline-offset: 2px;
    box-shadow: none;
}
#mb_login #login_fs .btn_submit,
#mb_login #login_frm .btn_submit {
    box-sizing: border-box;
    min-height: 50px;
    height: 50px;
    margin: 10px 0 0;
    border: 1px solid #294f3c;
    border-radius: 6px;
    background: #294f3c;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    box-shadow: none;
}
#mb_login #login_fs .btn_submit:hover,
#mb_login #login_frm .btn_submit:hover {
    background: #1c3c2c;
    border-color: #1c3c2c;
}
#mb_login #login_info a,
#mb_login .mb_login_join a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 44px;
    color: #526758;
    font-size: 13px;
    line-height: 1.5;
}
#mb_login .btn_join {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 48px;
    margin-top: 10px;
    border: 1px solid #ccd9cd;
    border-radius: 6px;
    background: #f7faf6;
    color: #31563d;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
}
#mb_login .btn_join:hover {
    border-color: #92ac97;
    background: #edf4ed;
}
#mb_login #login_fs .btn_submit:focus-visible,
#mb_login #login_frm .btn_submit:focus-visible,
#mb_login #login_info a:focus-visible,
#mb_login .mb_login_join a:focus-visible,
#mb_login .btn_join:focus-visible {
    outline: 2px solid #406b55;
    outline-offset: 3px;
}
@media (max-width: 760px) {
    #sct.oerep-category-layout .oc-picker {
        padding: 18px 14px;
    }
    #sct.oerep-category-layout .oc-categories a {
        padding: 9px 8px;
        font-size: 12px;
    }
    body:has(#faq_wrap) #bo_cate ul {
        padding: 12px 14px;
        gap: 6px;
    }
    body:has(#faq_wrap) #bo_cate a {
        padding: 9px 11px;
        font-size: 12px;
    }
    #faq_sch {
        margin: 12px 14px 0;
        padding: 0;
        border: 0;
        background: transparent;
    }
    #faq_sch .sch_tit {
        font-size: 13px;
    }
    #faq_wrap {
        margin: 0 14px 48px;
    }
    #faq_wrap ol {
        padding: 0;
    }
    #faq_wrap li h3,
    #faq_con .con_inner {
        font-size: 13px;
    }
    #faq_wrap li h3 a {
        padding-right: 14px;
    }
    #mb_login {
        margin: 32px auto 44px;
        padding: 28px 22px 24px;
    }
    #mb_login h1 {
        font-size: 25px;
        margin-bottom: 24px;
    }
}
