@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@800&family=Outfit:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@300;400;500;700;900&display=swap');
@import url('../../../nariya/css/g5.css');

/* ================================================================
   View Transitions API — 페이지 전환 애니메이션
   언어 토글(KOR/ENG/JPN) 또는 메뉴 이동 시 부드러운 페이드
   지원: Chrome 126+, Edge 126+ (미지원 브라우저는 기본 즉시 전환)
================================================================ */
@view-transition {
  navigation: auto;
}

::view-transition-old(root) {
  animation: bm-vt-out 0.22s cubic-bezier(0.4, 0, 0.2, 1) both;
}
::view-transition-new(root) {
  animation: bm-vt-in 0.28s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes bm-vt-out {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(-6px); }
}
@keyframes bm-vt-in {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* 사용자가 모션 감소 설정한 경우 비활성화 */
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none;
  }
}

/* ================================================================
   BuzzMaker Theme — Dark Edition
   Hero H1 전용: Syne 800
   제목/숫자:    Outfit
   본문:         Noto Sans KR
================================================================ */

:root {
  --bm-green:   #00E5A0;
  --bm-teal:    #00C8D4;
  --bm-blue:    #3B8BFF;
  --bm-grad:    linear-gradient(135deg, #00E5A0 0%, #00C8D4 50%, #3B8BFF 100%);

  --bm-dark:    #060D1A;
  --bm-dark2:   #0C1628;
  --bm-dark3:   #111E35;
  --bm-card:    #0F1D32;
  --bm-border:  rgba(0,229,160,0.15);
  --bm-border2: rgba(255,255,255,0.06);

  --bm-text:    #E8F0FF;
  --bm-muted:   rgba(232,240,255,0.55);
  --bm-muted2:  rgba(232,240,255,0.3);

  --bm-shadow:  0 4px 24px rgba(0,0,0,0.4);
  --bm-glow:    0 0 40px rgba(0,229,160,0.2), 0 0 80px rgba(59,139,255,0.1);

  /* 폰트 변수 */
  --f-hero: 'Syne', sans-serif;    /* 히어로 h1 전용 */
  --f-head: 'Outfit', sans-serif;  /* 섹션 제목, 숫자, 카드 제목 */
  --f-body: 'Noto Sans KR', sans-serif; /* 본문 전체 */
}

/********************************************************
■ Base
********************************************************/
body { margin:0; padding:0; background:var(--bm-dark); color:var(--bm-text); font-family:var(--f-body); }
/* h 태그 폰트: .wrapper 안에서만 Outfit 적용, 모달 등 외부는 기본값 유지 */
.wrapper h1, .wrapper h2, .wrapper h3,
.wrapper h4, .wrapper h5, .wrapper h6, .en { font-family:var(--f-head); }
a { text-decoration:none; color:inherit; }
*, *::before, *::after { box-sizing:border-box; }

/* 테마 관리자 모달 — 다크 테마 영향 차단 */
.modal-content,
.modal-content .list-group-item,
.modal-content a,
.modal-content h5,
.modal-content b {
  color:#333 !important;
  background-color:#fff !important;
  font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
.modal-content .list-group-item.bg-primary,
.modal-content .bg-primary {
  background-color:#007bff !important;
  color:#fff !important;
}
/* 헤더 타이틀 h5, b, 닫기버튼 — 흰색 강제 */
.modal-content .list-group-item.bg-primary *,
.modal-content .list-group-item.bg-primary h5,
.modal-content .list-group-item.bg-primary b,
.modal-content .list-group-item.bg-primary .close,
.modal-content .list-group-item.bg-primary .close span,
.modal-content .list-group-item.bg-primary .text-white {
  color:#fff !important;
  background-color:transparent !important;
  -webkit-text-fill-color:#fff !important;
  background-clip:unset !important;
  -webkit-background-clip:unset !important;
}
.modal-content .list-group-item.bg-light {
  background-color:#f8f9fa !important;
  color:#0062cc !important;
}
.modal-content .list-group-item.bg-light b {
  color:#0062cc !important;
  background-color:transparent !important;
  -webkit-text-fill-color:#0062cc !important;
  background-clip:unset !important;
  -webkit-background-clip:unset !important;
}
.modal-content a:hover { color:#0056b3 !important; }

/********************************************************
■ Layout
********************************************************/
.wrapper { background:var(--bm-dark); }
.nt-container, .nt-container-wide { margin:0 auto; }
@media all and (max-width:991px) { .responsive .wrapper { overflow-x:hidden; } }
@media all and (min-width:992px) {
  .responsive .boxed-a.wrapper .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
  .responsive .boxed-b.wrapper { padding-left:1.5rem !important; padding-right:1.5rem !important; }
  .responsive .boxed-b.wrapper #nt_title .nt-container.px-xl-0,
  .responsive .boxed-b.wrapper #nt_wing .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
}
.no-responsive .boxed-a.wrapper .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
.no-responsive .boxed-b.wrapper { padding-left:1.5rem !important; padding-right:1.5rem !important; }
@media all and (max-width:1200px) {
  .no-responsive .wrapper.wided .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
}

/********************************************************
■ Loader
********************************************************/
#nt_loader { background:var(--bm-dark); left:0; top:0; width:100%; height:100%; display:block; position:fixed; z-index:100000; }
#nt_loader .loader { margin:-25px 0 0 -25px; left:50%; top:50%; width:50px; height:50px; line-height:50px; font-size:45px; position:absolute; z-index:10001; }

/********************************************************
■ Top Banner
********************************************************/
.bm-top-banner {
  background:var(--bm-dark3);
  border-bottom:1px solid var(--bm-border);
  padding:9px 16px;
  position:relative; overflow:hidden;
}
.bm-top-banner::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg,transparent,rgba(0,229,160,0.06),transparent);
  animation:bm-shimmer 4s linear infinite;
}
@keyframes bm-shimmer { 0%{transform:translateX(-100%)} 100%{transform:translateX(100%)} }
.bm-top-banner-inner {
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:center; gap:12px;
  position:relative; z-index:1; flex-wrap:wrap;
}
.bm-banner-dot { width:7px; height:7px; border-radius:50%; background:var(--bm-green); animation:bm-dot-pulse 2s ease-in-out infinite; flex-shrink:0; }
@keyframes bm-dot-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.5)} }
.bm-banner-text { font-size:0.82rem; color:var(--bm-muted); font-weight:400; }
.bm-banner-cta {
  padding:4px 14px; background:var(--bm-grad); color:#060D1A;
  font-weight:700; font-size:0.76rem; border-radius:100px; white-space:nowrap;
  transition:all 0.3s; box-shadow:0 4px 14px rgba(0,229,160,0.25);
}
.bm-banner-cta:hover { transform:scale(1.05); }
@media (max-width:480px) { .bm-banner-text { display:none; } }

/********************************************************
■ LNB
********************************************************/
#nt_lnb { background:var(--bm-dark2); border-bottom:1px solid var(--bm-border); }
#nt_lnb ul { list-style:none; margin:0; }
#nt_lnb ul > li { float:left; padding:0 10px; }
#nt_lnb ul > li::after { font-family:dotum; float:right; color:var(--bm-border); content:"|"; margin-right:-14px; }
#nt_lnb ul > li:first-child { padding-left:0; }
#nt_lnb ul > li:last-child { padding-right:0; }
#nt_lnb ul > li:last-child::after { content:""; }
#nt_lnb ul > li > a { float:left; white-space:nowrap; }
.bm-lnb-inner { display:flex; justify-content:space-between; align-items:center; padding:7px 0; }
.bm-date-chip { font-size:0.76rem; color:var(--bm-muted); font-family:var(--f-head),monospace; letter-spacing:1px; }
.bm-lnb-link { font-size:0.78rem; color:var(--bm-muted); transition:color 0.2s; }
.bm-lnb-link:hover { color:var(--bm-green); }

/* Noti badge */
.noti-box { position:relative; display:inline-flex; align-items:center; }
.noti-box span { position:relative; display:inline-flex; }
.nt-noti-badge {
  position:absolute; top:-8px; right:8px;
  display:flex; align-items:center; justify-content:center;
  min-width:18px; height:18px; padding:0 5px;
  background:linear-gradient(135deg,#ff6b6b,#ee5a6f);
  color:white; font-size:10px; font-weight:700;
  border-radius:9px; border:2px solid var(--bm-dark2);
  animation:bm-noti-pulse 2s ease-in-out infinite;
}
@keyframes bm-noti-pulse {
  0%,100%{transform:scale(0.95);box-shadow:0 2px 6px rgba(255,107,107,0.4)}
  50%{transform:scale(1.05);box-shadow:0 4px 12px rgba(255,107,107,0.7)}
}
#nt_sidebar_noti { display:none !important; }

/********************************************************
■ Mobile Header
********************************************************/
#header_mo { box-shadow:0 2px 20px rgba(0,0,0,0.5); }
.bm-mo-header {
  background:var(--bm-dark2); border-bottom:1px solid var(--bm-border);
  display:flex; align-items:center; justify-content:space-between; padding:13px 16px;
}
.bm-mo-menu-btn { display:flex; flex-direction:column; gap:5px; padding:4px; cursor:pointer; }
.bm-mo-menu-btn span { display:block; width:22px; height:2px; background:var(--bm-text); border-radius:2px; transition:all 0.3s; }
.bm-mo-logo img { max-height:30px; width:auto; }
.bm-mo-search-btn { color:var(--bm-muted); padding:4px; transition:color 0.2s; }
.bm-mo-search-btn:hover { color:var(--bm-green); }
.bm-mo-search { background:var(--bm-dark3); border-bottom:1px solid var(--bm-border); padding:12px 16px; }
.bm-search-wrap {
  display:flex; align-items:center;
  background:var(--bm-card); border:1px solid var(--bm-border);
  border-radius:10px; overflow:hidden; transition:border-color 0.2s;
}
.bm-search-wrap:focus-within { border-color:rgba(0,229,160,0.5); }
.bm-search-wrap input { flex:1; background:transparent; border:none; outline:none; padding:11px 14px; color:var(--bm-text); font-size:0.93rem; }
.bm-search-wrap input::placeholder { color:var(--bm-muted2); }
.bm-search-wrap button { background:transparent; border:none; cursor:pointer; padding:11px 14px; color:var(--bm-muted); transition:color 0.2s; }
.bm-search-wrap button:hover { color:var(--bm-green); }

/********************************************************
■ PC Navigation
********************************************************/
#nt_menu {
  position:relative; z-index:20;
  background:rgba(6,13,26,0.96) !important;
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--bm-border);
}

/* ── 스크롤 연동 번개 라인 ── */
/* left 값은 JS에서 --bm-electric-pos 변수로 주입 */
#nt_menu::after {
  content:'';
  position:absolute;
  bottom:-1px; left:var(--bm-electric-pos, -120px);
  width:120px; height:1px;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,229,160,0) 10%,
    rgba(0,229,160,0.9) 30%,
    #fff 48%,
    rgba(0,229,160,0.9) 52%,
    rgba(0,229,160,0.6) 65%,
    rgba(59,139,255,0.4) 80%,
    transparent 100%
  );
  filter:drop-shadow(0 0 4px #00E5A0) drop-shadow(0 0 10px rgba(0,229,160,0.8)) drop-shadow(0 0 2px #fff);
  /* animation 없음 — JS 스크롤로 제어 */
  z-index:30;
  pointer-events:none;
}

/* 치직 글로우 확산 레이어 — JS로 별도 span 생성, left는 JS 직접 제어 */
.bm-electric-glow {
  position:absolute;
  bottom:-1px; left:-70px;
  width:70px; height:3px;
  background:radial-gradient(ellipse at center, rgba(0,229,160,0.3) 0%, transparent 70%);
  filter:blur(4px);
  /* animation 없음 — JS 스크롤로 제어 */
  z-index:29;
  pointer-events:none;
}

#header_pc .nt-container { background:none !important; }

/* Logo */
#nt_menu .menu-logo { min-width:160px; display:flex; align-items:center; }
#nt_menu .menu-logo img,
#nt_menu .menu-logo #logo_img,
#nt_menu #logo_img {
  width:auto !important; max-width:150px !important; max-height:44px !important;
  height:auto !important; object-fit:contain !important; display:block !important; flex-shrink:0 !important;
}
#nt_menu .menu-logo .logo-text {
  font-family:var(--f-head); font-size:1.5rem; font-weight:800;
  background:var(--bm-grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}

/* Menu list */
#nt_menu .me-list { padding:0 2rem; }
#nt_menu .me-ul { gap:3rem; align-items:center; }
#nt_menu .me-li { position:relative; }

/* Menu link */
#nt_menu .me-a {
  display:inline-block; position:relative;
  font-weight:500; color:var(--bm-muted) !important;
  background:transparent !important;
  padding:1.45rem 0; font-size:0.97rem; line-height:1.4;
  transition:color 0.25s ease; letter-spacing:-0.2px; white-space:nowrap;
}
#nt_menu .me-a::after {
  content:''; position:absolute; bottom:0; left:0; right:100%;
  height:2px; background:var(--bm-grad);
  transition:right 0.3s ease; border-radius:2px;
}
#nt_menu .me-li:hover .me-a { color:#fff !important; }
#nt_menu .me-li:hover .me-a::after { right:0; }
#nt_menu .me-li.on .me-a { color:var(--bm-green) !important; font-weight:600; }
#nt_menu .me-li.on .me-a::after { right:0; }

/* Submenu */
.nt-menu .me-li { position:relative; }
.nt-menu .me-li::after { content:''; position:absolute; left:0; right:0; top:100%; height:20px; }
.nt-menu .sub-1div {
  display:none; position:absolute; left:0; z-index:21;
  top:calc(100% + 8px); min-width:180px;
  background:var(--bm-dark3) !important; border:1px solid var(--bm-border);
  padding:8px; border-radius:14px; box-shadow:0 20px 50px rgba(0,0,0,0.5);
  opacity:0; animation:bm-sub-fade 0.22s ease forwards;
}
@keyframes bm-sub-fade { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
.nt-menu .me-li:hover .sub-1div { display:block; }
.nt-menu .sub-1dul { margin:0; padding:0; list-style:none; }
.nt-menu .sub-1dli { margin-bottom:2px; }
.nt-menu .sub-1dli:last-child { margin-bottom:0; }
.nt-menu .sub-1da {
  display:block; color:var(--bm-muted) !important;
  padding:9px 14px; font-size:0.9rem; font-weight:500;
  transition:all 0.2s; text-decoration:none; border-radius:8px; white-space:nowrap;
}
.nt-menu .sub-1dli:hover .sub-1da { background:rgba(0,229,160,0.1) !important; color:var(--bm-green) !important; }
.nt-menu .sub-1da i { display:none; }
.nt-menu .sub-1line { display:none; }

/* CTA button */
#nt_menu .menu-right { min-width:220px; justify-content:flex-end; }
#nt_menu .btn-contact {
  background:var(--bm-grad) !important; border:none; border-radius:10px;
  color:#060D1A !important; font-weight:700;
  padding:0.62rem 1.6rem !important; font-size:0.9rem;
  transition:all 0.3s; box-shadow:0 6px 20px rgba(0,229,160,0.25);
}
#nt_menu .btn-contact:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(0,229,160,0.4); }

/* Sticky */
#nt_sticky_wrap.me-sticky { position:fixed; width:100%; z-index:999; left:0; top:0; }
@media all and (min-width:992px) {
  .wrapper.m-lg-auto #nt_sticky_wrap.me-sticky nav { margin:0 auto !important; }
}
/* 강제 정렬 */
#nt_menu nav, #nt_menu .nt-container, #nt_menu > div > div, #nt_menu .d-flex { align-items:center !important; }

/* Responsive nav */
@media all and (max-width:1200px) { #nt_menu .me-ul{gap:1.8rem;} #nt_menu .me-list{padding:0 1rem;} #nt_menu .me-a{font-size:0.93rem;} }
@media all and (max-width:991px) { #nt_menu .menu-logo{min-width:130px;} #nt_menu .btn-contact{padding:0.5rem 1.2rem !important;font-size:0.85rem;} }

/********************************************************
■ Page Title Hero
********************************************************/
#nt_title.nt-title-hero {
  position:relative; overflow:hidden; min-height:240px;
  display:flex; align-items:center; justify-content:center;
  background:var(--bm-dark2);
}
.nt-title-bg {
  position:absolute; inset:0;
  background-image:url('https://images.unsplash.com/photo-1487014679447-9f8336841d58?w=1920&q=80');
  background-size:cover; background-position:center;
  opacity:0; z-index:1; animation:bm-title-reveal 1s ease-out forwards;
}
.nt-title-overlay {
  position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(6,13,26,0.92),rgba(12,22,40,0.9));
  z-index:2;
}
.nt-title-overlay::before {
  content:''; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(0,229,160,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,160,0.04) 1px, transparent 1px);
  background-size:50px 50px;
}
@keyframes bm-title-reveal {
  0%{clip-path:inset(0 100% 0 100%);opacity:0}
  1%{opacity:0.2} 100%{clip-path:inset(0 0% 0 0%);opacity:0.2}
}
#nt_title.nt-title-hero .nt-container { position:relative; z-index:3; width:100%; max-width:1200px; margin:0 auto; }
.nt-title-content { text-align:center; padding:50px 20px; }
.nt-breadcrumb-nav { margin-bottom:22px; }
.nt-breadcrumb-nav .breadcrumb {
  display:flex; justify-content:center; align-items:center;
  background:transparent; padding:0; margin:0; font-size:0.82rem; gap:4px; flex-wrap:wrap;
}
.nt-breadcrumb-nav .breadcrumb-item a { color:var(--bm-muted); transition:color 0.2s; }
.nt-breadcrumb-nav .breadcrumb-item a:hover { color:var(--bm-green); }
.nt-breadcrumb-nav .breadcrumb-item.active a { color:var(--bm-muted2); pointer-events:none; }
.nt-breadcrumb-nav .breadcrumb-item + .breadcrumb-item::before { content:"/"; padding:0 7px; color:var(--bm-muted2); }
.nt-main-title {
  font-family:var(--f-head);
  font-size:clamp(1.8rem,5vw,3.4rem); font-weight:800; color:#fff;
  letter-spacing:-1.5px; line-height:1.15; margin-bottom:14px;
  animation:bm-title-up 0.8s ease 0.6s backwards;
}
.nt-title-desc { font-size:0.98rem; line-height:1.8; color:var(--bm-muted); animation:bm-title-up 0.8s ease 0.8s backwards; }
@keyframes bm-title-up { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

@media all and (max-width:991px) { #nt_title.nt-title-hero{min-height:240px;} .nt-title-content{padding:56px 20px;} }
@media all and (max-width:767px) { #nt_title.nt-title-hero{min-height:200px;} .nt-title-content{padding:44px 16px;} .nt-main-title{font-size:1.7rem;} }
@media all and (max-width:480px) { .nt-main-title{font-size:1.5rem;letter-spacing:-0.5px;} .nt-title-desc{font-size:0.88rem;} }

/********************************************************
■ Wing
********************************************************/
#nt_wing .nt-container { position:relative; overflow:visible !important; }
#nt_wing img { max-width:100%; }
#nt_wing .wing-left, #nt_wing .wing-right { position:absolute; width:160px; }
#nt_wing .wing-left { left:-180px; }
#nt_wing .wing-right { right:-180px; }

/********************************************************
■ Footer
********************************************************/
#nt_footer { position:relative; background:var(--bm-dark2); border-top:1px solid var(--bm-border); overflow:hidden; }

/* 배경: 격자 패턴 (마스크로 가장자리 페이드) */
#nt_footer::before {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image:
    linear-gradient(rgba(0,229,160,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,160,0.07) 1px, transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:radial-gradient(ellipse 90% 100% at 50% 50%, black 25%, transparent 100%);
          mask-image:radial-gradient(ellipse 90% 100% at 50% 50%, black 25%, transparent 100%);
}
/* 배경: radial gradient orb 2개 */
#nt_footer::after {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(circle 520px at 10% 0%, rgba(0,229,160,0.18), transparent 65%),
    radial-gradient(circle 600px at 92% 100%, rgba(59,139,255,0.16), transparent 65%);
}
/* 풋터 콘텐츠는 배경 위로 */
.bm-footer-top, .bm-footer-bottom { position:relative; z-index:1; }

.bm-footer-top { padding:24px 24px 48px; border-bottom:1px solid var(--bm-border2); }
.bm-footer-top-inner { display:grid; grid-template-columns:2fr 1.2fr 1.5fr; gap:56px; align-items:start; }

/* 컬럼 사이 세로 구분선 (그라데이션 페이드) */
.bm-footer-top-inner > div + div { position:relative; }
.bm-footer-top-inner > div + div::before {
  content:''; position:absolute; left:-28px; top:8px; bottom:8px; width:1px;
  background:linear-gradient(to bottom, transparent, rgba(0,229,160,0.35) 30%, rgba(0,229,160,0.35) 70%, transparent);
}

/* 로고 옆 펄싱 액센트 (활성 상태 인디케이터) */
.bm-footer-logo { display:flex !important; align-items:center; gap:14px; margin-bottom:14px; }
.bm-footer-logo-dot {
  width:12px; height:12px; border-radius:50%;
  background:var(--bm-green);
  box-shadow:0 0 0 0 rgba(0,229,160,0.7), 0 0 14px rgba(0,229,160,0.6);
  animation:bm-footer-pulse 2s ease-in-out infinite;
  flex-shrink:0;
}
@keyframes bm-footer-pulse {
  0%, 100% { box-shadow:0 0 0 0 rgba(0,229,160,0.7), 0 0 12px rgba(0,229,160,0.5); opacity:1; }
  50%      { box-shadow:0 0 0 10px rgba(0,229,160,0), 0 0 18px rgba(0,229,160,0.8); opacity:0.85; }
}
.bm-footer-logo img { max-width:150px; height:auto; }
.bm-footer-tagline { font-family:var(--f-head); font-size:0.78rem; color:var(--bm-green); letter-spacing:1.5px; text-transform:uppercase; margin-bottom:10px; font-weight:600; }
.bm-footer-brand-desc { font-size:0.86rem; color:var(--bm-muted); line-height:1.7; margin-bottom:22px; }

/* 브랜드 컬럼 미니 통계 (소셜 아이콘 자리 대체) */
.bm-footer-mini-stats {
  display:grid; grid-template-columns:repeat(3, 1fr); gap:0;
  background:rgba(0,229,160,0.04); border:1px solid var(--bm-border);
  border-radius:14px; padding:14px 0; max-width:340px;
}
.bm-mini-stat { text-align:center; padding:0 8px; border-right:1px solid var(--bm-border2); }
.bm-mini-stat:last-child { border-right:none; }
.bm-mini-stat-num {
  font-family:var(--f-head); font-size:1.4rem; font-weight:800;
  background:var(--bm-grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  line-height:1; margin-bottom:4px; letter-spacing:-0.5px;
}
.bm-mini-stat-num span { font-size:0.95rem; }
.bm-mini-stat-lbl { font-size:0.7rem; color:var(--bm-muted); letter-spacing:0.3px; }
.bm-footer-nav-title { font-family:var(--f-head); font-size:0.78rem; font-weight:700; color:#fff; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:18px; }
.bm-footer-nav { list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:11px; }
.bm-footer-nav a { font-size:0.86rem; color:var(--bm-muted); transition:all 0.2s; }
.bm-footer-nav a:hover { color:var(--bm-green); padding-left:5px; }
.bm-footer-contact-box { background:linear-gradient(135deg, rgba(0,229,160,0.06), rgba(59,139,255,0.04)); border:1px solid var(--bm-border); border-radius:14px; padding:20px; }

/* 문의 박스 내 연락처 리스트 */
.bm-footer-contact-list { list-style:none; padding:0; margin:0 0 16px; display:flex; flex-direction:column; gap:14px; }
.bm-footer-contact-list li { display:flex; gap:12px; align-items:flex-start; }
.bm-contact-icon {
  width:32px; height:32px; flex-shrink:0;
  display:inline-flex; align-items:center; justify-content:center;
  background:rgba(0,229,160,0.1); border:1px solid rgba(0,229,160,0.25);
  border-radius:9px; font-size:0.95rem;
}
.bm-contact-key { font-size:0.68rem; color:var(--bm-green); letter-spacing:1.2px; text-transform:uppercase; font-weight:700; margin-bottom:3px; }
.bm-contact-val { font-size:0.83rem; color:var(--bm-text); transition:color 0.2s; word-break:break-all; }
a.bm-contact-val:hover { color:var(--bm-green); }

.bm-footer-cta-btn { display:block; text-align:center; padding:11px 18px; background:var(--bm-grad); color:#060D1A; font-weight:700; font-size:0.85rem; border-radius:10px; transition:all 0.3s; box-shadow:0 4px 14px rgba(0,229,160,0.2); }
.bm-footer-cta-btn:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,229,160,0.4); color:#060D1A; }

.bm-footer-bottom { padding:20px 24px; border-top:1px solid var(--bm-border2); }
.bm-footer-bottom-inner { display:flex; flex-wrap:wrap; align-items:center; gap:14px; justify-content:space-between; }
.bm-footer-legal-links { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.bm-footer-legal-links a { font-size:0.8rem; color:var(--bm-muted); transition:color 0.2s; }
.bm-footer-legal-links a:hover { color:var(--bm-green); }
.bm-footer-info { display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:0.76rem; color:rgba(232,240,255,0.25); }
.bm-footer-sep { opacity:0.3; }
.bm-footer-copy { font-size:0.76rem; color:rgba(232,240,255,0.25); }
.bm-footer-made { display:inline-block; margin-left:8px; padding:3px 10px; border-radius:100px; background:rgba(0,229,160,0.12); border:1px solid rgba(0,229,160,0.4); color:var(--bm-green); font-size:0.72rem; letter-spacing:0.3px; font-weight:600; }

@media all and (max-width:1024px) {
  .bm-footer-top-inner{grid-template-columns:1fr 1fr;gap:40px;}
  /* 2컬럼일 땐 좌측 컬럼(첫째)만 구분선 없음, 우측 컬럼(둘째)은 위치 재조정 */
  .bm-footer-top-inner > div + div::before{left:-20px;}
}
@media all and (max-width:768px) {
  .bm-footer-top{padding:48px 20px 36px;}
  .bm-footer-top-inner{grid-template-columns:1fr;gap:28px;}
  /* 모바일에선 세로 구분선 → 가로 구분선으로 전환 */
  .bm-footer-top-inner > div + div::before{
    left:0; right:0; top:-14px; bottom:auto; width:auto; height:1px;
    background:linear-gradient(to right, transparent, rgba(0,229,160,0.14) 30%, rgba(0,229,160,0.14) 70%, transparent);
  }
  .bm-footer-bottom{padding:18px 20px;}
  .bm-footer-bottom-inner{flex-direction:column;align-items:flex-start;gap:10px;}
  .bm-footer-info{flex-direction:column;align-items:flex-start;gap:4px;}
  .bm-footer-sep{display:none;}
}
@media all and (max-width:480px) {
  .bm-footer-logo img{max-width:120px;}
}

/********************************************************
■ Quick Buttons
********************************************************/
.bm-quick-btns { position:fixed; right:24px; bottom:32px; z-index:9000; display:flex; flex-direction:column; align-items:center; gap:10px; }
.bm-quick-toggle {
  width:52px; height:52px; border-radius:50%;
  background:var(--bm-grad); border:none; cursor:pointer;
  display:flex; align-items:center; justify-content:center; color:#060D1A;
  box-shadow:0 8px 28px rgba(0,229,160,0.4); transition:all 0.3s; order:99;
}
.bm-quick-toggle:hover { transform:scale(1.08); box-shadow:0 12px 36px rgba(0,229,160,0.55); }
.bm-quick-icon-close { display:none; }
.bm-quick-list { display:flex; flex-direction:column; gap:10px; align-items:center; pointer-events:none; opacity:0; transform:translateY(16px) scale(0.92); transition:all 0.3s cubic-bezier(0.34,1.56,0.64,1); }
.bm-open .bm-quick-list { pointer-events:all; opacity:1; transform:translateY(0) scale(1); }
.bm-open .bm-quick-icon-open { display:none; }
.bm-open .bm-quick-icon-close { display:block; }
.bm-quick-item {
  width:44px; height:44px; border-radius:50%;
  background:var(--bm-card); border:1px solid var(--bm-border);
  display:flex; align-items:center; justify-content:center; color:var(--bm-muted);
  text-decoration:none; cursor:pointer; position:relative;
  box-shadow:var(--bm-shadow); transition:all 0.25s;
}
.bm-quick-item:hover { background:rgba(0,229,160,0.1); border-color:rgba(0,229,160,0.5); color:var(--bm-green); transform:scale(1.1); }
.bm-quick-item::before {
  content:attr(data-label); position:absolute; right:calc(100% + 10px);
  background:var(--bm-dark3); border:1px solid var(--bm-border);
  color:var(--bm-text); padding:4px 12px; border-radius:8px;
  font-size:0.75rem; white-space:nowrap; opacity:0; pointer-events:none;
  transform:translateX(6px); transition:all 0.2s;
  font-family:'Noto Sans KR',sans-serif; box-shadow:var(--bm-shadow);
}
.bm-quick-item:hover::before { opacity:1; transform:translateX(0); }
.bm-quick-top { border-color:rgba(59,139,255,0.25); }
.bm-quick-top:hover { border-color:var(--bm-blue); color:var(--bm-blue); background:rgba(59,139,255,0.1); }
@media (max-width:768px) { .bm-quick-btns{right:14px;bottom:22px;} .bm-quick-item::before{display:none;} .bm-quick-toggle{width:48px;height:48px;} .bm-quick-item{width:40px;height:40px;} }

/********************************************************
■ Widget Title
********************************************************/
h3.h3 { padding:0; margin:0; font-weight:bold; }
hr.hr { display:block; position:relative; height:3px; border:none; line-height:1px; padding:0; margin:0; }
hr.hr::before { width:100%; height:1px; content:""; position:absolute; left:0; bottom:1px; background-color:var(--bm-border); }
hr.hr::after { width:4rem; height:3px; content:""; position:absolute; left:0; bottom:0; background:var(--bm-grad); }

/********************************************************
■ Bootstrap overrides — .wrapper 스코프 한정
  (테마 관리자 모달은 .wrapper 밖에 렌더링되므로 영향 없음)
********************************************************/
.tooltip .tooltip-inner { font-size:1rem !important; }
.custom-checkbox .custom-control-label::before, .custom-checkbox .custom-control-label::after,
.custom-radio .custom-control-label::before, .custom-radio .custom-control-label::after { top:0.15rem !important; width:1.4rem !important; height:1.4rem !important; }
.custom-checkbox .custom-control-label span, .custom-radio .custom-control-label span { cursor:pointer; padding-left:0.5rem !important; }
.custom-switch .custom-control-label::before, .custom-switch .custom-control-label::after { margin-top:2px; }
.btn-lg { padding:10px 16px; border-radius:8px; line-height:1.33; font-size:18px; }
.btn-lg i { top:3px; font-size:24px; position:relative; }
.col-form-label { font-weight:bold; color:#000}

/* 페이지네이션 — 사이트 본문용 */
.wrapper .page-link,
.wrapper .page-link:hover,
.wrapper .page-link:focus { color:var(--bm-green); }

.na-round, .view_image img, .pretty-embed img { border-radius:0.5rem !important; }
.is-square .na-round, .is-square .view_image img, .is-square .pretty-embed img,
.is-square .btn, .is-square .alert, .is-square .nav-link, .is-square .form-control,
.is-square .input-group-prepend, .is-square .input-group-append, .is-square .input-group-text,
.is-square .custom-file-label, .is-square .custom-file-label:after, .is-square .custom-select,
.is-square .label, .is-square .progress, .is-square .pagination li a,
.is-square .list-group-item { border-radius:0 !important; }

/* form-control, btn-primary, table — .wrapper 안에서만 적용 */
.wrapper .form-control { background:var(--bm-card) !important; border:1px solid var(--bm-border) !important; color:var(--bm-text) !important; border-radius:10px !important; }
.wrapper .form-control:focus { border-color:rgba(0,229,160,0.5) !important; box-shadow:0 0 0 3px rgba(0,229,160,0.1) !important; }
.wrapper .form-control::placeholder { color:var(--bm-muted2) !important; }

/* btn-primary: 테마 관리자 모달 헤더(.bg-primary)는 건드리지 않도록 .wrapper 스코프 */
.wrapper .btn-primary{background:var(--bm-grad) !important;border:none !important;color:#060D1A !important;font-weight:700 !important;border-radius:10px !important;transition:all 0.3s !important;box-shadow:0 6px 20px rgba(0,229,160,0.25) !important;}
.wrapper .btn-primary:hover{transform:translateY(-2px) !important;box-shadow:0 10px 30px rgba(0,229,160,0.4) !important;}

/* 관리자 폼 버튼/배경 전체 원복 */
#fsetup .btn-primary,#fmenutree .btn-primary,#nt_sidebar .btn-primary,#theme-controller .btn-primary,.btn-setup{background:#007bff !important;border:1px solid #0069d9 !important;color:#fff !important;font-weight:400 !important;border-radius:4px !important;box-shadow:none !important;transform:none !important;}
#fsetup .btn-primary:hover,#fmenutree .btn-primary:hover,#nt_sidebar .btn-primary:hover,#theme-controller .btn-primary:hover,.btn-setup:hover{background:#0069d9 !important;transform:none !important;box-shadow:none !important;}

/* list-group-item 원복 */
.wrapper .list-group-item{background-color:#fff !important;color:#000 !important;}
.wrapper .list-group-item.bg-primary{background-color:#007bff !important;color:#fff !important;}

/* 관리자 폼 안 form-control 원복 */
#fsetup .form-control,#fmenutree .form-control{background:#fff !important;border:1px solid #ced4da !important;color:#495057 !important;}
#fsetup .form-control::placeholder,#fmenutree .form-control::placeholder{color:#6c757d !important;}

.wrapper .table { color:var(--bm-text); }
.wrapper .table thead th { border-bottom-color:var(--bm-border); color:var(--bm-green); font-size:0.82rem; letter-spacing:1px; text-transform:uppercase; }
.wrapper .table td, .wrapper .table th { border-top-color:var(--bm-border); }
.wrapper .table-hover tbody tr:hover { background:rgba(0,229,160,0.04); }

.nt-body { background:var(--bm-dark); min-height:400px; }


#nt_body .list-group-item{background-color:#fff !important; color:#212529 !important;}
#fmenuform .col-form-label{background-color:#fff !important; color:#212529 !important;}
#fsetup .table th, #fsetup .table td{background-color:#fff !important; color:#212529 !important;}



#nt_sidebar_move{display: none !important;}

/* ============================================================
   메일주소 변경(register_email) 페이지 — 회원가입 톤 매칭
   ※ 코어(bbs) 미수정. 기존 마크업(.rg_em)에 CSS만 적용. 다른 폼 영향 없음
   ============================================================ */
.rg_em_p{ max-width:480px; margin:6px auto 16px; text-align:center; color:rgba(232,240,255,.6); font-size:.86rem; line-height:1.6; }
.tbl_frm01.rg_em{
  max-width:480px; margin:0 auto;
  background:#0F1D32; border:1px solid rgba(0,229,160,.15); border-radius:18px; overflow:hidden;
}
.tbl_frm01.rg_em::before{
  content:"\2709  메일인증 메일주소 변경";
  display:block; padding:18px 26px; border-bottom:1px solid rgba(0,229,160,.15);
  font-weight:700; color:#fff; font-size:1rem;
}
.tbl_frm01.rg_em table{ width:100%; border-collapse:collapse; }
.tbl_frm01.rg_em caption{ display:none; }
.tbl_frm01.rg_em table, .tbl_frm01.rg_em tbody{ display:block; padding:6px 26px 20px; }
.tbl_frm01.rg_em tr{ display:block; margin-top:16px; }
.tbl_frm01.rg_em th{ display:block; text-align:left; padding:0 0 6px; color:rgba(232,240,255,.6); font-size:.8rem; font-weight:600; }
.tbl_frm01.rg_em td{ display:block; padding:0; }
.tbl_frm01.rg_em .frm_input{
  width:100%; padding:12px 14px; background:#111E35; border:1px solid rgba(255,255,255,.08);
  border-radius:10px; color:#E8F0FF; font-size:.9rem; box-sizing:border-box; outline:none; transition:border-color .2s;
}
.tbl_frm01.rg_em .frm_input:focus{ border-color:rgba(0,229,160,.45); background:#0C1628; }
.tbl_frm01.rg_em td input:not(.frm_input){
  padding:9px 12px; background:#111E35; border:1px solid rgba(255,255,255,.08); border-radius:8px; color:#E8F0FF; vertical-align:middle;
}
.rg_em ~ .btn_confirm{ display:flex; gap:12px; max-width:480px; margin:18px auto 0; }
.rg_em ~ .btn_confirm .btn_submit{
  flex:1; order:2; padding:13px; border:0; border-radius:12px; cursor:pointer;
  background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF); color:#060D1A; font-weight:700; font-size:1rem;
  box-shadow:0 6px 20px rgba(0,229,160,.3); transition:all .3s;
}
.rg_em ~ .btn_confirm .btn_submit:hover{ transform:translateY(-2px); box-shadow:0 10px 28px rgba(0,229,160,.45); color:#fff; }
.rg_em ~ .btn_confirm .btn_cancel{
  flex:1; order:1; padding:13px; text-align:center; border:1px solid rgba(232,240,255,.2); border-radius:12px;
  color:#E8F0FF; text-decoration:none; font-weight:600; font-size:1rem; transition:all .3s;
}
.rg_em ~ .btn_confirm .btn_cancel:hover{ border-color:#00E5A0; color:#00E5A0; }

/* ============================================================
   내용관리 문서 공통 스타일 (약관/개인정보 등)
   내용관리 에디터에는 .bm-doc 클래스만 참조해서 작성하면 됨
   (에디터가 <style>은 지워도 class는 유지하므로 여기 공통 CSS 사용)
   ============================================================ */
.bm-doc{font-family:'Noto Sans KR',sans-serif;color:#E8F0FF;line-height:1.8;max-width:900px;margin:0 auto;}
.bm-doc .bm-doc-lead{color:rgba(232,240,255,.6);font-size:.95rem;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);}
.bm-doc h2,.bm-doc h3,.bm-doc h5{font-family:'Outfit','Noto Sans KR',sans-serif;font-size:1.22rem;font-weight:800;color:#fff;margin:34px 0 14px;padding-left:14px;position:relative;}
.bm-doc h2::before,.bm-doc h3::before,.bm-doc h5::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:20px;border-radius:3px;background:linear-gradient(180deg,#00E5A0,#3B8BFF);}
.bm-doc p,.bm-doc li{color:rgba(232,240,255,.82);font-size:.94rem;}
.bm-doc ul,.bm-doc ol{padding-left:20px;margin:10px 0;}
.bm-doc li{margin:6px 0;}
.bm-doc strong,.bm-doc b{color:#00E5A0;}
.bm-doc a{color:#7fe9c6;}
.bm-doc table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.9rem;}
.bm-doc th{background:rgba(0,229,160,.08);color:#00E5A0;font-weight:700;padding:10px 14px;border:1px solid rgba(255,255,255,.1);text-align:left;}
.bm-doc td{padding:10px 14px;border:1px solid rgba(255,255,255,.07);color:rgba(232,240,255,.8);vertical-align:top;}
.bm-doc .bm-doc-box{background:rgba(0,229,160,.05);border:1px solid rgba(0,229,160,.2);border-radius:12px;padding:18px 22px;margin:16px 0;}
.bm-doc .bm-doc-date{color:rgba(232,240,255,.5);font-size:.86rem;margin-top:24px;}


/* ============================================================
   BuzzMaker 쇼핑몰 다크 UI — 통합 단일본 (중복 제거 · 전면 재작성)
   범위: 공통/리스트/상세/탭/후기/문의/장바구니/주문서/주문내역
   스코프: .bm-shop-wrap | 강조색 #00E5A0 | 카드 #0F1D32 | 입력 #111E35
   ============================================================ */

/* ── 1. 공통: 래퍼 / 텍스트 / 링크 ── */
.bm-shop-wrap{ max-width:1500px; margin:0 auto; color:#E8F0FF; }
.bm-shop-wrap img{ max-width:100%; height:auto; }
.bm-shop-wrap p, .bm-shop-wrap li, .bm-shop-wrap dt, .bm-shop-wrap dd, .bm-shop-wrap span, .bm-shop-wrap label, .bm-shop-wrap strong, .bm-shop-wrap td, .bm-shop-wrap th, .bm-shop-wrap h1, .bm-shop-wrap h2, .bm-shop-wrap h3, .bm-shop-wrap h4{ color:#E8F0FF; }
.bm-shop-wrap a{ color:#aee9d6; text-decoration:none; }
.bm-shop-wrap a:hover{ color:#00E5A0; }
.bm-shop-wrap .main_visual, .bm-shop-wrap .mainbanner, .bm-shop-wrap .smainbanner{ margin-bottom:30px; border-radius:16px; overflow:hidden; }

/* ── 2. 흰 배경 일괄 제거 (다크 강제) ── */
.bm-shop-wrap div, .bm-shop-wrap section, .bm-shop-wrap article, .bm-shop-wrap aside,
.bm-shop-wrap ul, .bm-shop-wrap ol, .bm-shop-wrap li, .bm-shop-wrap dl, .bm-shop-wrap dt, .bm-shop-wrap dd,
.bm-shop-wrap table, .bm-shop-wrap thead, .bm-shop-wrap tbody, .bm-shop-wrap tr, .bm-shop-wrap td,
.bm-shop-wrap form, .bm-shop-wrap fieldset, .bm-shop-wrap caption{ background-color:transparent !important; }

/* ── 3. 입력칸 (공통) ── */
.bm-shop-wrap input[type=text], .bm-shop-wrap input[type=password], .bm-shop-wrap input[type=tel], .bm-shop-wrap input[type=email], .bm-shop-wrap input[type=number], .bm-shop-wrap select, .bm-shop-wrap textarea, .bm-shop-wrap .frm_input, .bm-shop-wrap .sit_ov_input, .bm-shop-wrap .num_input{ background-color:#111E35 !important; border:1px solid rgba(255,255,255,.16) !important; color:#E8F0FF !important; border-radius:8px; }

/* ── 4. 빈 상태 ── */
.bm-shop-wrap .sct_noitem, .bm-shop-wrap .bm-plist-empty, .bm-shop-wrap .bm-review-empty, .bm-shop-wrap .bm-qa-empty, .bm-shop-wrap .bm-cart-empty{ list-style:none; margin:0; padding:54px 20px; text-align:center; color:rgba(232,240,255,.4); background:rgba(255,255,255,.02); border:1px dashed rgba(255,255,255,.1); border-radius:14px; }
.bm-shop-wrap .sit_empty{ color:rgba(232,240,255,.4) !important; text-align:center; padding:40px 0; }

/* ── 5. breadcrumb (#sct_location 카테고리 경로) — buzz의 position:absolute(우상단 박힘) 제거하고 좌상단 정상배치 ── */
.bm-shop-wrap #sct_location{ position:static !important; float:none !important; right:auto !important; top:auto !important; left:auto !important; width:auto !important; display:flex !important; align-items:center; flex-wrap:wrap; gap:8px; padding:0 2px !important; margin:0 0 16px !important; font-size:.9rem; color:rgba(232,240,255,.5) !important; }
.bm-shop-wrap #sct_location .go_home{ display:inline-flex !important; align-items:center; padding:0 !important; margin:0 !important; line-height:1 !important; color:rgba(232,240,255,.7) !important; font-size:1.05rem; }
.bm-shop-wrap #sct_location .go_home:hover{ color:#00E5A0 !important; }
.bm-shop-wrap #sct_location i.dividing-line{ display:inline-flex !important; align-items:center; margin:0 !important; line-height:1 !important; color:rgba(232,240,255,.28) !important; }
.bm-shop-wrap #sct_location .shop_select_to_html{ display:inline-flex !important; align-items:center; position:relative; }
.bm-shop-wrap .shop_select_to_html .category_title{ gap:5px; font-weight:600; }
.bm-shop-wrap .shop_select_to_html .category_title, .bm-shop-wrap .shop_select_to_html .category_title i{ display:inline-flex; align-items:center; padding:0 !important; line-height:1 !important; color:#E8F0FF !important; }
.bm-shop-wrap .shop_select_to_html .menulist{ background:#0F1D32 !important; opacity:1 !important; border-radius:10px !important; box-shadow:0 12px 36px rgba(0,0,0,.6), 0 0 0 1px rgba(0,229,160,.18) !important; }
.bm-shop-wrap .shop_select_to_html .menulist ul, .bm-shop-wrap .shop_select_to_html .menulist li, .bm-shop-wrap .shop_select_to_html .option{ background:#0F1D32 !important; min-height:0 !important; }
.bm-shop-wrap .shop_select_to_html ul.left-border{ border-left-color:rgba(255,255,255,.12) !important; }
.bm-shop-wrap .shop_select_to_html .option a{ color:#E8F0FF !important; background:transparent !important; }
.bm-shop-wrap .shop_select_to_html .option.selected a{ color:#00E5A0 !important; }
.bm-shop-wrap .shop_select_to_html .option:hover{ background:rgba(0,229,160,.12) !important; }

/* ── 6. 리스트 정렬 툴바 (#sct_sortlst) — 보기전환 토글 제거, 정렬 pill만 ── */
.bm-shop-wrap #sct_sortlst{ display:flex; align-items:center; gap:12px; float:none; background:#0F1D32 !important; border:1px solid rgba(0,229,160,.12) !important; border-radius:14px; padding:6px 10px; margin:0 0 24px; }
.bm-shop-wrap #sct_sortlst:after{ content:none !important; }
.bm-shop-wrap #sct_sortlst ul{ display:flex; flex-wrap:wrap; align-items:center; gap:3px; margin:0; padding:0; list-style:none; }
.bm-shop-wrap #sct_sortlst li{ float:none !important; height:auto !important; padding:0 !important; margin:0 !important; list-style:none; border:0 !important; }
.bm-shop-wrap #sct_sort{ float:none !important; width:auto !important; }
.bm-shop-wrap #sct_sort h2{ display:none; }
.bm-shop-wrap #sct_sort li a{ display:block; padding:9px 16px; border:0 !important; color:rgba(232,240,255,.55) !important; font-size:.9rem; border-radius:9px; transition:color .15s, background .15s; }
.bm-shop-wrap #sct_sort li a:hover{ color:#fff !important; background:rgba(255,255,255,.06); }
/* 보기전환 토글 제거됨 — 잔여 마크업 숨김(안전망) */
.bm-shop-wrap #sct_lst, .bm-shop-wrap .sct_lst_view{ display:none !important; }

/* ── 7. 섹션 제목 (메인 진열) ── */
.bm-shop-wrap .sct_wrap{ margin:44px 0; }
.bm-shop-wrap .sct_wrap > header{ margin:0 0 20px; }
.bm-shop-wrap .sct_wrap h2{ position:relative; font-family:var(--f-head); font-size:1.5rem; font-weight:800; color:#fff; padding-left:15px; margin:0; }
.bm-shop-wrap .sct_wrap h2::before{ content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:5px; height:22px; border-radius:3px; background:linear-gradient(180deg,#00E5A0,#3B8BFF); }
.bm-shop-wrap .sct_wrap h2 a{ color:#fff; }
.bm-shop-wrap .sct_wrap h2 a:hover{ color:#00E5A0; }

/* ── 8. 상품 카드 (bm-pcard : list.10 / main.10) ── */
.bm-shop-wrap .bm-plist{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; list-style:none; padding:0; margin:0 0 30px; width:100%; }
.bm-shop-wrap .bm-pcard{ position:relative; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:16px; overflow:hidden; transition:transform .25s,border-color .25s,box-shadow .25s; }
.bm-shop-wrap .bm-pcard:hover{ transform:translateY(-6px); border-color:rgba(0,229,160,.4); box-shadow:0 16px 40px rgba(0,0,0,.5); }
.bm-shop-wrap .bm-pcard-thumb{ position:relative; display:block; aspect-ratio:3/2; overflow:hidden; background:#fff; }
.bm-shop-wrap .bm-pcard-thumb a{ display:block; width:100%; height:100%; }
.bm-shop-wrap .bm-pcard-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.bm-shop-wrap .bm-pcard:hover .bm-pcard-thumb img{ transform:scale(1.07); }
.bm-shop-wrap .bm-pcard-sold{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(6,13,26,.62); }
.bm-shop-wrap .bm-pcard-sold span{ color:#fff; font-weight:700; letter-spacing:1px; border:1px solid rgba(255,255,255,.5); padding:6px 14px; border-radius:6px; }
.bm-shop-wrap .bm-pcard-cart{ position:absolute; right:12px; bottom:12px; width:44px; height:44px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF); color:#060D1A; border:0; border-radius:12px; font-size:16px; cursor:pointer; opacity:0; transform:translateY(10px); transition:all .25s; box-shadow:0 6px 18px rgba(0,229,160,.4); z-index:2; }
.bm-shop-wrap .bm-pcard:hover .bm-pcard-cart{ opacity:1; transform:translateY(0); }
.bm-shop-wrap .bm-pcard-info{ position:relative; padding:16px 16px 18px; }
.bm-shop-wrap .bm-pcard-star{ margin-bottom:6px; }
.bm-shop-wrap .bm-pcard-name{ display:block; color:#E8F0FF; font-size:.95rem; line-height:1.45; margin-bottom:6px; }
.bm-shop-wrap .bm-pcard:hover .bm-pcard-name{ color:#fff; }
.bm-shop-wrap .bm-pcard-desc{ color:rgba(232,240,255,.45); font-size:.82rem; margin-bottom:8px; }
.bm-shop-wrap .bm-pcard-price{ color:#00E5A0; font-family:var(--f-head); font-weight:800; font-size:1.15rem; }
.bm-shop-wrap .bm-pcard-cost{ color:rgba(232,240,255,.35); font-weight:400; font-size:.82rem; text-decoration:line-through; margin-right:6px; }
.bm-shop-wrap .bm-pcard-wish{ position:absolute; right:14px; top:16px; width:34px; height:34px; background:transparent; border:1px solid rgba(255,255,255,.15); border-radius:50%; color:rgba(232,240,255,.5); cursor:pointer; transition:all .2s; }
.bm-shop-wrap .bm-pcard-wish:hover{ border-color:#ff6b8b; color:#ff6b8b; }
.bm-shop-wrap .bm-pcard .cart-layer{ position:absolute; left:0; right:0; bottom:0; z-index:3; }

/* ── 9. 레거시 리스트 카드 (.sct_li : buzz 외 스킨 폴백) ── */
.bm-shop-wrap ul.smt{ display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:18px; list-style:none; padding:0; margin:0; }
.bm-shop-wrap ul.smt.owl-loaded{ display:block; }
.bm-shop-wrap .sct_li{ background-color:#0F1D32 !important; border:1px solid rgba(0,229,160,.12); border-radius:14px; overflow:hidden; }
.bm-shop-wrap .sct_img{ position:relative; aspect-ratio:1/1; overflow:hidden; background:#fff; }
.bm-shop-wrap .sct_img img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap .sct_txt, .bm-shop-wrap .sct_txt a{ color:#E8F0FF; }
.bm-shop-wrap .sct_cost{ color:#00E5A0; font-weight:800; }
.bm-shop-wrap .shop_icon_soldout .soldout_txt{ background:rgba(0,0,0,.72); color:#fff; }
.bm-shop-wrap .owl-nav button.owl-prev, .bm-shop-wrap .owl-nav button.owl-next{ background:rgba(15,29,50,.92)!important; color:#fff!important; border:1px solid rgba(0,229,160,.3)!important; border-radius:50%!important; width:42px; height:42px; }
.bm-shop-wrap .owl-dots .owl-dot.active span{ background:#00E5A0!important; }

/* ── 10. 상품상세: 레이아웃 (bm-detail) ── */
.bm-shop-wrap #sit_ov_from{ background-color:#0F1D32 !important; border:1px solid rgba(0,229,160,.12) !important; border-radius:18px; padding:34px; }
.bm-shop-wrap .bm-detail{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:start; }
.bm-shop-wrap .bm-detail-gallery{ position:sticky; top:90px; }
.bm-shop-wrap .bm-detail-buy{ min-width:0; }
.bm-shop-wrap #sit_ov{ float:none !important; width:100% !important; min-height:0 !important; height:auto !important; padding-bottom:0; background:transparent !important; }

/* 갤러리: 화이트 제품 스테이지 */
.bm-shop-wrap #sit_pvi{ float:none; width:100%; }
.bm-shop-wrap #sit_pvi_big{ float:none; background-color:#fff !important; border:0 !important; border-radius:16px; padding:0px !important; min-height:400px; display:flex; align-items:center; justify-content:center; position:relative; box-shadow:0 24px 60px rgba(0,0,0,.45); overflow:hidden; }
.bm-shop-wrap #sit_pvi_big a.visible{ display:flex; align-items:center; justify-content:center; width:100%; }
.bm-shop-wrap #sit_pvi_big img, .bm-shop-wrap #sit_pvi_nwbig img{ width:auto !important; max-width:100%; max-height:480px; height:auto; border-radius:6px; }
.bm-shop-wrap #sit_pvi_nwbig{ background-color:#fff !important; border-radius:16px; }
.bm-shop-wrap #sit_pvi_big #popup_item_image{ display:flex !important; align-items:center; justify-content:center; position:absolute; right:14px; bottom:14px; width:44px; height:44px; background:rgba(6,13,26,.78) !important; color:#fff !important; border:0 !important; border-radius:10px; font-size:1.1em; }
.bm-shop-wrap #sit_pvi_thumb{ float:none; display:flex; flex-wrap:wrap; gap:10px; margin:14px 0 0; padding:0; list-style:none; }
.bm-shop-wrap #sit_pvi_thumb li{ margin:0 !important; }
.bm-shop-wrap #sit_pvi_thumb img{ width:64px; height:64px; object-fit:cover; border:1px solid rgba(255,255,255,.14) !important; border-radius:8px; background:#fff; cursor:pointer; transition:border-color .2s; }
.bm-shop-wrap #sit_pvi_thumb img:hover{ border-color:#00E5A0 !important; }

/* 구매패널 */
.bm-shop-wrap #sit_title{ font-family:var(--f-head); font-size:1.9rem; font-weight:800; line-height:1.3; margin:0 0 10px; color:#fff !important; }
.bm-shop-wrap #sit_desc{ color:rgba(232,240,255,.55) !important; margin:0 0 16px; }
.bm-shop-wrap #sit_star_sns, .bm-shop-wrap #sit_star_sns span{ color:rgba(232,240,255,.6) !important; }
.bm-shop-wrap .bm-buy-meta{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:0 0 18px; margin:0 0 18px; border-bottom:1px solid rgba(255,255,255,.08); }
.bm-shop-wrap .bm-buy-review{ color:rgba(232,240,255,.55); font-size:.88rem; }
.bm-shop-wrap #sit_btn_opt{ margin-left:auto; display:flex; gap:8px; position:relative; }
.bm-shop-wrap #sit_btn_opt #btn_wish, .bm-shop-wrap #sit_btn_opt .btn_sns_share{ width:42px !important; height:42px !important; display:inline-flex !important; align-items:center; justify-content:center; padding:0 !important; background:#111E35 !important; border:1px solid rgba(255,255,255,.14) !important; border-radius:10px; color:rgba(232,240,255,.7) !important; cursor:pointer; }
.bm-shop-wrap #sit_btn_opt #btn_wish i, .bm-shop-wrap #sit_btn_opt .btn_sns_share i{ font-size:16px !important; line-height:1 !important; font-weight:400 !important; }
.bm-shop-wrap #sit_btn_opt #btn_wish:hover, .bm-shop-wrap #sit_btn_opt .btn_sns_share:hover{ border-color:#00E5A0 !important; color:#00E5A0 !important; }
.bm-shop-wrap #btn_wish .btn_wish_num{ display:none !important; }
.bm-shop-wrap .bm-buy-info{ margin:0 0 22px; }
.bm-shop-wrap .sit_info{ border:0 !important; padding:0 !important; margin:0 0 18px !important; }
.bm-shop-wrap .sit_ov_tbl{ width:100%; border-collapse:collapse; }
.bm-shop-wrap .sit_ov_tbl th{ width:110px; text-align:left; padding:9px 0; color:rgba(232,240,255,.5) !important; font-weight:500; background:transparent !important; border:0 !important; vertical-align:top; }
.bm-shop-wrap .sit_ov_tbl td{ padding:9px 0; border:0 !important; background:transparent !important; color:#E8F0FF !important; }
.bm-shop-wrap .tr_price th{ vertical-align:middle; }
.bm-shop-wrap .tr_price td strong{ font-family:var(--f-head); font-size:1.7rem; font-weight:800; color:#00E5A0 !important; }
.bm-shop-wrap .bm-cust-price{ color:rgba(232,240,255,.4) !important; text-decoration:line-through; }
.bm-shop-wrap .sit_opt_subj, .bm-shop-wrap .sit_opt_prc, .bm-shop-wrap .sit_opt_added, .bm-shop-wrap .sit_opt_list{ color:#E8F0FF !important; }
.bm-shop-wrap .sit_option, .bm-shop-wrap #sit_sel_option{ margin:16px 0; }
.bm-shop-wrap .sit_option h3, .bm-shop-wrap #sit_sel_option h3{ font-size:.9rem; color:rgba(232,240,255,.6); margin:0 0 8px; }
.bm-shop-wrap #sit_ov_soldout{ background:rgba(226,75,74,.12) !important; color:#ff8b8b !important; }
.bm-shop-wrap #sit_tot_price{ display:flex; align-items:baseline; gap:4px; margin:18px 0; padding:18px 20px; background:rgba(0,229,160,.07); border:1px solid rgba(0,229,160,.2); border-radius:14px; color:#E8F0FF !important; }
.bm-shop-wrap #sit_tot_price strong{ margin-left:auto; font-family:var(--f-head); font-size:1.6rem; color:#00E5A0 !important; }
.bm-shop-wrap .bm-buy-btns{ display:flex; gap:10px; margin-top:8px; }
.bm-shop-wrap .bm-buy-btns .sit_btn_cart, .bm-shop-wrap .bm-buy-btns .sit_btn_buy{ flex:1; display:flex !important; align-items:center; justify-content:center; height:auto !important; min-height:56px; margin:0 !important; padding:0 16px !important; line-height:1 !important; font-size:1.02rem; font-weight:700; border-radius:12px; cursor:pointer; }
.bm-shop-wrap .bm-buy-btns .sit_btn_wish{ width:56px !important; height:auto !important; min-height:56px; margin:0 !important; display:flex !important; align-items:center; justify-content:center; line-height:1 !important; border-radius:12px; }
.bm-shop-wrap #sit_ov_btn button{ float:none; }
.bm-shop-wrap #sit_siblings{ margin-top:30px; }

/* ── 11. 상품상세: 탭 (#sit_tab) ── */
.bm-shop-wrap #sit_buy{ display:none !important; }
.bm-shop-wrap #sit_info{ display:block !important; background:transparent !important; border:0 !important; border-radius:0 !important; overflow:visible; min-height:0 !important; margin-top:30px; }
.bm-shop-wrap #sit_tab{ display:block !important; width:100% !important; background:transparent !important; }
.bm-shop-wrap #sit_tab .tab_tit{ display:flex; flex-wrap:wrap; padding:0 !important; border-bottom:1px solid rgba(255,255,255,.1) !important; }
.bm-shop-wrap #sit_tab .tab_tit li{ float:none !important; display:block; }
.bm-shop-wrap #sit_tab .tab_tit li button{ display:inline-flex; align-items:center; gap:7px; width:auto !important; padding:16px 22px !important; line-height:1.2 !important; font-size:1rem !important; color:rgba(232,240,255,.55) !important; background:transparent !important; border:0 !important; cursor:pointer; }
.bm-shop-wrap #sit_tab .tab_tit li button.selected{ color:#00E5A0 !important; border-bottom:2px solid #00E5A0 !important; }
.bm-shop-wrap #sit_tab .item_use_count, .bm-shop-wrap #sit_tab .item_qa_count{ background:rgba(0,229,160,.15) !important; color:#00E5A0 !important; }
.bm-shop-wrap #sit_tab .tab_con{ background:transparent !important; padding:24px 0 0 !important; }
.bm-shop-wrap #sit_tab .tab_con > li{ background:transparent !important; }
.bm-shop-wrap .contents_tit, .bm-shop-wrap #sit_inf h3, .bm-shop-wrap #sit_use h2, .bm-shop-wrap #sit_use h3, .bm-shop-wrap #sit_qa h2, .bm-shop-wrap #sit_qa h3, .bm-shop-wrap #sit_dex h2, .bm-shop-wrap #sit_dex h3{ color:#fff !important; }
.bm-shop-wrap #sit_inf_open{ width:100%; border:0 !important; border-collapse:collapse; }
.bm-shop-wrap #sit_inf_open th{ width:220px; background:transparent !important; color:rgba(232,240,255,.6) !important; font-weight:500 !important; border-bottom:1px solid rgba(255,255,255,.07) !important; padding:14px 12px !important; vertical-align:middle; text-align:left; }
.bm-shop-wrap #sit_inf_open td{ background:transparent !important; color:#E8F0FF !important; border-bottom:1px solid rgba(255,255,255,.07) !important; padding:14px 12px !important; vertical-align:middle; }
.bm-shop-wrap #sit_inf_open tr:last-child th, .bm-shop-wrap #sit_inf_open tr:last-child td{ border-bottom:0 !important; }
.bm-shop-wrap #sit_rel{ background-color:#0F1D32 !important; border:1px solid rgba(0,229,160,.12) !important; border-radius:14px; overflow:hidden; padding:24px; margin-top:30px; }
.bm-shop-wrap #sit_rel > h2{ font-family:var(--f-head); color:#fff; margin:0 0 16px; }

/* ── 12. 후기 (bm-review) ── */
.bm-shop-wrap .bm-review-bar, .bm-shop-wrap .bm-qa-bar{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px 18px; margin:0 0 18px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:12px; }
.bm-shop-wrap .bm-review-score{ display:flex; align-items:center; gap:10px; }
.bm-shop-wrap .bm-review-stars{ height:18px; }
.bm-shop-wrap .bm-review-count, .bm-shop-wrap .bm-qa-lead{ color:rgba(232,240,255,.7); font-size:.92rem; }
.bm-shop-wrap .bm-review-count strong{ color:#00E5A0; }
.bm-shop-wrap .bm-review-actions, .bm-shop-wrap .bm-qa-actions{ display:flex; gap:8px; }
.bm-shop-wrap .bm-review-actions a, .bm-shop-wrap .bm-qa-actions a{ display:inline-flex; align-items:center; padding:9px 16px; border-radius:9px; font-size:.9rem; font-weight:600; }
.bm-shop-wrap .bm-review-actions .itemuse_form, .bm-shop-wrap .bm-qa-actions .itemqa_form{ background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF); color:#060D1A; }
.bm-shop-wrap .bm-review-actions .itemuse_list, .bm-shop-wrap .bm-qa-actions #itemqa_list{ background:#111E35; border:1px solid rgba(255,255,255,.18); color:#E8F0FF; }
.bm-shop-wrap .bm-review-list, .bm-shop-wrap .bm-qa-list{ list-style:none; margin:0; padding:0; }
.bm-shop-wrap .bm-review-item, .bm-shop-wrap .bm-qa-item{ border:1px solid rgba(255,255,255,.08); border-radius:12px; margin:0 0 10px; overflow:hidden; background:rgba(255,255,255,.02); }
.bm-shop-wrap .bm-review-itop{ display:flex; align-items:center; gap:14px; padding:14px 16px; }
.bm-shop-wrap .bm-review-thumb img{ width:60px; height:60px; object-fit:cover; border-radius:8px; }
.bm-shop-wrap .bm-review-meta{ flex:1; min-width:0; }
.bm-shop-wrap .bm-review-istar{ height:15px; margin-bottom:5px; }
.bm-shop-wrap .bm-review-subj{ color:#fff; font-weight:600; margin-bottom:3px; }
.bm-shop-wrap .bm-review-by{ color:rgba(232,240,255,.45); font-size:.82rem; }
.bm-shop-wrap .bm-review-date{ margin-left:8px; }
.bm-shop-wrap .bm-review-toggle{ background:transparent; border:1px solid rgba(255,255,255,.18); color:rgba(232,240,255,.7); border-radius:8px; padding:8px 12px; white-space:nowrap; cursor:pointer; }
.bm-shop-wrap .bm-review-body{ display:none; padding:0 16px 16px; border-top:1px solid rgba(255,255,255,.06); }
.bm-shop-wrap .bm-review-body .sit_use_p{ padding:14px 0; color:rgba(232,240,255,.85); line-height:1.6; }
.bm-shop-wrap .bm-review-cmd, .bm-shop-wrap .bm-qa-cmd{ display:flex; gap:6px; margin-top:10px; }
.bm-shop-wrap .bm-review-cmd a, .bm-shop-wrap .bm-qa-cmd a{ padding:6px 12px; background:#111E35; border:1px solid rgba(255,255,255,.18); border-radius:7px; color:#E8F0FF; font-size:.82rem; }
.bm-shop-wrap .bm-review-reply{ margin-top:12px; padding:14px; background:rgba(0,229,160,.05); border-left:2px solid #00E5A0; border-radius:8px; }
.bm-shop-wrap .bm-review-reply-tag{ display:inline-block; padding:2px 8px; background:#00E5A0; color:#060D1A; border-radius:5px; font-size:.75rem; font-weight:700; margin-right:8px; }
.bm-shop-wrap .bm-review-reply-name{ color:rgba(232,240,255,.5); font-size:.82rem; margin-left:6px; }
.bm-shop-wrap .bm-review-reply-p{ margin-top:8px; color:rgba(232,240,255,.8); }

/* ── 13. 문의 (bm-qa) ── */
.bm-shop-wrap .bm-qa-toggle{ display:flex; align-items:center; gap:12px; width:100%; padding:15px 16px; background:transparent; border:0; color:#E8F0FF; text-align:left; cursor:pointer; }
.bm-shop-wrap .bm-qa-status{ flex-shrink:0; padding:4px 10px; border-radius:6px; font-size:.78rem; font-weight:700; }
.bm-shop-wrap .bm-qa-status.bm-qa-done{ background:rgba(0,229,160,.15); color:#00E5A0; }
.bm-shop-wrap .bm-qa-status.bm-qa-yet{ background:rgba(255,255,255,.08); color:rgba(232,240,255,.5); }
.bm-shop-wrap .bm-qa-subj{ flex:1; min-width:0; color:#fff; font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bm-shop-wrap .bm-qa-by{ flex-shrink:0; color:rgba(232,240,255,.4); font-size:.82rem; }
.bm-shop-wrap .bm-qa-caret{ color:rgba(232,240,255,.4); }
.bm-shop-wrap .bm-qa-body{ display:none; padding:16px; border-top:1px solid rgba(255,255,255,.06); }
.bm-shop-wrap .bm-qa-q, .bm-shop-wrap .bm-qa-a{ display:flex; gap:12px; padding:10px 0; }
.bm-shop-wrap .bm-qa-q .qa_alp{ color:#3B8BFF; font-weight:800; font-size:1.1rem; flex-shrink:0; width:20px; text-align:center; }
.bm-shop-wrap .bm-qa-a{ background:rgba(0,229,160,.05); border-radius:8px; padding:12px; margin-top:4px; }
.bm-shop-wrap .bm-qa-a .qa_alp{ color:#00E5A0; font-weight:800; font-size:1.1rem; flex-shrink:0; width:20px; text-align:center; }
.bm-shop-wrap .bm-qa-txt{ color:rgba(232,240,255,.85); line-height:1.6; }

/* ── 14. 장바구니 (bm-cart) ── */
.bm-shop-wrap .bm-cart{ max-width:880px; margin:0 auto; }
.bm-shop-wrap .bm-cart-allchk{ display:flex; align-items:center; gap:8px; padding:0 4px 14px; color:rgba(232,240,255,.7); }
.bm-shop-wrap .bm-cart-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.bm-shop-wrap .bm-cart-item{ display:flex; align-items:center; gap:16px; padding:16px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; }
.bm-shop-wrap .bm-cart-chk{ flex-shrink:0; }
.bm-shop-wrap .bm-cart-thumb{ flex-shrink:0; width:84px; height:84px; border-radius:10px; overflow:hidden; background:#fff; display:block; }
.bm-shop-wrap .bm-cart-thumb img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap .bm-cart-info{ flex:1; min-width:0; }
.bm-shop-wrap .bm-cart-name{ display:block; color:#fff; font-weight:600; margin-bottom:4px; }
.bm-shop-wrap .bm-cart-opt{ color:rgba(232,240,255,.5); font-size:.84rem; margin-bottom:6px; }
.bm-shop-wrap .bm-cart-meta{ display:flex; gap:14px; color:rgba(232,240,255,.55); font-size:.85rem; }
.bm-shop-wrap .sod_option_btn{ margin:6px 0; }
.bm-shop-wrap .mod_options{ padding:6px 12px; background:#111E35; border:1px solid rgba(255,255,255,.16); border-radius:7px; color:#E8F0FF; font-size:.82rem; cursor:pointer; }
.bm-shop-wrap .bm-cart-price{ flex-shrink:0; text-align:right; min-width:110px; }
.bm-shop-wrap .bm-cart-price .total_prc{ color:#00E5A0; font-family:var(--f-head); font-weight:800; font-size:1.25rem; }
.bm-shop-wrap .bm-cart-price em{ color:rgba(232,240,255,.6); font-style:normal; margin-left:3px; }
.bm-shop-wrap .bm-cart-tools{ display:flex; gap:8px; margin:14px 0; }
.bm-shop-wrap .bm-cart-tools button{ padding:9px 16px; background:#111E35; border:1px solid rgba(255,255,255,.16); border-radius:9px; color:rgba(232,240,255,.8); cursor:pointer; font-size:.88rem; }
.bm-shop-wrap .bm-cart-summary{ margin:18px 0; padding:20px 22px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; }
.bm-shop-wrap .bm-cart-srow{ display:flex; align-items:baseline; padding:7px 0; color:rgba(232,240,255,.7); }
.bm-shop-wrap .bm-cart-srow span{ margin-right:auto; }
.bm-shop-wrap .bm-cart-srow strong{ color:#E8F0FF; font-weight:600; }
.bm-shop-wrap .bm-cart-srow em{ font-style:normal; color:rgba(232,240,255,.6); margin-left:4px; min-width:18px; text-align:right; }
.bm-shop-wrap .bm-cart-total{ margin-top:8px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); }
.bm-shop-wrap .bm-cart-total span{ color:#fff; font-size:1.05rem; }
.bm-shop-wrap .bm-cart-total strong{ font-family:var(--f-head); font-size:1.6rem; font-weight:800; color:#00E5A0; }
.bm-shop-wrap .bm-cart-actions{ display:flex; gap:10px; justify-content:flex-end; align-items:center; margin-top:18px; }
.bm-shop-wrap .bm-cart-cont{ padding:15px 24px; background:#111E35; border:1px solid rgba(255,255,255,.18); border-radius:12px; color:#E8F0FF; }
.bm-shop-wrap .bm-cart-buy{ padding:15px 40px; background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF); border:0; border-radius:12px; color:#060D1A; font-weight:800; font-size:1.05rem; cursor:pointer; }

/* ── 15. 주문서 체크아웃 (#sod_*) ── */
.bm-shop-wrap #sod_frm{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:24px; align-items:start; }
.bm-shop-wrap #sod_frm > .od_prd_list{ grid-column:1 / -1; }
.bm-shop-wrap .sod_left{ grid-column:1; display:flex; flex-direction:column; gap:24px; min-width:0; }
.bm-shop-wrap .sod_right{ grid-column:2; position:sticky; top:90px; display:flex; flex-direction:column; gap:18px; }
.bm-shop-wrap .od_prd_list, .bm-shop-wrap #sod_frm_orderer, .bm-shop-wrap #sod_frm_taker, .bm-shop-wrap #sod_bsk_tot, .bm-shop-wrap #sod_frm_pay{ background:#0F1D32 !important; border:1px solid rgba(0,229,160,.12) !important; border-radius:16px; padding:24px; }
.bm-shop-wrap #sod_frm h2{ font-family:var(--f-head); font-size:1.15rem; font-weight:800; color:#fff !important; margin:0 0 16px; padding:0 0 12px; border-bottom:1px solid rgba(255,255,255,.08); }
.bm-shop-wrap .od_prd_list{ padding:6px 24px; }
.bm-shop-wrap #sod_list{ width:100%; border-collapse:collapse; }
.bm-shop-wrap #sod_list thead th{ padding:14px 10px; font-size:.82rem; color:rgba(232,240,255,.5) !important; font-weight:500; text-align:center; background:transparent !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.1) !important; }
.bm-shop-wrap #sod_list tbody td{ padding:18px 10px; text-align:center; background:transparent !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; color:#E8F0FF !important; vertical-align:middle; }
.bm-shop-wrap #sod_list .td_prd{ text-align:left; display:flex; align-items:center; gap:14px; }
.bm-shop-wrap #sod_list .sod_img img{ width:64px; height:64px; object-fit:cover; border-radius:10px; background:#fff; }
.bm-shop-wrap #sod_list .sod_name b{ color:#fff; font-weight:600; }
.bm-shop-wrap #sod_list .sod_opt{ color:rgba(232,240,255,.5); font-size:.82rem; margin-top:4px; }
.bm-shop-wrap #sod_list .total_price{ color:#00E5A0; font-weight:700; }
.bm-shop-wrap #sod_list .td_dvr{ color:rgba(232,240,255,.7); }
.bm-shop-wrap #sod_frm_orderer table, .bm-shop-wrap #sod_frm_taker table{ width:100%; border-collapse:collapse; }
.bm-shop-wrap #sod_frm_orderer th, .bm-shop-wrap #sod_frm_taker th{ width:96px; white-space:nowrap; text-align:left; vertical-align:top; padding:13px 14px 13px 0; color:rgba(232,240,255,.6) !important; font-weight:500; font-size:.9rem; background:transparent !important; border:0 !important; }
.bm-shop-wrap #sod_frm_orderer td, .bm-shop-wrap #sod_frm_taker td{ padding:9px 0; background:transparent !important; border:0 !important; }
.bm-shop-wrap #sod_frm .frm_input{ width:100%; max-width:360px; padding:11px 14px; }
.bm-shop-wrap #sod_frm #od_zip, .bm-shop-wrap #sod_frm #od_b_zip{ max-width:140px; display:inline-block; vertical-align:middle; margin-right:6px; }
.bm-shop-wrap #sod_frm textarea{ width:100%; min-height:84px; padding:11px 14px; resize:vertical; }
.bm-shop-wrap #sod_frm .btn_frmline, .bm-shop-wrap #sod_frm .btn_address{ display:inline-block; padding:11px 16px; background:#111E35 !important; border:1px solid rgba(0,229,160,.4) !important; border-radius:9px; color:#E8F0FF !important; cursor:pointer; white-space:nowrap; font-size:.9rem; vertical-align:middle; }
.bm-shop-wrap #sod_frm .btn_address:hover, .bm-shop-wrap #sod_frm .btn_frmline:hover{ background:#152441 !important; border-color:#00E5A0 !important; }
.bm-shop-wrap #sod_frm_addr input{ margin-bottom:7px; }
.bm-shop-wrap #sod_frm_taker label, .bm-shop-wrap #sod_frm_orderer label{ color:rgba(232,240,255,.7); margin-right:12px; vertical-align:middle; line-height:1.7; }
.bm-shop-wrap #sod_frm_taker input[type=radio], .bm-shop-wrap #sod_frm_taker input[type=checkbox], .bm-shop-wrap #sod_frm_orderer input[type=radio], .bm-shop-wrap #sod_frm_orderer input[type=checkbox]{ width:auto !important; vertical-align:middle; margin:0 5px 0 0; }
.bm-shop-wrap #sod_frm_taker #sod_frm_addr_chk{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.bm-shop-wrap #sod_bsk_tot ul{ list-style:none; margin:0; padding:0; }
.bm-shop-wrap #sod_bsk_tot li{ display:flex; align-items:baseline; gap:6px; padding:9px 0; color:rgba(232,240,255,.7) !important; font-size:.92rem; background:transparent !important; border:0 !important; }
.bm-shop-wrap #sod_bsk_tot li span{ margin-right:auto; }
.bm-shop-wrap #sod_bsk_tot li strong{ min-width:92px; text-align:right; color:#E8F0FF; font-weight:600; }
.bm-shop-wrap #sod_bsk_tot .sod_bsk_cnt{ margin-top:8px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1) !important; color:#fff !important; font-size:1.02rem; }
.bm-shop-wrap #sod_bsk_tot .sod_bsk_cnt strong{ font-family:var(--f-head); font-size:1.5rem; font-weight:800; color:#00E5A0 !important; }
.bm-shop-wrap #sod_frm_pay table{ width:100%; border-collapse:collapse; }
.bm-shop-wrap #sod_frm_pay th{ text-align:left; white-space:nowrap; vertical-align:top; padding:10px 8px 10px 0; color:rgba(232,240,255,.6) !important; font-weight:500; background:transparent !important; border:0 !important; line-height:1.5; }
.bm-shop-wrap #sod_frm_pay td{ padding:10px 0; text-align:right; background:transparent !important; border:0 !important; color:#E8F0FF !important; line-height:1.5; }
.bm-shop-wrap #od_tot_price{ display:flex; align-items:baseline; gap:6px; margin:16px 0; padding:16px 18px; background:rgba(0,229,160,.07); border:1px solid rgba(0,229,160,.2); border-radius:12px; color:#fff !important; font-weight:600; }
.bm-shop-wrap #od_tot_price strong{ margin-left:auto; font-family:var(--f-head); font-size:1.45rem; color:#00E5A0 !important; }
.bm-shop-wrap #sod_frm_pt_alert{ font-size:.82rem; color:rgba(232,240,255,.5) !important; line-height:1.5; margin:0 0 14px; }
.bm-shop-wrap #od_pay_sl{ margin-top:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,.08); }
.bm-shop-wrap #sod_frm_pay h3, .bm-shop-wrap #od_pay_sl h3{ font-family:var(--f-head); font-size:1.05rem; font-weight:700; color:#fff !important; margin:0 0 12px; padding:0; border:0; }
.bm-shop-wrap #sod_frm_paysel{ border:0; padding:0; margin:0 0 16px; display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:8px; }
.bm-shop-wrap #sod_frm_paysel input[type=radio]{ position:absolute; opacity:0; width:0; height:0; }
.bm-shop-wrap #sod_frm_paysel label.lb_icon{ display:flex; align-items:center; justify-content:center; padding:14px 10px; background:#0a1322; border:1px solid rgba(255,255,255,.14); border-radius:10px; color:#E8F0FF !important; cursor:pointer; font-size:.9rem; text-align:center; transition:all .18s; }
.bm-shop-wrap #sod_frm_paysel input[type=radio]:checked + label.lb_icon{ border-color:#00E5A0; background:rgba(0,229,160,.1); color:#fff !important; box-shadow:0 0 0 1px #00E5A0 inset; }
.bm-shop-wrap #settle_bank{ margin-top:10px; padding:14px; background:#0a1322; border-radius:10px; }
.bm-shop-wrap #od_temp_point{ width:120px; padding:9px 12px; }
/* 포인트 사용 영역 */
.bm-shop-wrap .sod_frm_point{ margin-top:14px; padding-top:16px; border-top:1px solid rgba(255,255,255,.08); }
.bm-shop-wrap .sod_frm_point > div{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.bm-shop-wrap .sod_frm_point label{ color:rgba(232,240,255,.6); margin:0; }
.bm-shop-wrap #sod_frm_pt{ gap:10px 20px; }
.bm-shop-wrap #sod_frm_pt span{ display:inline-flex; align-items:baseline; gap:6px; color:rgba(232,240,255,.75); font-size:.92rem; }
.bm-shop-wrap #sod_frm_pt strong{ color:rgba(232,240,255,.5); font-weight:500; }
.bm-shop-wrap #sod_frm_pt em{ color:#00E5A0; font-style:normal; font-weight:700; }
.bm-shop-wrap #display_pay_button.btn_confirm{ display:flex; gap:10px; margin-top:6px; grid-column:1 / -1; }
.bm-shop-wrap #display_pay_button .btn_submit{ flex:1; background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF) !important; border:0 !important; color:#060D1A !important; font-weight:800 !important; padding:16px; border-radius:12px; font-size:1.05rem; cursor:pointer; }
.bm-shop-wrap #display_pay_button .btn01{ display:flex; align-items:center; justify-content:center; padding:16px 22px; background:#111E35 !important; border:1px solid rgba(255,255,255,.18) !important; border-radius:12px; color:#E8F0FF !important; }
.bm-shop-wrap #od_coupon_btn, .bm-shop-wrap #sc_coupon_btn, .bm-shop-wrap .cp_btn{ padding:8px 14px; background:#111E35; border:1px solid rgba(0,229,160,.4); border-radius:8px; color:#E8F0FF !important; cursor:pointer; font-size:.85rem; }

/* ── 16. 공유 테이블 (주문상세/주문내역/마이페이지) ── */
.bm-shop-wrap .tbl_head01, .bm-shop-wrap .tbl_head03, .bm-shop-wrap .tbl_frm01{ background-color:#0F1D32 !important; border:1px solid rgba(0,229,160,.12) !important; border-radius:14px; overflow:hidden; }
.bm-shop-wrap .tbl_head01 table, .bm-shop-wrap .tbl_head03 table, .bm-shop-wrap .tbl_frm01 table{ width:100%; border-collapse:collapse; }
.bm-shop-wrap .tbl_head01 thead th, .bm-shop-wrap .tbl_head03 thead th{ background:rgba(255,255,255,.04) !important; color:rgba(232,240,255,.7) !important; font-weight:600 !important; text-align:center; padding:13px 10px !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.12) !important; }
.bm-shop-wrap .tbl_head01 tbody td, .bm-shop-wrap .tbl_head03 tbody td{ color:#E8F0FF !important; text-align:center; padding:14px 10px !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; background:transparent !important; }
.bm-shop-wrap .tbl_frm01 th{ background:transparent !important; color:rgba(232,240,255,.6) !important; font-weight:500 !important; text-align:left; padding:12px 14px !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; }
.bm-shop-wrap .tbl_frm01 td{ background:transparent !important; color:#E8F0FF !important; padding:12px 14px !important; border:0 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; }
.bm-shop-wrap .sod_name a{ color:#E8F0FF !important; }

/* ── 17. 공통 버튼 정규화 (잔여 파란버튼 → 다크/민트) ── */
.bm-shop-wrap .sit_btn_buy, .bm-shop-wrap .btn_buy, .bm-shop-wrap .od_buy_btn, .bm-shop-wrap .ordbtn, .bm-shop-wrap .btn_confirm input[type=submit], .bm-shop-wrap .btn_submit, .bm-shop-wrap .cartopt_cart_btn, .bm-shop-wrap .coupon_btn .btn02, .bm-shop-wrap .cp_apply, .bm-shop-wrap #sbsk .go_cart{ background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF) !important; border:0 !important; color:#060D1A !important; font-weight:700 !important; border-radius:10px; }
.bm-shop-wrap .sit_btn_cart, .bm-shop-wrap .sit_btn_wish, .bm-shop-wrap .sch_btn, .bm-shop-wrap #sps_sch a, .bm-shop-wrap #sqa_sch a, .bm-shop-wrap .sps_con_btn button, .bm-shop-wrap .sqa_con_btn button, .bm-shop-wrap .review_detail, .bm-shop-wrap .cartopt_close_btn, .bm-shop-wrap .btn01, .bm-shop-wrap .btn02, .bm-shop-wrap .sit_qty_plus, .bm-shop-wrap .sit_qty_minus{ background:#111E35 !important; border:1px solid rgba(255,255,255,.18) !important; color:#E8F0FF !important; border-radius:8px; }
.bm-shop-wrap #scomm li a:hover, .bm-shop-wrap #ssch_cate a:hover, .bm-shop-wrap #ssch_sort li:hover a{ color:#00E5A0 !important; }
.bm-shop-wrap #sps_sch .sch_wr, .bm-shop-wrap #sqa_sch .sch_wr{ background:#0a1322 !important; border:1px solid rgba(255,255,255,.14) !important; }
.bm-shop-wrap #sps li, .bm-shop-wrap #sqa li{ background:transparent !important; border-bottom:1px solid rgba(255,255,255,.07) !important; }
.bm-shop-wrap .review_detail_in, .bm-shop-wrap .review_summ, .bm-shop-wrap .review_tp_cnt, .bm-shop-wrap .sps_opt_li{ background:#0F1D32 !important; border-color:rgba(255,255,255,.1) !important; color:#E8F0FF !important; }

/* ── 18. 반응형 ── */
@media(max-width:880px){
  .bm-shop-wrap .bm-detail{ grid-template-columns:1fr; gap:24px; }
  .bm-shop-wrap .bm-detail-gallery{ position:static; }
  .bm-shop-wrap #sit_pvi_big{ min-height:300px; padding:20px !important; }
  .bm-shop-wrap #sit_title{ font-size:1.45rem; }
  .bm-shop-wrap #sit_ov_from{ padding:20px; }
  .bm-shop-wrap #sod_frm{ grid-template-columns:1fr; }
  .bm-shop-wrap .sod_left, .bm-shop-wrap .sod_right{ grid-column:1; }
  .bm-shop-wrap .sod_right{ position:static; }
  .bm-shop-wrap #sod_frm_paysel{ grid-template-columns:1fr; }
  .bm-shop-wrap #sod_list thead{ display:none; }
  .bm-shop-wrap #sod_list tbody tr{ display:block; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.08); }
  .bm-shop-wrap #sod_list tbody td{ display:flex; justify-content:space-between; text-align:right; padding:5px 0; border:0 !important; }
  .bm-shop-wrap #sod_list .td_prd{ text-align:left; }
}
@media(max-width:600px){
  .bm-shop-wrap .bm-plist{ grid-template-columns:repeat(2,1fr); gap:12px; }
  .bm-shop-wrap .bm-pcard-info{ padding:12px; }
  .bm-shop-wrap .bm-review-bar, .bm-shop-wrap .bm-qa-bar{ flex-direction:column; align-items:stretch; }
  .bm-shop-wrap .bm-qa-by{ display:none; }
  .bm-shop-wrap .bm-cart-item{ flex-wrap:wrap; }
  .bm-shop-wrap .bm-cart-price{ width:100%; text-align:left; }
  .bm-shop-wrap .bm-cart-actions{ flex-direction:column-reverse; }
  .bm-shop-wrap .bm-cart-cont, .bm-shop-wrap .bm-cart-buy{ width:100%; text-align:center; }
}

/* ── 쇼핑몰 상단 배너 (페이지 타이틀 대체) ── */
.bm-shop-wrap .bm-shop-banner{ margin:0 0 26px; border-radius:16px; overflow:hidden; }
.bm-shop-wrap .bm-shop-banner:empty{ display:none; margin:0; }
.bm-shop-wrap .bm-shop-banner img{ width:100%; height:auto; display:block; }

/* ── 결제정보 추가배송비 설명문 → 작은 노트 ── */
.bm-shop-wrap #sod_frm_pay .bm-pay-note{ display:block; font-size:.72rem; color:rgba(232,240,255,.4); text-align:right; line-height:1.4; margin-top:4px; font-weight:400; }

/* ── 주문상세내역 상품 카드 (bm-od) ── */
.bm-shop-wrap .bm-od-list{ display:flex; flex-direction:column; gap:12px; margin:0 0 8px; }
.bm-shop-wrap .bm-od-item{ display:flex; gap:16px; padding:18px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; }
.bm-shop-wrap .bm-od-thumb{ flex-shrink:0; width:90px; height:90px; border-radius:10px; overflow:hidden; background:#fff; }
.bm-shop-wrap .bm-od-thumb img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap .bm-od-body{ flex:1; min-width:0; }
.bm-shop-wrap .bm-od-name{ display:block; color:#fff; font-weight:700; font-size:1.05rem; margin-bottom:12px; }
.bm-shop-wrap .bm-od-opts{ display:flex; flex-direction:column; gap:8px; }
.bm-shop-wrap .bm-od-opt{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; padding:10px 12px; background:rgba(255,255,255,.03); border-radius:9px; }
.bm-shop-wrap .bm-od-optname{ flex-basis:100%; color:rgba(232,240,255,.6); font-size:.85rem; }
.bm-shop-wrap .bm-od-cell{ display:inline-flex; align-items:baseline; gap:5px; color:#E8F0FF; font-size:.9rem; }
.bm-shop-wrap .bm-od-cell em{ font-style:normal; color:rgba(232,240,255,.45); font-size:.8rem; }
.bm-shop-wrap .bm-od-sub strong{ color:#00E5A0; font-weight:700; }
.bm-shop-wrap .bm-od-state{ margin-left:auto; padding:4px 12px; background:rgba(0,229,160,.15); color:#00E5A0; border-radius:20px; font-size:.8rem; font-weight:700; white-space:nowrap; }
@media(max-width:600px){ .bm-shop-wrap .bm-od-state{ margin-left:0; } }

/* ── 주문상세내역 페이지 (#sod_fin) 전체 ── */
.bm-shop-wrap #sod_fin{ max-width:920px; margin:0 auto; }
.bm-shop-wrap #sod_fin_no{ color:rgba(232,240,255,.5); font-size:.9rem; margin-bottom:4px; }
.bm-shop-wrap #sod_fin_no strong{ color:#E8F0FF; font-weight:600; }
.bm-shop-wrap #sod_fin h2{ font-family:var(--f-head); font-size:1.4rem; font-weight:800; color:#fff !important; margin:40px 0 16px; }
.bm-shop-wrap #sod_fin_list h2{ margin-top:0; }
.bm-shop-wrap #sod_fin h3{ font-family:var(--f-head); font-size:1.08rem; font-weight:700; color:#fff !important; margin:0 0 12px; }
.bm-shop-wrap #sod_fin section{ margin-bottom:26px; }
/* 버튼 */
.bm-shop-wrap #sod_fin .btn_frmline, .bm-shop-wrap #sod_fin_cancel > button{ display:inline-block; padding:10px 18px; background:#111E35 !important; border:1px solid rgba(255,255,255,.18) !important; border-radius:9px; color:#E8F0FF !important; cursor:pointer; font-size:.9rem; }
.bm-shop-wrap #sod_fin .btn_frmline:hover, .bm-shop-wrap #sod_fin_cancel > button:hover{ border-color:rgba(0,229,160,.5) !important; }
.bm-shop-wrap #sod_fin input[type=submit], .bm-shop-wrap #sod_fin .btn_submit{ padding:11px 22px; background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF) !important; border:0 !important; border-radius:9px; color:#060D1A !important; font-weight:700 !important; cursor:pointer; }
/* 상태설명 legend */
.bm-shop-wrap #sod_sts_wrap{ margin:16px 0 0; }
.bm-shop-wrap #sod_fin_legend{ margin:14px 0 0; padding:18px 20px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:12px; }
.bm-shop-wrap #sod_fin_legend dt{ color:#00E5A0; font-weight:700; margin-top:12px; }
.bm-shop-wrap #sod_fin_legend dt:first-child{ margin-top:0; }
.bm-shop-wrap #sod_fin_legend dd{ color:rgba(232,240,255,.6); margin:2px 0 0; font-size:.92rem; }
/* 결제합계 */
.bm-shop-wrap #sod_fin_tot{ background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; padding:8px 24px; }
.bm-shop-wrap #sod_fin_tot ul{ list-style:none; margin:0; padding:0; }
.bm-shop-wrap #sod_fin_tot li{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; padding:13px 0; color:rgba(232,240,255,.75); border-bottom:1px solid rgba(255,255,255,.06); }
.bm-shop-wrap #sod_fin_tot li:last-child{ border-bottom:0; }
.bm-shop-wrap #sod_fin_tot li strong{ color:#00E5A0; font-family:var(--f-head); font-size:1.15rem; font-weight:800; }
.bm-shop-wrap #sod_fin_tot .right{ flex-basis:100%; margin-top:8px; }
.bm-shop-wrap #sod_fin_tot .right p{ display:flex; justify-content:space-between; color:rgba(232,240,255,.5); font-size:.85rem; padding:3px 0; }
.bm-shop-wrap #sod_fin_tot .right strong{ font-size:.85rem; color:rgba(232,240,255,.7); }
/* 주문취소 */
.bm-shop-wrap #sod_fin_cancelfrm{ display:none; margin-top:14px; }
.bm-shop-wrap #sod_fin_cancelfrm form{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.bm-shop-wrap #sod_fin #cancel_memo{ flex:1; min-width:240px; padding:11px 14px; }

/* ── 주문상세 정보 테이블(라벨-값) — 값 좌측정렬 (가운데 뜨던 간격 제거, 컴팩트) ── */
.bm-shop-wrap #sod_fin .tbl_head01 th, .bm-shop-wrap #sod_fin .tbl_frm01 th{ width:150px; text-align:left; color:rgba(232,240,255,.5) !important; font-weight:600 !important; padding:13px 18px !important; vertical-align:middle; white-space:nowrap; }
.bm-shop-wrap #sod_fin .tbl_head01 td, .bm-shop-wrap #sod_fin .tbl_frm01 td{ text-align:left !important; color:#E8F0FF !important; padding:13px 18px !important; vertical-align:middle; }

/* ── 마이페이지 (bm-my, 테마 오버라이드) ── */
.bm-shop-wrap .bm-my{ display:grid; grid-template-columns:240px 1fr; gap:28px; align-items:start; }
.bm-shop-wrap .bm-my-side{ background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:16px; padding:22px 14px; position:sticky; top:90px; }
.bm-shop-wrap .bm-my-side h2{ font-family:var(--f-head); font-size:1.2rem; font-weight:800; color:#fff; text-align:center; margin:0 0 16px; }
.bm-shop-wrap .bm-my-nav{ display:flex; flex-direction:column; gap:2px; }
.bm-shop-wrap .bm-my-nav a{ padding:12px 16px; color:rgba(232,240,255,.6); border-radius:9px; font-size:.95rem; }
.bm-shop-wrap .bm-my-nav a:hover{ background:rgba(255,255,255,.05); color:#fff; }
.bm-shop-wrap .bm-my-nav a.on{ background:rgba(0,229,160,.1); color:#00E5A0; font-weight:700; }
.bm-shop-wrap .bm-my-content{ min-width:0; }
.bm-shop-wrap .bm-my-profile{ display:flex; align-items:center; gap:18px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:16px; padding:24px; margin-bottom:14px; }
.bm-shop-wrap .bm-my-avatar{ flex-shrink:0; width:64px; height:64px; border-radius:50%; background:#111E35; display:flex; align-items:center; justify-content:center; font-size:26px; color:rgba(232,240,255,.4); overflow:hidden; }
.bm-shop-wrap .bm-my-avatar img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap .bm-my-joined{ color:rgba(232,240,255,.45); font-size:.85rem; }
.bm-shop-wrap .bm-my-name{ font-family:var(--f-head); font-size:1.3rem; font-weight:800; color:#fff; margin:3px 0; }
.bm-shop-wrap .bm-my-contact{ color:rgba(232,240,255,.5); font-size:.85rem; }
.bm-shop-wrap .bm-my-stats{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px; }
.bm-shop-wrap .bm-my-stat{ display:block; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; padding:18px 20px; transition:border-color .2s; }
.bm-shop-wrap .bm-my-stat:hover{ border-color:rgba(0,229,160,.4); }
.bm-shop-wrap .bm-my-stat .lbl{ display:block; color:rgba(232,240,255,.5); font-size:.85rem; margin-bottom:6px; }
.bm-shop-wrap .bm-my-stat .val{ display:block; font-family:var(--f-head); font-size:1.5rem; font-weight:800; color:#00E5A0; }
.bm-shop-wrap .bm-my-stat .val em{ font-style:normal; font-size:.9rem; color:rgba(232,240,255,.5); margin-left:4px; }
.bm-shop-wrap .bm-my-actions{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:30px; }
.bm-shop-wrap .bm-my-actions a{ padding:9px 16px; background:#111E35; border:1px solid rgba(255,255,255,.16); border-radius:9px; color:#E8F0FF; font-size:.88rem; }
.bm-shop-wrap .bm-my-actions a:hover{ border-color:rgba(0,229,160,.5); }
.bm-shop-wrap .bm-my-sec{ margin-bottom:34px; }
.bm-shop-wrap .bm-my-sec h3{ font-family:var(--f-head); font-size:1.12rem; font-weight:700; color:#fff; margin:0 0 14px; }
.bm-shop-wrap .bm-my-more{ margin-top:14px; text-align:right; }
.bm-shop-wrap .bm-my-more a{ color:rgba(232,240,255,.55); font-size:.88rem; }
.bm-shop-wrap .bm-my-more a:hover{ color:#00E5A0; }
.bm-shop-wrap .bm-my-wish{ display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:14px; list-style:none; margin:0; padding:0; }
.bm-shop-wrap .bm-my-wishitem a{ display:block; }
.bm-shop-wrap .bm-my-wishimg{ display:block; aspect-ratio:1/1; border-radius:12px; overflow:hidden; background:#fff; margin-bottom:8px; }
.bm-shop-wrap .bm-my-wishimg img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap .bm-my-wishname{ display:block; color:#E8F0FF; font-size:.88rem; line-height:1.4; }
.bm-shop-wrap .bm-my-wishitem a:hover .bm-my-wishname{ color:#00E5A0; }
.bm-shop-wrap .bm-my-wishempty{ grid-column:1/-1; padding:40px; text-align:center; color:rgba(232,240,255,.4); background:rgba(255,255,255,.02); border:1px dashed rgba(255,255,255,.1); border-radius:12px; }
@media(max-width:880px){
  .bm-shop-wrap .bm-my{ grid-template-columns:1fr; gap:18px; }
  .bm-shop-wrap .bm-my-side{ position:static; }
  .bm-shop-wrap .bm-my-nav{ flex-direction:row; flex-wrap:wrap; }
  .bm-shop-wrap .bm-my-nav a{ padding:9px 14px; }
}

/* ── 마이페이지 하위 페이지 공통 (주문조회/위시리스트) ── */
.bm-shop-wrap .bm-my-h{ font-family:var(--f-head); font-size:1.4rem; font-weight:800; color:#fff; margin:0 0 18px; }
.bm-shop-wrap .bm-my-content #sod_v{ margin:0; }
/* 위시리스트 카드 그리드 */
.bm-shop-wrap #sod_ws .list_02 ul{ display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:16px; list-style:none; margin:0; padding:0; }
.bm-shop-wrap #sod_ws .list_02 li{ background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; overflow:hidden; }
.bm-shop-wrap #sod_ws .sod_ws_img{ display:block; aspect-ratio:1/1; overflow:hidden; background:#fff; }
.bm-shop-wrap #sod_ws .sod_ws_img img{ width:100%; height:100%; object-fit:cover; }
.bm-shop-wrap #sod_ws .wish_info{ padding:14px; position:relative; }
.bm-shop-wrap #sod_ws .wish_chk{ margin-bottom:6px; }
.bm-shop-wrap #sod_ws .info_link{ display:block; color:#E8F0FF; font-size:.92rem; line-height:1.4; margin:4px 0; }
.bm-shop-wrap #sod_ws .info_link:hover{ color:#00E5A0; }
.bm-shop-wrap #sod_ws .info_date{ color:rgba(232,240,255,.4); font-size:.8rem; }
.bm-shop-wrap #sod_ws .wish_del{ position:absolute; top:12px; right:12px; color:rgba(232,240,255,.4); }
.bm-shop-wrap #sod_ws .wish_del:hover{ color:#ff6b8b; }
.bm-shop-wrap #sod_ws .empty_table{ grid-column:1/-1; list-style:none; padding:50px; text-align:center; color:rgba(232,240,255,.4); background:rgba(255,255,255,.02); border:1px dashed rgba(255,255,255,.1); border-radius:12px; }
.bm-shop-wrap #sod_ws_act{ display:flex; gap:10px; justify-content:center; margin-top:26px; }
.bm-shop-wrap #sod_ws_act .btn01{ padding:13px 30px; border-radius:11px; font-weight:700; cursor:pointer; }
.bm-shop-wrap #sod_ws_act .btn02{ padding:13px 30px; border-radius:11px; font-weight:700; cursor:pointer; background:linear-gradient(135deg,#00E5A0,#00C8D4 50%,#3B8BFF) !important; color:#060D1A !important; border:0 !important; }

/* ── 쿠폰 (bm-coupon, 테마 오버라이드) ── */
.bm-shop-wrap .bm-coupon-list{ display:flex; flex-direction:column; gap:12px; list-style:none; margin:0; padding:0; }
.bm-shop-wrap .bm-coupon{ display:flex; align-items:center; gap:20px; background:#0F1D32; border:1px solid rgba(0,229,160,.2); border-radius:14px; padding:20px 24px; position:relative; }
.bm-shop-wrap .bm-coupon::before{ content:""; position:absolute; left:166px; top:14px; bottom:14px; border-left:2px dashed rgba(255,255,255,.14); }
.bm-shop-wrap .bm-coupon-amt{ flex-shrink:0; width:130px; font-family:var(--f-head); font-size:1.55rem; font-weight:800; color:#00E5A0; text-align:center; }
.bm-shop-wrap .bm-coupon-body{ flex:1; min-width:0; padding-left:10px; }
.bm-shop-wrap .bm-coupon-tit{ color:#fff; font-weight:700; font-size:1.05rem; margin-bottom:6px; }
.bm-shop-wrap .bm-coupon-meta{ display:flex; flex-wrap:wrap; gap:6px 16px; color:rgba(232,240,255,.5); font-size:.85rem; }
.bm-shop-wrap .bm-coupon-empty{ list-style:none; padding:50px; text-align:center; color:rgba(232,240,255,.4); background:rgba(255,255,255,.02); border:1px dashed rgba(255,255,255,.1); border-radius:14px; }
@media(max-width:600px){ .bm-shop-wrap .bm-coupon{ flex-direction:column; align-items:stretch; gap:8px; } .bm-shop-wrap .bm-coupon::before{ display:none; } .bm-shop-wrap .bm-coupon-amt{ width:auto; text-align:left; } .bm-shop-wrap .bm-coupon-body{ padding-left:0; } }

/* ── 장바구니 사이드바 안 풀폭 ── */
.bm-shop-wrap .bm-my .bm-cart{ max-width:none; margin:0; }
/* ── 포인트내역 (bm-point) ── */
.bm-shop-wrap .bm-point-sum{ display:flex; align-items:baseline; gap:8px; background:#0F1D32; border:1px solid rgba(0,229,160,.12); border-radius:14px; padding:18px 22px; margin-bottom:18px; }
.bm-shop-wrap .bm-point-sum span{ color:rgba(232,240,255,.6); }
.bm-shop-wrap .bm-point-sum strong{ font-family:var(--f-head); font-size:1.6rem; font-weight:800; color:#00E5A0; margin-left:auto; }
.bm-shop-wrap .bm-point-sum em{ font-style:normal; color:rgba(232,240,255,.6); }
.bm-shop-wrap .bm-point-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
.bm-shop-wrap .bm-point-item{ display:flex; align-items:center; gap:16px; padding:14px 6px; border-bottom:1px solid rgba(255,255,255,.06); }
.bm-shop-wrap .bm-point-main{ flex:1; min-width:0; }
.bm-shop-wrap .bm-point-content{ display:block; color:#E8F0FF; }
.bm-shop-wrap .bm-point-date{ display:block; color:rgba(232,240,255,.4); font-size:.82rem; margin-top:2px; }
.bm-shop-wrap .bm-point-amt{ flex-shrink:0; font-weight:700; min-width:70px; text-align:right; }
.bm-shop-wrap .bm-point-amt.plus{ color:#00E5A0; }
.bm-shop-wrap .bm-point-amt.minus{ color:#ff6b8b; }
.bm-shop-wrap .bm-point-bal{ flex-shrink:0; min-width:84px; text-align:right; color:rgba(232,240,255,.55); font-size:.88rem; }
.bm-shop-wrap .bm-point-empty{ padding:50px; text-align:center; color:rgba(232,240,255,.4); background:rgba(255,255,255,.02); border:1px dashed rgba(255,255,255,.1); border-radius:12px; }

/* ── 리스트 정렬 hover 밑줄 제거 ── */
.bm-shop-wrap #ssch_sort li:hover:after, .bm-shop-wrap #ssch_sort_all li:hover:after, .bm-shop-wrap #sct_sort li:hover:after{ content:none !important; display:none !important; }

/* ── 수량 선택(선택된 옵션) 컴팩트 + 숫자 가운데 ── */
.bm-shop-wrap .opt_count{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.bm-shop-wrap .opt_count .num_input{ width:56px !important; max-width:56px; text-align:center; padding:10px 4px !important; }
.bm-shop-wrap .opt_count .sit_qty_minus, .bm-shop-wrap .opt_count .sit_qty_plus{ width:40px; height:40px; flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; padding:0 !important; }
.bm-shop-wrap .opt_count .sit_opt_prc{ color:rgba(232,240,255,.6); margin-left:2px; }

/* ── 주문서 상품표 컬럼 간격 균형 (상품명 좌측 + 숫자열 균등) ── */
.bm-shop-wrap #sod_list{ table-layout:fixed; }
.bm-shop-wrap #sod_list thead th:first-child, .bm-shop-wrap #sod_list .td_prd{ width:34%; text-align:left; padding-left:18px !important; }
.bm-shop-wrap #sod_list thead th:not(:first-child){ width:13.2%; }
