/* 다우한우 자사몰 UI 보정
 * 위치: /preorder/dw_ui_fix.css  (tail.sub.php 에서 불러옵니다)
 *
 * [위시리스트 하트 정렬]
 * 테마 style.css 의  #sit_ov_btn > * i { margin-right:5px; top:-2px; }  규칙은
 * "아이콘 + 글자"가 같이 있는 버튼을 기준으로 만들어져 있습니다.
 * 그런데 위시리스트 버튼은 글자가 sound_only 로 숨겨져 아이콘만 남기 때문에
 * 그 여백 때문에 하트가 위로 18px, 왼쪽으로 5px 치우쳐 보입니다.
 * 이 버튼만 flex 로 바꿔 가로·세로 정중앙에 오게 맞춥니다.
 */
#sit_ov_btn > .sit_btn_wish,
#sit_ov_btn > #sit_btn_wish {
  display: flex;
  align-items: center;
  justify-content: center;
}
#sit_ov_btn > .sit_btn_wish i,
#sit_ov_btn > #sit_btn_wish i {
  margin: 0;
  top: 0;
}

/* ─────────────────────────────────────────────────────────────
 * 2026-09 리뷰 정책 변경
 * 상품 목록·상세에서는 별점과 리뷰 수를 표시하지 않는다.
 * 대신 상품 상세로 들어오면 자사몰 전체 리뷰(외부 채널 포함)를 보여준다.
 * ───────────────────────────────────────────────────────────── */

/* 상품 카드의 별점 + (리뷰: N) 묶음 */
.review_box { display: none !important; }
/* 영카트 기본 스킨이 뿌리는 별점 이미지 */
.sct_star,
#sit_star_sns .sit_star,
.sit_use_top .sit_star { display: none !important; }

/* ── 전체 리뷰 목록 ── */
.dwrv_wrap .dwrv_count{ font-size:14px; color:#333; margin:0 0 14px; }
.dwrv_wrap .dwrv_count strong{ color:#b3121f; }
.dwrv_wrap .dwrv_total{ font-size:14px; color:#333; }
.dwrv_wrap .dwrv_total strong{ color:#b3121f; }

ul.dwrv_list{ list-style:none; margin:0; padding:0; border-top:1px solid #e5e5e5; }
ul.dwrv_list > li.dwrv_item{
  list-style:none; margin:0; padding:16px 4px;
  border-bottom:1px solid #eee;
}
.dwrv_head{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:6px; }
.dwrv_head .dwrv_star i{ font-size:13px; color:#d9d9d9; }
.dwrv_head .dwrv_star i.red{ color:#f5a623; }
.dwrv_head .dwrv_name{ font-size:13px; font-weight:700; color:#333; }
.dwrv_head .dwrv_date{ font-size:12px; color:#999; }
/* 출처는 눈에 띄지 않게 — 회색 글자로만 (리뷰 내용이 주인공) */
.dwrv_head .dwrv_src{
  font-size:11.5px; font-weight:400; color:#aaa; white-space:nowrap;
}
.dwrv_head .dwrv_src::before{ content:"· "; color:#ccc; }

.dwrv_item_name{ font-size:12px; color:#888; margin-bottom:6px; }
.dwrv_item_name a{ color:#888; }
.dwrv_item_name a:hover{ color:#b3121f; text-decoration:underline; }

.dwrv_body{ font-size:14px; color:#333; line-height:1.75; word-break:break-all; }
.dwrv_body img{ max-width:100%; height:auto; }

@media (max-width:768px){
  .dwrv_body{ font-size:13.5px; }
  .dwrv_head .dwrv_name{ font-size:12.5px; }
}

/* 상품문의 작성 폼 — 비공개 안내 */
.dwqa_secret_notice{
  margin:0; font-size:13px; line-height:1.6; color:#2b5f8a;
  background:#eef5fb; border:1px solid #cfe1f2; border-radius:8px; padding:9px 12px;
}
.dwqa_secret_notice strong{ color:#1b4a70; }

/* 상품 상세 요약칸의 '사용후기 N 개' 와 탭의 후기 개수
   (이 부분은 스킨이 아니라 /shop/item.php 가 그리는 자리라 여기서 가린다) */
#sit_star_sns > span:not(.sound_only) { display: none !important; }
#sit_tab .tab_tit .item_use_count,
#btn_sit_use .item_use_count { display: none !important; }

/* 관련상품 영역은 숨긴다 — 리뷰가 위로 올라오게 (2026-09 요청) */
#sit_rel { display: none !important; }

/* 리뷰 사진 */
.dwrv_photo{ margin-top:10px; }
.dwrv_photo a{ display:inline-block; line-height:0; }
.dwrv_photo img{
  width:150px; height:150px; object-fit:cover;
  border:1px solid #eee; border-radius:8px; background:#fafafa;
}
@media (max-width:768px){ .dwrv_photo img{ width:120px; height:120px; } }

/* 리뷰 쪽 번호 — 상품 상세 리뷰 목록 아래 */
.dwrv_paging{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:18px 0 6px}
.dwrv_paging .dwrv_pg{display:inline-block;min-width:34px;padding:7px 10px;border:1px solid #e5e5e5;
  border-radius:6px;font-size:13px;line-height:1;color:#555;text-align:center;text-decoration:none;background:#fff}
.dwrv_paging a.dwrv_pg:hover{border-color:#b91c1c;color:#b91c1c}
.dwrv_paging .dwrv_pg.on{background:#b91c1c;border-color:#b91c1c;color:#fff;font-weight:700}

/* 메인 '고객 포토 후기' 띠 */
.dw-hr{max-width:1300px;margin:56px auto 10px;padding:0 20px}
.dw-hr-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
.dw-hr-head h5{margin:0;font-size:26px;font-weight:800;letter-spacing:-.5px;color:#222}
.dw-hr-head a{font-size:13px;color:#888;text-decoration:none}
.dw-hr-track{display:flex;gap:14px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}
.dw-hr-track::-webkit-scrollbar{height:6px}
.dw-hr-track::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}
.dw-hr-card{flex:0 0 200px;scroll-snap-align:start;display:block;text-decoration:none;color:inherit;
  border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fff;transition:box-shadow .15s,transform .15s}
.dw-hr-card:hover{box-shadow:0 6px 18px rgba(0,0,0,.08);transform:translateY(-2px)}
.dw-hr-img{display:block;width:100%;aspect-ratio:1/1;background:#f4f4f4}
.dw-hr-img img{width:100%;height:100%;object-fit:cover;display:block}
.dw-hr-body{display:block;padding:11px 12px 13px}
.dw-hr-star{display:block;font-size:12px;color:#b91c1c;letter-spacing:1px;line-height:1}
.dw-hr-star .off{color:#e2e2e2}
.dw-hr-text{display:block;margin:7px 0 8px;font-size:13px;line-height:1.5;color:#444;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dw-hr-meta{display:block;font-size:11.5px;color:#aaa}
@media (max-width:768px){
  .dw-hr{margin-top:36px;padding:0 14px}
  .dw-hr-head h5{font-size:20px}
  .dw-hr-card{flex-basis:150px}
}

/* 메인 인스타그램 영역 */
.dw-insta{max-width:1300px;margin:48px auto 30px;padding:0 20px}
.dw-insta-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
.dw-insta-head h5{margin:0;font-size:26px;font-weight:800;letter-spacing:-.5px;color:#222}
.dw-insta-head a{font-size:13px;color:#888;text-decoration:none}
.dw-insta-frame{width:100%;border:0;overflow:hidden;display:block}
@media (max-width:768px){ .dw-insta{margin-top:30px;padding:0 14px} .dw-insta-head h5{font-size:20px} }

/* 리뷰 정렬 고르기 */
.dwrv_sort{display:flex;gap:8px;margin:6px 0 18px}
.dwrv_sort .dwrv_sortbtn{display:inline-block;padding:8px 14px;border:1px solid #e5e5e5;border-radius:20px;
  font-size:13px;line-height:1;color:#666;text-decoration:none;background:#fff}
.dwrv_sort .dwrv_sortbtn:hover{border-color:#b91c1c;color:#b91c1c}
.dwrv_sort .dwrv_sortbtn.on{background:#222;border-color:#222;color:#fff;font-weight:700}

/* ── 상품 카드: 할인 강조 ───────────────────────────────
   사진 오른쪽 위 딱지 + 가격 줄 정돈. 값은 화면에 이미 있던 것만 쓴다. */
.item .thumb{ position:relative; overflow:hidden; }
.item .thumb > a{ display:block; }

.item .dw-off{
  position:absolute; bottom:12px; left:12px; z-index:3;   /* 좌상단 순위·우상단 아이콘과 겹치지 않는 자리 */
  display:block; text-align:center;
  min-width:54px; padding:7px 9px 6px;
  background:linear-gradient(140deg,#e11d48,#9f1239);
  color:#fff; border-radius:10px;
  font-size:19px; font-weight:900; line-height:1; letter-spacing:-.5px;
  box-shadow:0 4px 12px rgba(159,18,57,.35);
  pointer-events:none;
}
.item .dw-off b{ font-size:13px; font-weight:900; margin-left:1px; }
.item .dw-off i{ display:block; margin-top:3px; font-size:10px; font-weight:800;
  font-style:normal; letter-spacing:1px; opacity:.85; }

/* 가격 줄 */
/* 가격 줄 — 테마 기본 규칙(.product_list_skin .item .info .price_box …)이 더 구체적이라
   !important 를 붙여야 실제로 먹는다. 할인율·판매가를 키우고 정가는 흐리게 눌러 준다. */
.item .price_box{ display:flex !important; align-items:baseline !important; flex-wrap:wrap !important;
  gap:5px 8px !important; }
/* 제목과 가격 줄이 너무 벌어져서 사이를 좁힌다(가격 글자를 키우니 여백이 커져 보였다) */
.item .info .name{ margin-bottom:2px !important; }
.item .price_box{ padding-top:2px !important; margin-top:2px !important; line-height:1 !important; }
.item .price_box > *{ line-height:1 !important; }
.item .price_box .discount{ font-size:24px !important; font-weight:900 !important; color:#e11d48 !important;
  letter-spacing:-1px !important; }
.item .price_box .discount .per{ font-size:17px !important; font-weight:900 !important; }
.item .price_box .price{ font-size:15px !important; color:#555 !important; }
.item .price_box .price strong{ font-size:28px !important; font-weight:900 !important; color:#111 !important;
  letter-spacing:-1.2px !important; }
.item .price_box .before_price{ font-size:13px !important; color:#bdbdbd !important;
  text-decoration:line-through !important; }
/* 100g 은 가격 줄이 아니라 상품명 옆으로 옮긴다(dw_ui_fix.js 가 옮긴다).
   회색 칩이 할인율과 가격 사이에 끼어 줄이 틀어져 보였다.
   옮기기 전이거나 자바스크립트가 막힌 화면에서도 튀지 않게 배경은 빼 둔다. */
.item .price_box .gram_100{ font-size:11.5px !important; font-weight:600 !important; color:#9a9a9a !important;
  background:none !important; padding:0 !important; border-radius:0 !important; }
.item .info .name .dw-gram{ margin-left:6px; font-size:.8em; font-weight:600;
  letter-spacing:0; color:inherit; opacity:.5; }

/* 뱃지·사진에 생기 더하기 */
.item .badge_box span{ border-radius:5px; letter-spacing:.3px; }
.item .thumb{ transition:box-shadow .2s ease, transform .2s ease;
  background-size:cover; background-position:center; }
.item:hover .thumb{ transform:translateY(-3px); box-shadow:0 10px 24px rgba(0,0,0,.14); }

@media (max-width:768px){
  .item .dw-off{ bottom:8px; left:8px; min-width:44px; padding:6px 7px 5px; font-size:16px; }
  .item .dw-off i{ font-size:9px; }
  .item .price_box .discount{ font-size:20px !important; }
  .item .price_box .discount .per{ font-size:14px !important; }
  .item .price_box .price{ font-size:13.5px !important; }
  .item .price_box .price strong{ font-size:24px !important; }
  .item .price_box .before_price{ font-size:12px !important; }
}

/* 썸네일 위 장바구니 버튼 — 옵션 상품에서 제대로 동작하지 않아 감춘다.
   상품을 눌러 상세에서 옵션을 고르고 담는 흐름으로 통일한다. */
.item .thumb .shop_btn,
.item .thumb .btn-cart-list{ display:none !important; }

/* 메인 추석 선물세트 판촉 띠 — 화면 끝까지 꽉 차게 깔고, 아래는 배경으로 자연스럽게 번지게 한다
   (엄마네한우 상단처럼 카드가 아니라 화면 전체를 쓰는 방식) */
.dw-gift{ position:relative; width:100%; max-width:none; margin:0; padding:0; line-height:0; }
/* 먹빛 바탕은 사진 영역에만 준다. 띠 전체에 주면 아래 그라데이션이 묻혀 버린다. */
.dw-gift a{ display:block; border-radius:0; box-shadow:none; text-decoration:none;
  background:#0e0b09; overflow:hidden; }
.dw-gift a:hover{ transform:none; box-shadow:none; }
.dw-gift a img{ transition:transform .5s ease; }
.dw-gift a:hover img{ transform:scale(1.012); }
.dw-gift img{ display:block; width:100%; height:auto; }
/* 배너 아래로 먹빛이 흐려지며 흰 바탕으로 이어지는 띠 */
.dw-gift::after{ content:''; display:block; height:110px;
  background:linear-gradient(180deg,#0e0b09 0%, rgba(14,11,9,.62) 38%, rgba(14,11,9,.18) 72%, rgba(14,11,9,0) 100%); }
.dw-gift .dw-gift-mo{ display:none; }
@media (max-width:768px){
  .dw-gift::after{ height:70px; }
  .dw-gift .dw-gift-pc{ display:none; }
  .dw-gift .dw-gift-mo{ display:block; }
}

/* 메인 '선물세트' 칸 강조 */
.dw-giftsec{ position:relative; background:linear-gradient(180deg,#fcf8f1 0%,#fdfaf5 55%,#fff 100%); }
.dw-giftsec::before{ content:''; position:absolute; left:0; right:0; top:0; height:3px;
  background:linear-gradient(90deg,#d9b45f,#a97f2b,#d9b45f); }
.dw-giftsec .latest_title h5{ font-size:32px; letter-spacing:-.6px; }
.dw-giftsec-sub{ margin:10px 0 2px; text-align:center; font-size:15.5px; color:#8a7b6a; letter-spacing:-.02em; }
.dw-giftsec .item .thumb{ box-shadow:0 10px 28px rgba(0,0,0,.16); }
.dw-giftsec-cta{ display:flex; justify-content:center; margin:10px 0 6px; }
.dw-giftsec-cta a{ display:inline-flex; align-items:center; gap:10px; padding:16px 36px; border-radius:999px;
  background:linear-gradient(135deg,#d9b45f,#a97f2b); color:#1a1206; font-size:16.5px; font-weight:900;
  letter-spacing:-.02em; text-decoration:none; box-shadow:0 8px 22px rgba(169,127,43,.30);
  transition:transform .15s ease, box-shadow .15s ease; }
.dw-giftsec-cta a:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(169,127,43,.38); }
@media (max-width:768px){
  .dw-giftsec .latest_title h5{ font-size:23px; }
  .dw-giftsec-sub{ font-size:13.5px; margin:8px 0 0; }
  .dw-giftsec-cta a{ font-size:15px; padding:14px 28px; }
}

/* 선물세트 칸에 상품이 하나뿐이라 슬라이드가 왼쪽에 붙어 허전했다 → 가운데로 모으고 조금 키운다.
   슬라이드(slick)가 자리를 직접 계산하므로 그 값을 덮어써서 가운데 정렬한다. */
.dw-giftsec .slick_list,
.dw-giftsec .roll{ display:flex !important; justify-content:center !important; flex-wrap:wrap !important; }
.dw-giftsec .slick-list{ overflow:visible !important; width:100% !important; }
.dw-giftsec .slick-track{ transform:none !important; width:100% !important; max-width:100% !important;
  display:flex !important; justify-content:center !important; margin:0 !important; }
/* 좌우 여백을 auto 로 두면 슬라이드가 켜져 있든 꺼져 있든 한가운데로 온다 */
.dw-giftsec .item{ float:none !important; margin-left:auto !important; margin-right:auto !important;
  width:420px !important; max-width:90vw !important; }
@media (max-width:768px){
  .dw-giftsec .item{ width:88vw !important; max-width:420px !important; }
}

/* 메인 '실시간 고객 리뷰' 칸 감추기.
   같은 자리에 인스타그램 피드와 '고객 포토 후기' 띠를 새로 깔았기 때문에
   테마가 그리는 이 칸은 내용이 겹친다. 지우지 않고 화면에서만 뺀다 —
   다시 쓰려면 이 규칙만 지우면 원래대로 돌아온다. */
.main_review{ display:none !important; }

/* ───────── 담기 흐름 팝업 (dw_shop_ux.js 가 띄운다) ───────── */
.dw-modal{ position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center;
  background:rgba(17,17,17,.5); padding:20px; }
.dw-modal-box{ width:100%; max-width:360px; background:#fff; border-radius:14px; padding:28px 24px 20px;
  box-shadow:0 18px 50px rgba(0,0,0,.28); text-align:center; }
.dw-modal-msg{ margin:0 0 22px; font-size:16.5px; font-weight:600; color:#222; line-height:1.5; letter-spacing:-.02em; }
.dw-modal-btns{ display:flex; flex-direction:column; gap:8px; }
.dw-modal-btns button{ width:100%; padding:14px 0; border-radius:9px; font-size:15px; font-weight:800;
  cursor:pointer; letter-spacing:-.02em; border:1px solid transparent; }
.dw-modal-go{ background:#111; color:#fff; }
.dw-modal-go:hover{ background:#000; }
.dw-modal-stay{ background:#fff; color:#555; border-color:#ddd !important; }
.dw-modal-stay:hover{ background:#f6f6f6; }

/* ───────── 상품 상세 찜(하트) ───────── */
/* 공유 아이콘 옆의 '찜 수량' 하트는 손님에게 쓸모가 없어 감춘다 */
#sit_btn_opt #btn_wish{ display:none !important; }
/* 찜해 둔 상품이면 바로구매 옆 하트를 채워서 보여 준다 */
.sit_btn_wish.dw-wished,
.sit_btn_wish.dw-wished i{ color:#e11d48 !important; border-color:#e11d48 !important; }

/* ───────── 가운데가 안 맞던 곳들 ───────── */
/* 위시리스트의 삭제(휴지통) 단추 */
.wish_del{ display:inline-flex !important; align-items:center !important; justify-content:center !important; }
/* 상품 대표이미지의 돋보기 */
#popup_item_image{ display:flex !important; align-items:center !important; justify-content:center !important; }
#popup_item_image i{ line-height:1 !important; }
/* 모바일 슬라이드 메뉴의 장바구니~쿠폰존 줄 */
#tnb-mo{ display:flex !important; flex-wrap:wrap !important;
  align-items:center !important; justify-content:center !important; }
#tnb-mo li{ float:none !important; }

/* ───────── 메인 입금계좌 안내 띄어쓰기 ───────── */
/* '신한100-030-967495' 처럼 붙어 나오던 것을 한 칸 띄운다 */
.deposit_box dl{ display:flex !important; align-items:baseline !important;
  flex-wrap:wrap !important; gap:0 5px !important; }
.deposit_box dl dt,
.deposit_box dl dd{ margin:0 !important; }

/* ───────── 상품 상세: 행사 할인 한 줄 ───────── */
.dw-saleoff{ display:flex !important; align-items:center; flex-wrap:wrap; gap:8px;
  margin:8px 0 0 !important; padding:10px 12px; border-radius:9px;
  background:#fff1f4; border:1px solid #fbd5de; }
.dw-saleoff-tag{ background:#e11d48; color:#fff; font-size:12px; font-weight:800;
  padding:3px 8px; border-radius:999px; letter-spacing:-.02em; }
.dw-saleoff-amt{ font-size:14.5px; font-weight:800; color:#e11d48; letter-spacing:-.02em; }
.dw-saleoff-was{ font-size:13px; color:#a1a1a1; text-decoration:line-through; }
@media (max-width:768px){
  .dw-saleoff{ padding:9px 10px; gap:6px; }
  .dw-saleoff-amt{ font-size:13.5px; }
  .dw-saleoff-was{ font-size:12px; }
}

/* ───────── 주문서(orderform) 정리 ───────── */
/* 화면에 안 보이지만 값은 넘겨야 하는 줄 */
#sod_frm .dw_hidden_row{ display:none !important; }

/* 주소 입력 줄: 검색 단추 → 기본주소 → 상세주소 */
#sod_frm .btn_address,
#sod_frm .btn_addsch{ margin:0 0 6px !important; }
#sod_frm #od_b_addr1{ background:#fff !important; }
#sod_frm #od_b_addr1,
#sod_frm #od_b_addr2{ margin-bottom:5px !important; }

/* 배송메세지 */
#sod_frm #od_memo{ width:100% !important; min-height:70px !important; }

/* ───────── 쿠폰 선택 창 ───────── */
.od_coupon .dw_cp_term{ display:block; margin-top:3px; font-size:12px; color:#9a9a9a; }
.od_coupon .dw_cp_none{ margin:14px 0; padding:14px; text-align:center;
  background:#f7f7f7; border-radius:8px; color:#666; font-size:13.5px; }
.od_coupon .dw_cp_unable{ margin:14px 0 4px; border-top:1px solid #eee; padding-top:12px; }
.od_coupon .dw_cp_unable h4{ margin:0 0 8px; font-size:13.5px; font-weight:700; color:#777; }
.od_coupon .dw_cp_unable ul{ margin:0; padding:0; list-style:none; }
.od_coupon .dw_cp_unable li{ padding:9px 11px; margin-bottom:6px;
  background:#f7f7f8; border:1px solid #ececee; border-radius:8px; }
.od_coupon .dw_cp_name{ font-size:13.5px; font-weight:600; color:#8a8a8a; text-decoration:line-through; }
.od_coupon .dw_cp_val{ margin-left:6px; font-size:12.5px; color:#a5a5a5; }
.od_coupon .dw_cp_why{ display:block; margin-top:3px; font-size:12.5px; color:#e11d48; line-height:1.45; }

/* ───────── 모바일 주문서를 PC 화면과 같은 결로 ─────────
 * 테마 기본값은 라벨을 왼쪽에 겹쳐 놓는 방식(absolute)이라
 * 칸이 틀어져 보인다. 라벨을 칸 위로 올리고 입력칸을 키운다. */
@media (max-width:768px){
  #sod_frm section{ margin:0 0 18px !important; background:#fff !important;
    border:1px solid #e7e7e9 !important; border-radius:12px !important; overflow:hidden !important; }
  #sod_frm section > h2{ display:block !important; position:static !important;
    width:auto !important; height:auto !important; overflow:visible !important;
    margin:0 !important; padding:13px 14px !important;
    font-size:15px !important; font-weight:700 !important; color:#111 !important;
    background:#fafafa !important; border-bottom:1px solid #eee !important; text-indent:0 !important; }

  #sod_frm .odf_list{ padding:2px 14px 12px !important; }
  #sod_frm .odf_list ul{ margin:0 !important; padding:0 !important; list-style:none !important; }
  #sod_frm .odf_list ul li{ position:relative !important; padding:12px 0 !important;
    line-height:1.5 !important; min-height:0 !important;
    border-bottom:1px solid #f1f1f1 !important; overflow:visible !important; }
  #sod_frm .odf_list ul li:last-child{ border-bottom:0 !important; }

  /* 라벨을 겹치지 않게 칸 위로 */
  #sod_frm .odf_list ul li > label:first-child,
  #sod_frm .odf_list ul li > strong:first-child{
    position:static !important; display:block !important;
    width:auto !important; margin:0 0 6px !important;
    line-height:1.3 !important; font-size:13px !important; font-weight:600 !important;
    color:#555 !important; letter-spacing:-.02em !important; }

  #sod_frm .odf_list ul li input[type=text],
  #sod_frm .odf_list ul li input[type=password],
  #sod_frm .odf_list ul li input[type=email],
  #sod_frm .odf_list ul li input.frm_input{
    width:100% !important; box-sizing:border-box !important;
    height:46px !important; padding:0 12px !important; margin:0 !important;
    font-size:15px !important; letter-spacing:0 !important;
    border:1px solid #dcdcdf !important; border-radius:8px !important;
    background:#fff !important; }
  #sod_frm .odf_list ul li input.frm_address{ margin-top:6px !important; }
  #sod_frm .odf_list ul li textarea{
    width:100% !important; box-sizing:border-box !important;
    height:90px !important; padding:10px 12px !important;
    font-size:15px !important; border:1px solid #dcdcdf !important;
    border-radius:8px !important; background:#fff !important; }

  /* 주소 검색 단추 */
  #sod_frm .odf_list .add_num{ display:block !important; margin:0 0 6px !important; }
  #sod_frm .odf_list .btn_addsch{ display:inline-block !important; height:42px !important;
    line-height:40px !important; padding:0 16px !important; border-radius:8px !important;
    font-size:14px !important; }

  /* 배송지선택 라디오 줄 */
  #sod_frm .odf_list .dlv_slt > div{ display:flex !important; flex-wrap:wrap !important;
    gap:6px 16px !important; align-items:center !important; line-height:1.6 !important; }
  #sod_frm .odf_list .dlv_slt > div br{ display:none !important; }
  #sod_frm .odf_list .dlv_slt > div label{ margin:0 4px 0 2px !important; font-size:14px !important; color:#333 !important; }
  #sod_frm .odf_list .dlv_slt > div input[type=radio],
  #sod_frm .odf_list .dlv_slt > div input[type=checkbox]{ width:auto !important; height:auto !important; margin:0 !important; }
  #sod_frm .odf_list .dlv_slt > div a{ font-size:13px !important; text-decoration:underline !important; }

  /* 기본배송지로 설정 / 받으시는 분과 동일 : 체크박스는 한 줄로 */
  #sod_frm .odf_list ul li input[type=checkbox]{ width:auto !important; height:auto !important;
    vertical-align:middle !important; margin:0 6px 0 0 !important; }
  #sod_frm .odf_list ul li label.ad_default,
  #sod_frm .odf_list ul li .dw_samelab{ display:inline-block !important; margin:0 !important;
    font-size:14px !important; color:#333 !important; vertical-align:middle !important; }
  #sod_frm .odf_list ul li #ad_subject{ margin-bottom:10px !important; }

  /* 결제정보 표 */
  #sod_frm .odf_tbl table th{ width:96px !important; }
  #sod_frm .odf_tbl button.btn_frmline,
  #sod_frm .odf_tbl button.cp_btn1{ height:34px !important; line-height:32px !important; padding:0 12px !important; }

  .od_coupon{ max-width:94vw !important; }
}

/* PC 주문서에서도 '받으시는 분과 동일' 체크칸은 한 줄로 */
#sod_frm_orderer .custlab input[type=checkbox]{ vertical-align:middle; margin-right:5px; }

/* ═════════ 상품 상세페이지 정리 (dw_item.js 와 짝) ═════════ */

/* 상단 '제품소개' 배너, 카테고리 줄은 상품 상세에서만 감춘다 */
/* 큰 비주얼 배너는 모든 페이지에서 쓰지 않는다 */
#sub > .sub-vis,
#sub > .lnbWrap,
#sub > #navigator{ display:none !important; }
#sub{ padding-top:0 !important; }
/* 상품 상세에서는 페이지 제목·카테고리 줄도 뺀다 */
html.dw-item #content > .sub-tit,
html.dw-item #sct_location{ display:none !important; }
html.dw-item #content{ padding-top:14px !important; }

/* 대표이미지 — 썸네일 줄은 감추고, 사진 가장자리 선도 없앤다 */
#sit_pvi_thumb, #sit_pvi .thumbnailsWrap{ display:none !important; }
#sit_pvi, #sit_pvi_big, #sit_pvi_big > a, #sit_pvi_big img{
  border:0 !important; outline:0 !important; box-shadow:none !important; }
#sit_pvi_big > a::before, #sit_pvi_big > a::after,
#sit_pvi::before, #sit_pvi::after{ display:none !important; }
#sit_pvi_big img{ max-width:100% !important; height:auto !important; }

/* 좌우 넘기기 화살표 · 점 */
.dw-gal-arw{ position:absolute; top:50%; transform:translateY(-50%); z-index:6;
  width:38px; height:38px; border:0; border-radius:50%; cursor:pointer; padding:0;
  background:rgba(255,255,255,.9); color:#333; font-size:15px; line-height:38px;
  box-shadow:0 1px 5px rgba(0,0,0,.2); }
.dw-gal-arw.prev{ left:8px; } .dw-gal-arw.next{ right:8px; }
.dw-gal-dots{ display:flex; justify-content:center; gap:6px; margin:12px 0 0; }
.dw-gal-dots span{ width:7px; height:7px; border-radius:50%; background:#d5d5d8; cursor:pointer; }
.dw-gal-dots span.on{ background:#111; }

/* 찜(하트) — 기본은 회색, 찜해 둔 상품만 빨강 */
#sit_ov_btn .sit_btn_wish{ color:#9a9a9a !important; border-color:#dcdcdf !important; background:#fff !important; }
#sit_ov_btn .sit_btn_wish i{ color:#9a9a9a !important; }
#sit_ov_btn .sit_btn_wish.dw-wished{ color:#e11d48 !important; border-color:#e11d48 !important; background:#fff5f7 !important; }
#sit_ov_btn .sit_btn_wish.dw-wished i{ color:#e11d48 !important; }

/* 할인 종료까지 — 한 줄 */
.dw-item-timer{ display:flex; align-items:center; justify-content:space-between; gap:10px;
  margin:10px 0 4px; padding:11px 14px; border-radius:8px;
  background:#fff3ec; border:1px solid #ffdfcc; }
.dw-item-timer .dw-tm-lab{ font-size:13.5px; font-weight:600; color:#8a5a3b; letter-spacing:-.02em; }
.dw-item-timer .dw-tm-lab::before{ content:'\23F1'; margin-right:6px; }
.dw-item-timer .dw-tm-val{ font-size:15px; font-weight:800; color:#f2540a;
  letter-spacing:-.01em; font-variant-numeric:tabular-nums; }
@media (max-width:768px){
  .dw-item-timer{ padding:10px 12px; }
  .dw-item-timer .dw-tm-lab{ font-size:12.5px; }
  .dw-item-timer .dw-tm-val{ font-size:14px; }
}

/* 공유 아이콘 — 누르면 바로 링크 복사 */
#sit_star_sns .sns_area{ display:none !important; }
#sit_star_sns .btn_sns_share{ cursor:pointer; }

.dw-toast{ position:fixed; left:50%; bottom:80px; transform:translateX(-50%);
  z-index:100000; background:rgba(17,17,17,.9); color:#fff; font-size:13.5px;
  padding:10px 16px; border-radius:999px; letter-spacing:-.02em; }

/* ═════════ 상품 상세 — 탭 / 배송비 / 품절 ═════════ */

/* 탭: 가운데로 넓게, 글씨 키움 */
#sit_tab .tab_tit{ display:flex !important; width:100% !important; margin:0 !important;
  padding:0 !important; list-style:none !important; border-bottom:1px solid #e6e6e9 !important; }
#sit_tab .tab_tit li{ flex:1 1 0 !important; float:none !important; width:auto !important;
  margin:0 !important; text-align:center !important; }
#sit_tab .tab_tit li button{ display:block !important; width:100% !important;
  height:56px !important; line-height:56px !important; padding:0 !important;
  font-size:17px !important; font-weight:600 !important; letter-spacing:-.03em !important;
  color:#8a8a90 !important; background:none !important; border:0 !important; cursor:pointer; }
#sit_tab .tab_tit li button.selected{ color:#111 !important; font-weight:800 !important;
  box-shadow:inset 0 -3px 0 #111 !important; }
@media (max-width:768px){
  #sit_tab .tab_tit li button{ height:50px !important; line-height:50px !important; font-size:15px !important; }
}

/* 배송비 줄 */
.sit_ov_tbl .dw-ship-row .dw-free{ color:#0f9d58; font-weight:800; }
.sit_ov_tbl .dw-ship-row .dw-ship-sub{ color:#8a8a90; font-size:.92em; }

/* 상품 상세 위쪽 여백 — 관리자 [상품 관리] 단추와 겹치지 않게 */
html.dw-item #content{ padding-top:30px !important; }
html.dw-item #content > .sit_admin,
html.dw-item .sit_admin{ position:relative !important; z-index:6 !important; }

/* 품절 상품 카드 */
.item.dw-is-soldout .thumb{ position:relative; filter:saturate(.45) brightness(.99); }
.item.dw-is-soldout .info{ opacity:.72; }
.item .thumb .dw-soldout{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  z-index:20; padding:8px 18px; border-radius:999px; background:rgba(17,17,17,.62); color:#fff;
  font-size:14px; font-weight:800; letter-spacing:-.02em; pointer-events:none; }
@media (max-width:768px){ .item .thumb .dw-soldout{ font-size:12.5px; padding:6px 14px; } }

/* ═════════ 주문서 · 주문완료 화면 단장 ═════════
 * 원칙 : 테마가 그려 놓은 선을 '지우고' 다시 긋는다.
 *        (선은 남긴 채 모서리만 둥글리면 어긋나 보인다)
 *        결제수단 아이콘 등 이미 잘 되어 있는 것은 그대로 둔다. */

#sod_frm, #sod_fin{
  font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Pretendard",
    "Malgun Gothic","맑은 고딕",sans-serif; }

/* 좌우 두 칸 — 오른쪽 칸의 검은 테두리·회색 배경을 없앤다 */
#sodWrap{ border-spacing:0 !important; }
#sodWrap .sod_right{ border:0 !important; background:transparent !important;
  padding:20px 0 20px 22px !important; }
#sodWrap .sod_left{ padding:20px 0 20px 0 !important; }

/* ── 주문상품 표 ── */
#sod_frm .tbl_head03{ border:1px solid #ececef !important; border-radius:14px !important;
  overflow:hidden !important; margin:0 0 18px !important; }
#sod_frm .tbl_head03 table{ border:0 !important; border-collapse:collapse !important; width:100% !important; }
#sod_frm .tbl_head03 thead th{ padding:14px 18px !important; background:#fafafa !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:13.5px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_frm .tbl_head03 tbody td{ border:0 !important;
  border-bottom:1px solid #f4f4f6 !important; vertical-align:middle !important; }
#sod_frm .tbl_head03 tbody tr:last-child td{ border-bottom:0 !important; }
/* 상품 사진이 표 왼쪽 선에 붙어 있던 것 — 여백을 준다 */
#sod_frm .tbl_head03 tbody td.td_prd{ padding:20px 14px 20px 122px !important; }
#sod_frm .sod_img{ left:18px !important; top:20px !important;
  width:80px !important; height:80px !important; }
#sod_frm .sod_img img{ width:80px !important; height:80px !important;
  border-radius:10px !important; object-fit:cover !important; }
#sod_frm .sod_name{ font-size:15px !important; }
#sod_frm .sod_opt{ margin-top:5px !important; color:#7a7a82 !important; font-size:13px !important; }
/* 포인트는 쓰지 않는다 */
#sod_frm .tbl_head03 .td_point,
#sod_frm .tbl_head03 .sit_point,
#sod_frm .tbl_head03 .total_point{ display:none !important; }

/* ── 섹션 카드 ── */
#sod_frm section{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; margin:0 0 16px !important; }
#sod_frm section > h2{ display:block !important; position:static !important;
  width:auto !important; height:auto !important; overflow:visible !important;
  text-indent:0 !important; font-size:16px !important; line-height:1.4 !important;
  margin:0 !important; padding:16px 18px !important; background:#fff !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-weight:800 !important; color:#111 !important; letter-spacing:-.03em !important; }

/* ── 입력 표 : 라벨 왼쪽 / 값 오른쪽, 선은 아래 한 줄만 ── */
#sod_frm .tbl_frm01{ border:0 !important; }
#sod_frm .tbl_frm01 table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_frm .tbl_frm01 th{ width:118px !important; padding:15px 6px 15px 18px !important;
  background:none !important; border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important;
  text-align:left !important; vertical-align:middle !important; letter-spacing:-.02em !important; }
#sod_frm .tbl_frm01 td{ padding:12px 18px 12px 0 !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:15px !important; color:#1b1b1f !important; }
#sod_frm .tbl_frm01 tr:first-child th,
#sod_frm .tbl_frm01 tr:first-child td{ border-top:0 !important; }

/* 입력칸 */
#sod_frm .frm_input,
#sod_frm input[type=text],
#sod_frm input[type=password],
#sod_frm input[type=email]{ box-sizing:border-box !important; height:46px !important;
  padding:0 14px !important; font-size:15px !important; color:#111 !important;
  background:#fff !important; border:1px solid #dfdfe4 !important; border-radius:10px !important; }
#sod_frm textarea{ box-sizing:border-box !important; width:100% !important; max-width:440px !important;
  height:84px !important; padding:12px 14px !important; font-size:15px !important; line-height:1.5 !important;
  border:1px solid #dfdfe4 !important; border-radius:10px !important; background:#fff !important; }
#sod_frm .frm_input:focus, #sod_frm textarea:focus{ border-color:#111 !important; outline:0 !important; }
#sod_frm .frm_address{ width:100% !important; max-width:440px !important; margin-top:6px !important; }
#sod_frm #od_b_addr1{ background:#fff !important; }
#sod_frm #od_b_name, #sod_frm #od_name{ width:220px !important; max-width:100% !important; }
#sod_frm #od_b_hp, #sod_frm #od_hp{ width:240px !important; max-width:100% !important; }
#sod_frm #ad_subject{ width:240px !important; max-width:100% !important; }

/* 작은 단추 */
#sod_frm .btn_address,
#sod_frm .btn_frmline{ height:40px !important; line-height:38px !important; padding:0 14px !important;
  font-size:13.5px !important; font-weight:600 !important; color:#333 !important;
  background:#fff !important; border:1px solid #dfdfe4 !important; border-radius:9px !important; cursor:pointer; }
#sod_frm .btn_address:hover, #sod_frm .btn_frmline:hover{ background:#f7f7f9 !important; }
#sod_frm .custlab{ display:inline-flex !important; align-items:center !important; gap:6px !important;
  margin:0 14px 4px 0 !important; font-size:14.5px !important; color:#333 !important; }
#sod_frm .custlab input{ width:auto !important; height:auto !important; margin:0 !important; }

/* ── 오른쪽 : 금액 요약 ── */
#sod_frm #sod_bsk_tot{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; padding:0 !important; margin:0 0 16px !important; }
#sod_frm #sod_bsk_tot li{ border:0 !important; border-right:1px solid #f2f2f5 !important;
  background:#fff !important; height:auto !important; padding:16px 6px !important; }
#sod_frm #sod_bsk_tot li:nth-child(3){ border-right:0 !important; }
#sod_frm #sod_bsk_tot li span{ font-size:12.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#sod_frm #sod_bsk_tot li strong{ font-size:16px !important; font-weight:800 !important; color:#111 !important; }
#sod_frm #sod_bsk_tot .sod_bsk_cnt{ border-top:1px solid #f2f2f5 !important; padding:16px !important; }
#sod_frm #sod_bsk_tot .sod_bsk_cnt strong{ font-size:20px !important; }
/* 포인트 줄은 쓰지 않는다 */
#sod_frm #sod_bsk_tot .sod_bsk_point{ display:none !important; }

/* 결제정보 표 — 라벨 왼쪽, 값 오른쪽 한 줄 */
#sod_frm .pay_tbl{ border:0 !important; }
#sod_frm .pay_tbl table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_frm .pay_tbl tr{ display:flex !important; align-items:center !important; gap:8px !important;
  padding:13px 18px !important; border-top:1px solid #f4f4f6 !important; }
#sod_frm .pay_tbl tr:first-child{ border-top:0 !important; }
#sod_frm .pay_tbl th{ flex:0 0 auto !important; width:auto !important; padding:0 !important;
  background:none !important; border:0 !important; text-align:left !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_frm .pay_tbl td{ flex:1 1 auto !important; padding:0 !important; background:none !important;
  border:0 !important; text-align:right !important; font-size:14.5px !important; color:#1b1b1f !important; }
#sod_frm .pay_tbl td strong{ font-size:15px !important; font-weight:800 !important; }
#sod_frm .pay_tbl td .btn_frmline{ margin-left:8px !important; vertical-align:middle !important; }
#sod_frm .pay_tbl td br{ display:none !important; }

/* 총 주문금액 */
#sod_frm div#od_tot_price{ display:flex !important; align-items:baseline !important;
  justify-content:flex-end !important; gap:6px !important;
  margin:14px 0 !important; padding:18px 20px !important; border-radius:14px !important;
  background:#111 !important; line-height:1.2 !important; text-align:right !important; }
#sod_frm div#od_tot_price span{ float:none !important; margin-right:auto !important; padding:0 !important;
  font-size:15px !important; font-weight:700 !important; color:#fff !important; }
#sod_frm div#od_tot_price strong{ font-size:26px !important; font-weight:800 !important;
  color:#fff !important; letter-spacing:-.03em !important; }
#sod_frm div#od_tot_price{ color:#fff !important; }

/* 결제수단 — 테마 아이콘을 그대로 쓰고 테두리만 정리한다 */
#sod_frm #od_pay_sl h3{ font-size:15px !important; font-weight:800 !important;
  color:#111 !important; margin:0 0 10px !important; padding:0 18px !important; }
#sod_frm #sod_frm_paysel{ margin:0 18px 16px !important; padding:0 !important;
  border:0 !important; overflow:visible !important; border-radius:0 !important; }
#sod_frm #sod_frm_paysel:after{ content:''; display:block; clear:both; }
/* 고른 결제수단이 한눈에 보이게 */
#sod_frm #od_pay_sl input[type=radio]:checked + .lb_icon{
  border:1px solid #111 !important; box-shadow:inset 0 0 0 2px #111 !important;
  z-index:5 !important; font-weight:800 !important; color:#111 !important; }
#sod_frm #od_pay_sl input[type=radio]:checked + .lb_icon:after{
  content:''; position:absolute; top:8px; right:8px; width:18px; height:18px; border-radius:50%;
  background:#111 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center;
  background-size:12px 12px; }
#sod_frm #sod_frm_pt_alert{ display:none !important; }

/* 주문 단추 */
#sod_frm .btn_confirm{ padding:0 18px 18px !important; }
#sod_frm .btn_confirm .btn_submit,
#sod_frm .btn_confirm input[type=submit],
#sod_frm .btn_confirm button[type=submit]{ width:100% !important; height:58px !important;
  border:0 !important; border-radius:14px !important; background:#111 !important; color:#fff !important;
  font-size:18px !important; font-weight:800 !important; letter-spacing:-.03em !important; cursor:pointer; }
#sod_frm .btn_confirm .btn_close,
#sod_frm .btn_confirm .btn01{ width:100% !important; height:50px !important; line-height:48px !important;
  margin-top:8px !important; border-radius:12px !important; border:1px solid #e2e2e6 !important;
  background:#fff !important; color:#666 !important; font-size:15px !important; font-weight:600 !important; }

@media (max-width:768px){
  #sodWrap, #sodWrap .sod_right, #sod_frm .sod_left{ display:block !important; width:100% !important;
    padding:0 !important; }
  #sod_frm .tbl_frm01 th{ display:block !important; width:auto !important;
    padding:14px 16px 0 !important; border-top:0 !important; font-size:13px !important; }
  #sod_frm .tbl_frm01 td{ display:block !important; padding:6px 16px 14px !important;
    border-top:0 !important; border-bottom:1px solid #f4f4f6 !important; }
  #sod_frm .tbl_frm01 tr:last-child td{ border-bottom:0 !important; }
  #sod_frm .frm_input, #sod_frm .frm_address, #sod_frm textarea,
  #sod_frm #od_b_name, #sod_frm #od_name,
  #sod_frm #od_b_hp, #sod_frm #od_hp, #sod_frm #ad_subject{ width:100% !important; max-width:100% !important; }
  #sod_frm .tbl_head03 tbody td.td_prd{ padding:16px 14px 16px 108px !important; }
  #sod_frm .sod_img{ left:14px !important; top:16px !important; width:76px !important; height:76px !important; }
  #sod_frm div#od_tot_price strong{ font-size:22px !important; }
}

/* ═════════ 주문완료 · 주문상세 화면 (주문서와 같은 결) ═════════ */
#sod_fin{ font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Pretendard",
  "Malgun Gothic","맑은 고딕",sans-serif; }
#sod_fin h2, #sod_fin h3{ font-size:16px !important; font-weight:800 !important;
  color:#111 !important; letter-spacing:-.03em !important; margin:0 0 10px !important; padding:0 !important;
  background:none !important; border:0 !important; }

/* 표를 카드로 */
#sod_fin .tbl_head01,
#sod_fin .tbl_head03,
#sod_fin #sod_fin_list,
#sod_fin #sod_fin_pay,
#sod_fin #sod_fin_orderer,
#sod_fin #sod_fin_receiver,
#sod_fin #sod_fin_dvr{ margin:0 0 18px !important; }
#sod_fin .tbl_head01, #sod_fin .tbl_head03{ background:#fff !important;
  border:1px solid #ececef !important; border-radius:14px !important; overflow:hidden !important; }
#sod_fin table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_fin thead th{ padding:13px 12px !important; background:#fafafa !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:13px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_fin tbody th{ width:120px !important; padding:14px 8px 14px 18px !important;
  background:none !important; border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important;
  text-align:left !important; letter-spacing:-.02em !important; }
#sod_fin tbody td{ padding:14px 18px 14px 0 !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:14.5px !important; color:#1b1b1f !important; }
#sod_fin tbody tr:first-child th,
#sod_fin tbody tr:first-child td{ border-top:0 !important; }
/* 주문상품 표는 가운데 정렬 */
#sod_fin #sod_fin_list tbody td{ padding:14px 10px !important; text-align:center !important;
  vertical-align:middle !important; }
#sod_fin #sod_fin_list tbody td img{ border-radius:10px !important; }
#sod_fin #sod_fin_list tbody td.td_prd,
#sod_fin #sod_fin_list tbody td:first-child{ text-align:left !important; }

/* 금액 요약 */
#sod_fin #sod_bsk_tot{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; padding:0 !important; }
#sod_fin #sod_bsk_tot li{ border:0 !important; border-top:1px solid #f4f4f6 !important;
  padding:14px 18px !important; }
#sod_fin #sod_bsk_tot li:first-child{ border-top:0 !important; }
#sod_fin #sod_fin_tot{ margin-top:14px !important; border-radius:14px !important;
  overflow:hidden !important; background:#111 !important; }
#sod_fin #sod_fin_tot *{ color:#fff !important; border-color:rgba(255,255,255,.12) !important; }
#sod_fin #sod_fin_tot th, #sod_fin #sod_fin_tot td{ padding:15px 18px !important;
  background:transparent !important; border-top:1px solid rgba(255,255,255,.12) !important; }
#sod_fin #sod_fin_tot tr:first-child th,
#sod_fin #sod_fin_tot tr:first-child td{ border-top:0 !important; }

/* 단추 */
#sod_fin #sod_fin_cancel a,
#sod_fin .btn_cancel, #sod_fin .btn01{ display:block !important; height:50px !important;
  line-height:48px !important; text-align:center !important; border-radius:12px !important;
  border:1px solid #e2e2e6 !important; background:#fff !important; color:#666 !important;
  font-size:15px !important; font-weight:600 !important; }
@media (max-width:768px){
  #sod_fin tbody th{ display:block !important; width:auto !important;
    padding:14px 16px 0 !important; border-top:0 !important; font-size:13px !important; }
  #sod_fin tbody td{ display:block !important; padding:6px 16px 14px !important;
    border-top:0 !important; border-bottom:1px solid #f4f4f6 !important; text-align:left !important; }
  #sod_fin #sod_fin_list tbody td{ text-align:left !important; }
}

/* 공유 아이콘 — 굵은 폰트아이콘 대신 얇은 선 아이콘으로 */
#sit_star_sns .btn_sns_share{ width:34px !important; height:34px !important; padding:0 !important;
  border:0 !important; background:none !important; cursor:pointer; vertical-align:middle !important; }
#sit_star_sns .btn_sns_share i{ display:block !important; width:34px !important; height:34px !important;
  font-size:0 !important; color:transparent !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='5' r='3'/><circle cx='6' cy='12' r='3'/><circle cx='18' cy='19' r='3'/><line x1='8.6' y1='10.6' x2='15.4' y2='6.4'/><line x1='8.6' y1='13.4' x2='15.4' y2='17.6'/></svg>") !important;
  background-repeat:no-repeat !important; background-position:center !important;
  background-size:21px 21px !important; }
#sit_star_sns .btn_sns_share:hover i{ opacity:.65 !important; }

/* 택배사 줄 */
.sit_ov_tbl .dw-courier-row td{ color:#1b1b1f !important; }

/* 주문서에서는 상품 사진 위 특가 딱지를 띄우지 않는다 (사진이 작아 글자를 덮는다) */
#sod_frm .dw-sale-badge, #sod_fin .dw-sale-badge{ display:none !important; }

/* 추가배송비 안내 문구는 값 아래 작은 글씨로 */
#sod_frm .pay_tbl td{ line-height:1.45 !important; }
#sod_frm .pay_tbl td br{ display:block !important; }
#sod_frm .pay_tbl tr{ flex-wrap:wrap !important; }
#sod_frm .pay_tbl td{ font-size:14.5px !important; }
#sod_frm .pay_tbl td small,
#sod_frm .pay_tbl td .dw-note{ display:block; font-size:12.5px; color:#9a9aa0; }

/* ── 쿠폰 선택 창 — 화면 가운데 띄운다 ── */
.od_coupon_wrap{ position:fixed !important; inset:0 !important; z-index:99999 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  padding:20px !important; margin:0 !important; background:rgba(17,17,17,.45) !important; }
#od_coupon_frm.od_coupon{ position:relative !important; box-sizing:border-box !important;
  top:auto !important; left:auto !important; right:auto !important; bottom:auto !important;
  margin:0 !important; transform:none !important;
  width:100% !important; min-width:0 !important; max-width:460px !important;
  max-height:80vh !important; overflow:auto !important;
  padding:22px 24px 20px !important;
  background:#fff !important; border:1px solid #e6e6ea !important; border-radius:14px !important;
  box-shadow:0 8px 28px rgba(17,17,17,.12) !important; }
#od_coupon_frm.od_coupon h3{ margin:0 0 14px !important; padding:0 !important;
  font-size:16px !important; font-weight:800 !important; color:#111 !important; text-align:left !important; }
#od_coupon_frm .tbl_head02{ border:0 !important; margin:0 !important; }
#od_coupon_frm table{ width:100% !important; border-collapse:collapse !important; }
#od_coupon_frm thead th{ padding:10px 8px !important; background:#fafafa !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:12.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#od_coupon_frm tbody td{ padding:14px 8px !important; border:0 !important;
  border-bottom:1px solid #f4f4f6 !important; font-size:14px !important; vertical-align:middle !important; }
#od_coupon_frm tbody tr:last-child td{ border-bottom:0 !important; }
#od_coupon_frm .od_cp_apply{ height:36px !important; line-height:34px !important; padding:0 14px !important;
  border-radius:9px !important; border:1px solid #111 !important; background:#111 !important;
  color:#fff !important; font-size:13.5px !important; font-weight:700 !important; }
.od_coupon .dw_cp_none{ margin:6px 0 4px !important; padding:22px 14px !important;
  background:#fafafb !important; border-radius:10px !important; text-align:center !important;
  font-size:14px !important; color:#6a6a72 !important; }
.od_coupon .dw_cp_unable{ margin:16px 0 4px !important; padding-top:16px !important;
  border-top:1px solid #f0f0f3 !important; }
.od_coupon .dw_cp_unable h4{ margin:0 0 10px !important; font-size:13px !important;
  font-weight:700 !important; color:#8a8a90 !important; text-align:left !important; }
.od_coupon .dw_cp_unable li{ padding:12px 14px !important; margin-bottom:8px !important;
  background:#fafafb !important; border:1px solid #f0f0f3 !important; border-radius:10px !important;
  text-align:left !important; }
.od_coupon .dw_cp_name{ text-decoration:none !important; color:#6a6a72 !important; font-size:13.5px !important; }
.od_coupon .dw_cp_val{ color:#a5a5ac !important; }
.od_coupon .dw_cp_why{ margin-top:4px !important; color:#e11d48 !important; font-size:12.5px !important; }
/* 닫기 X — 오른쪽 위 작은 단추로 */
#od_coupon_frm .btn_confirm{ position:absolute !important; top:10px !important; right:10px !important;
  margin:0 !important; padding:0 !important; border:0 !important; }
#od_coupon_frm #od_coupon_close{ width:30px !important; height:30px !important; padding:0 !important;
  line-height:30px !important; border:0 !important; border-radius:8px !important;
  background:none !important; color:#9a9aa0 !important; font-size:15px !important; cursor:pointer; }
#od_coupon_frm #od_coupon_close:hover{ background:#f4f4f6 !important; color:#333 !important; }

/* ═════════ 모바일 주문서 (mobile/shop/orderform.sub.php 전용 구조) ═════════
 * 주의: .sod_list / #m_sod_bsk_tot 은 #sod_frm 바깥(#sod_approval_frm)에 있다.
 * 결제수단 묶음 id 도 PC 와 달리 #m_sod_frm_paysel 이다. */

/* 주문상품 카드 */
.dw-order .sod_list{ margin:0 0 14px !important; padding:0 !important; list-style:none !important;
  border:0 !important; background:none !important; }
.dw-order .sod_list > li.sod_li{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; padding:16px !important; margin:0 0 12px !important;
  overflow:hidden !important; position:relative !important; }
.dw-order .sod_list > li.sod_li:after{ content:''; display:block; clear:both; }
.dw-order .sod_list .li_name{ float:none !important; width:auto !important;
  font-size:15px !important; font-weight:700 !important; color:#111 !important;
  line-height:1.45 !important; margin:0 0 12px !important; padding:0 !important; }
.dw-order .sod_list .li_name strong{ font-weight:700 !important; }

/* 이미지 + 옵션 + 쿠폰버튼 — 어긋나지 않게 flex 로 다시 짠다 */
.dw-order .sod_list .li_op_wr{ display:flex !important; flex-wrap:wrap !important;
  gap:12px !important; align-items:flex-start !important; float:none !important;
  width:auto !important; margin:0 !important; padding:0 !important; }
.dw-order .sod_list .total_img{ flex:0 0 76px !important; display:block !important;
  float:none !important; width:76px !important; height:76px !important; margin:0 !important; padding:0 !important; }
.dw-order .sod_list .total_img img{ display:block !important; width:76px !important;
  height:76px !important; border:1px solid #f0f0f2 !important; border-radius:10px !important;
  object-fit:cover !important; margin:0 !important; }
.dw-order .sod_list .sod_opt{ flex:1 1 0 !important; min-width:0 !important; float:none !important;
  width:auto !important; margin:0 !important; padding:0 !important; border:0 !important;
  font-size:13px !important; color:#6a6a72 !important; line-height:1.6 !important; }
.dw-order .sod_list .sod_opt ul,
.dw-order .sod_list .sod_opt li{ list-style:none !important; margin:0 !important;
  padding:0 !important; border:0 !important; background:none !important; }
.dw-order .sod_list .li_mod{ flex:1 1 100% !important; float:none !important; width:auto !important;
  margin:0 !important; padding:0 !important; text-align:left !important; }
.dw-order .sod_list .li_cp{ margin:0 !important; }
.dw-order .sod_list .li_cp .cp_btn,
.dw-order .sod_list .cp_btn{ height:36px !important; line-height:34px !important;
  padding:0 14px !important; border:1px solid #dfdfe4 !important; border-radius:9px !important;
  background:#fff !important; font-size:13px !important; font-weight:600 !important;
  color:#333 !important; cursor:pointer; }

/* 판매가 / 수량 / 배송비 줄 */
.dw-order .sod_list .li_prqty{ display:flex !important; flex-wrap:wrap !important;
  gap:8px 8px !important; float:none !important; width:auto !important;
  margin:14px 0 0 !important; padding:12px 0 0 !important;
  border:0 !important; border-top:1px solid #f2f2f5 !important; }
.dw-order .sod_list .li_prqty_sp{ display:inline-flex !important; align-items:baseline !important;
  gap:4px !important; float:none !important; width:auto !important; margin:0 !important;
  padding:5px 10px !important; border:0 !important; border-radius:8px !important;
  background:#f6f6f8 !important; font-size:13px !important; font-weight:600 !important;
  color:#1b1b1f !important; line-height:1.3 !important; }
.dw-order .sod_list .li_prqty_sp > span{ color:#8a8a90 !important; font-weight:500 !important;
  margin:0 !important; }
.dw-order .sod_list .li_prqty .total_point{ display:none !important; }

/* 옵션 추가금 안내 (PHP 에서 넣는 줄) */
.dw-order .sod_list .dw-optsum{ display:block !important; margin:10px 0 0 !important;
  font-size:12.5px !important; color:#8a8a90 !important; line-height:1.5 !important; }
.dw-order .sod_list .dw-optsum b{ color:#1b1b1f !important; font-weight:700 !important; }

/* 주문금액 */
.dw-order .sod_list .total_price{ display:flex !important; align-items:baseline !important;
  justify-content:space-between !important; float:none !important; width:auto !important;
  margin:12px 0 0 !important; padding:12px 0 0 !important;
  border:0 !important; border-top:1px solid #f2f2f5 !important; text-align:right !important; }
.dw-order .sod_list .total_price > span{ font-size:13.5px !important; font-weight:600 !important;
  color:#6a6a72 !important; }
.dw-order .sod_list .total_price strong{ font-size:18px !important; font-weight:800 !important;
  color:#111 !important; letter-spacing:-.02em !important; }

/* 금액 요약 (모바일) */
.dw-order .sod_ta_wr{ margin:0 !important; padding:0 !important; border:0 !important; }
#m_sod_bsk_tot{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; margin:0 0 16px !important; padding:0 !important; }
#m_sod_bsk_tot table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#m_sod_bsk_tot th{ padding:13px 8px 13px 18px !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important; text-align:left !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important; }
#m_sod_bsk_tot td{ padding:13px 18px 13px 0 !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important; text-align:right !important;
  font-size:15px !important; color:#1b1b1f !important; }
#m_sod_bsk_tot tr:first-child th,
#m_sod_bsk_tot tr:first-child td{ border-top:0 !important; }
#m_sod_bsk_tot tr:last-child th{ font-weight:800 !important; color:#111 !important; }
#m_sod_bsk_tot tr:last-child td strong{ font-size:19px !important; font-weight:800 !important; color:#111 !important; }

/* 결제정보 표 (모바일) */
#sod_frm .odf_tbl{ border:0 !important; background:none !important; }
#sod_frm .odf_tbl table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_frm .odf_tbl tr{ display:flex !important; align-items:center !important; flex-wrap:wrap !important;
  gap:6px 10px !important; padding:14px 18px !important; border-top:1px solid #f4f4f6 !important; }
#sod_frm .odf_tbl tr:first-child{ border-top:0 !important; }
#sod_frm .odf_tbl th{ flex:0 0 auto !important; width:auto !important; padding:0 !important;
  background:none !important; border:0 !important; text-align:left !important; line-height:1.4 !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_frm .odf_tbl td{ flex:1 1 auto !important; padding:0 !important; background:none !important;
  border:0 !important; text-align:right !important; line-height:1.45 !important;
  font-size:15px !important; color:#1b1b1f !important; }
#sod_frm .odf_tbl .cp_btn1{ height:38px !important; line-height:36px !important; padding:0 14px !important;
  border:1px solid #dfdfe4 !important; border-radius:9px !important; background:#fff !important;
  font-size:13.5px !important; font-weight:600 !important; color:#333 !important; }
/* 총 주문금액 줄은 검은 띠 + 흰 글씨 */
#sod_frm .odf_tbl tr.dw-tot-row{ background:#111 !important; border-radius:12px !important;
  margin:10px 18px !important; padding:16px !important; border-top:0 !important; }
#sod_frm .odf_tbl tr.dw-tot-row th,
#sod_frm .odf_tbl tr.dw-tot-row th *{ color:#fff !important; opacity:1 !important;
  font-size:15px !important; font-weight:700 !important; }
#sod_frm .odf_tbl tr.dw-tot-row td,
#sod_frm .odf_tbl tr.dw-tot-row td *{ color:#fff !important; opacity:1 !important;
  font-size:21px !important; font-weight:800 !important; letter-spacing:-.02em !important; }
/* 추가배송비 안내는 작은 글씨로 아래에 */
#sod_frm .odf_tbl .dw-note{ display:block !important; width:100% !important;
  font-size:12.5px !important; color:#9a9aa0 !important; text-align:right !important; font-weight:400 !important; }

/* 결제수단 (모바일) — id 가 #m_sod_frm_paysel 이다.
 * 테마는 모바일에만 회색(#666) 덩어리를 쓰고 아이콘을 안 준다.
 * PC 와 똑같이 흰 타일 + 결제사 아이콘으로 맞춘다. */
#sod_frm_pay h2, #sod_frm_pay h3{ font-size:15px !important; font-weight:800 !important;
  color:#111 !important; margin:0 0 10px !important; padding:0 18px !important;
  border:0 !important; letter-spacing:-.02em !important; }
#m_sod_frm_paysel{ margin:0 18px 16px !important; padding:0 !important;
  border:0 !important; background:none !important; overflow:visible !important; border-radius:0 !important; }
#m_sod_frm_paysel ul{ display:grid !important; grid-template-columns:1fr 1fr !important;
  gap:8px !important; margin:0 !important; padding:0 !important; list-style:none !important;
  border:0 !important; background:none !important; }
#m_sod_frm_paysel ul li{ display:block !important; float:none !important; width:auto !important;
  margin:0 !important; padding:0 !important; border:0 !important; background:none !important;
  list-style:none !important; position:relative !important; line-height:normal !important;
  color:#333 !important; letter-spacing:-.02em !important; text-align:left !important; }
#m_sod_frm_paysel ul li input[type=radio]{ position:absolute !important; width:0 !important;
  height:0 !important; overflow:hidden !important; visibility:hidden !important; margin:0 !important; }
#m_sod_frm_paysel ul li label.lb_icon{ display:block !important; float:none !important;
  box-sizing:border-box !important; width:100% !important; height:60px !important; margin:0 !important;
  padding:19px 0 0 54px !important; border:1px solid #dfdfe4 !important; border-radius:12px !important;
  background-color:#fff !important; background-repeat:no-repeat !important;
  background-image:none; cursor:pointer !important; position:relative !important;
  z-index:1 !important; overflow:hidden !important;
  font-size:14px !important; font-weight:600 !important; color:#333 !important;
  letter-spacing:-.02em !important; line-height:20px !important; text-align:left !important; }
/* 결제사 아이콘 — 좁은 화면이라 브랜드 결제만 로고 타일로, 나머지는 글자만 */
#m_sod_frm_paysel ul li label.lb_icon.bank_icon,
#m_sod_frm_paysel ul li label.lb_icon.vbank_icon,
#m_sod_frm_paysel ul li label.lb_icon.iche_icon,
#m_sod_frm_paysel ul li label.lb_icon.hp_icon,
#m_sod_frm_paysel ul li label.lb_icon.card_icon{
  background-image:none !important; padding:0 !important; text-indent:0 !important;
  line-height:58px !important; text-align:center !important;
  font-size:14.5px !important; font-weight:600 !important; color:#333 !important; }
#m_sod_frm_paysel ul li label.lb_icon.kakaopay_icon{
  background-image:url('/img/kakao.png') !important; background-position:50% 50% !important;
  background-color:#f4dc34 !important; text-indent:-999px !important; padding:0 !important; }
#m_sod_frm_paysel ul li label.lb_icon.naverpay_icon{
  background-image:url('/img/ico-default-naverpay.png') !important; background-position:50% 50% !important;
  background-color:#fff !important; text-indent:-999px !important; padding:0 !important; }
#m_sod_frm_paysel ul li label.lb_icon.PAYCO{  background-image:url('/img/payco.png') !important;  background-position:50% 50% !important; text-indent:-999px !important; padding:0 !important; }
#m_sod_frm_paysel ul li label.lb_icon.KPAY{   background-image:url('/img/kpay.png') !important;   background-position:50% 50% !important; text-indent:-999px !important; padding:0 !important; }
#m_sod_frm_paysel ul li label.lb_icon.PAYNOW{ background-image:url('/img/paynow.png') !important; background-position:50% 50% !important; text-indent:-999px !important; padding:0 !important; }
/* 고른 결제수단 표시 */
#m_sod_frm_paysel input[type=radio]:checked + label.lb_icon{
  border:1px solid #111 !important; box-shadow:inset 0 0 0 2px #111 !important; z-index:5 !important; }
#m_sod_frm_paysel input[type=radio]:checked + label.lb_icon:before{
  content:''; position:absolute; top:7px; right:7px; width:18px; height:18px; border-radius:50%;
  background:#111 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center;
  background-size:12px 12px; text-indent:0; }
#sod_frm_pt_alert{ display:none !important; }

/* 모바일 테마 잔재 정리 */
#m_sod_bsk_tot th{ width:auto !important; white-space:nowrap !important; }
#m_sod_bsk_tot tr > *{ border-width:0 !important; }
.m_sod_bsk_totbox{ border:0 !important; }
.dw-order .sod_list .total_span span{ position:static !important; top:auto !important; left:auto !important; }
.dw-order .sod_list .li_prqty .li_prqty_sp{ width:auto !important; float:none !important;
  border:0 !important; margin-left:0 !important; line-height:1.3 !important; }
.dw-order .sod_list .li_prqty .li_prqty_sp span{ display:inline !important; background:none !important; }
.dw-order .sod_list .li_total{ border:0 !important; margin:0 !important; }

/* 주문 단추 */
#sod_frm .btn_confirm{ padding:0 18px 18px !important; }
#sod_frm .btn_confirm .btn_submit,
#sod_frm .btn_confirm input[type=submit],
#sod_frm .btn_confirm button[type=submit]{ width:100% !important; height:58px !important;
  border:0 !important; border-radius:14px !important; background:#111 !important; color:#fff !important;
  font-size:18px !important; font-weight:800 !important; letter-spacing:-.03em !important; cursor:pointer; }
#sod_frm .btn_confirm .btn_close,
#sod_frm .btn_confirm .btn01{ width:100% !important; height:50px !important; line-height:48px !important;
  margin-top:8px !important; border-radius:12px !important; border:1px solid #e2e2e6 !important;
  background:#fff !important; color:#666 !important; font-size:15px !important; font-weight:600 !important; }

@media (max-width:768px){
  #sodWrap, #sodWrap .sod_right, #sod_frm .sod_left{ display:block !important; width:100% !important;
    padding:0 !important; }
  #sod_frm .tbl_frm01 th{ display:block !important; width:auto !important;
    padding:14px 16px 0 !important; border-top:0 !important; font-size:13px !important; }
  #sod_frm .tbl_frm01 td{ display:block !important; padding:6px 16px 14px !important;
    border-top:0 !important; border-bottom:1px solid #f4f4f6 !important; }
  #sod_frm .tbl_frm01 tr:last-child td{ border-bottom:0 !important; }
  #sod_frm .frm_input, #sod_frm .frm_address, #sod_frm textarea,
  #sod_frm #od_b_name, #sod_frm #od_name,
  #sod_frm #od_b_hp, #sod_frm #od_hp, #sod_frm #ad_subject{ width:100% !important; max-width:100% !important; }
  #sod_frm .tbl_head03 tbody td.td_prd{ padding:16px 14px 16px 108px !important; }
  #sod_frm .sod_img{ left:14px !important; top:16px !important; width:76px !important; height:76px !important; }
  #sod_frm div#od_tot_price strong{ font-size:22px !important; }
}

/* ═════════ 주문완료 · 주문상세 화면 (주문서와 같은 결) ═════════ */
#sod_fin{ font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Pretendard",
  "Malgun Gothic","맑은 고딕",sans-serif; }
#sod_fin h2, #sod_fin h3{ font-size:16px !important; font-weight:800 !important;
  color:#111 !important; letter-spacing:-.03em !important; margin:0 0 10px !important; padding:0 !important;
  background:none !important; border:0 !important; }

/* 표를 카드로 */
#sod_fin .tbl_head01,
#sod_fin .tbl_head03,
#sod_fin #sod_fin_list,
#sod_fin #sod_fin_pay,
#sod_fin #sod_fin_orderer,
#sod_fin #sod_fin_receiver,
#sod_fin #sod_fin_dvr{ margin:0 0 18px !important; }
#sod_fin .tbl_head01, #sod_fin .tbl_head03{ background:#fff !important;
  border:1px solid #ececef !important; border-radius:14px !important; overflow:hidden !important; }
#sod_fin table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_fin thead th{ padding:13px 12px !important; background:#fafafa !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:13px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_fin tbody th{ width:120px !important; padding:14px 8px 14px 18px !important;
  background:none !important; border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important;
  text-align:left !important; letter-spacing:-.02em !important; }
#sod_fin tbody td{ padding:14px 18px 14px 0 !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important;
  font-size:14.5px !important; color:#1b1b1f !important; }
#sod_fin tbody tr:first-child th,
#sod_fin tbody tr:first-child td{ border-top:0 !important; }
/* 주문상품 표는 가운데 정렬 */
#sod_fin #sod_fin_list tbody td{ padding:14px 10px !important; text-align:center !important;
  vertical-align:middle !important; }
#sod_fin #sod_fin_list tbody td img{ border-radius:10px !important; }
#sod_fin #sod_fin_list tbody td.td_prd,
#sod_fin #sod_fin_list tbody td:first-child{ text-align:left !important; }

/* 금액 요약 */
#sod_fin #sod_bsk_tot{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; padding:0 !important; }
#sod_fin #sod_bsk_tot li{ border:0 !important; border-top:1px solid #f4f4f6 !important;
  padding:14px 18px !important; }
#sod_fin #sod_bsk_tot li:first-child{ border-top:0 !important; }
#sod_fin #sod_fin_tot{ margin-top:14px !important; border-radius:14px !important;
  overflow:hidden !important; background:#111 !important; }
#sod_fin #sod_fin_tot *{ color:#fff !important; border-color:rgba(255,255,255,.12) !important; }
#sod_fin #sod_fin_tot th, #sod_fin #sod_fin_tot td{ padding:15px 18px !important;
  background:transparent !important; border-top:1px solid rgba(255,255,255,.12) !important; }
#sod_fin #sod_fin_tot tr:first-child th,
#sod_fin #sod_fin_tot tr:first-child td{ border-top:0 !important; }

/* 단추 */
#sod_fin #sod_fin_cancel a,
#sod_fin .btn_cancel, #sod_fin .btn01{ display:block !important; height:50px !important;
  line-height:48px !important; text-align:center !important; border-radius:12px !important;
  border:1px solid #e2e2e6 !important; background:#fff !important; color:#666 !important;
  font-size:15px !important; font-weight:600 !important; }
@media (max-width:768px){
  #sod_fin tbody th{ display:block !important; width:auto !important;
    padding:14px 16px 0 !important; border-top:0 !important; font-size:13px !important; }
  #sod_fin tbody td{ display:block !important; padding:6px 16px 14px !important;
    border-top:0 !important; border-bottom:1px solid #f4f4f6 !important; text-align:left !important; }
  #sod_fin #sod_fin_list tbody td{ text-align:left !important; }
}

/* 공유 아이콘 — 굵은 폰트아이콘 대신 얇은 선 아이콘으로 */
#sit_star_sns .btn_sns_share{ width:34px !important; height:34px !important; padding:0 !important;
  border:0 !important; background:none !important; cursor:pointer; vertical-align:middle !important; }
#sit_star_sns .btn_sns_share i{ display:block !important; width:34px !important; height:34px !important;
  font-size:0 !important; color:transparent !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='5' r='3'/><circle cx='6' cy='12' r='3'/><circle cx='18' cy='19' r='3'/><line x1='8.6' y1='10.6' x2='15.4' y2='6.4'/><line x1='8.6' y1='13.4' x2='15.4' y2='17.6'/></svg>") !important;
  background-repeat:no-repeat !important; background-position:center !important;
  background-size:21px 21px !important; }
#sit_star_sns .btn_sns_share:hover i{ opacity:.65 !important; }

/* 택배사 줄 */
.sit_ov_tbl .dw-courier-row td{ color:#1b1b1f !important; }

/* 주문서에서는 상품 사진 위 특가 딱지를 띄우지 않는다 (사진이 작아 글자를 덮는다) */
#sod_frm .dw-sale-badge, #sod_fin .dw-sale-badge{ display:none !important; }

/* 추가배송비 안내 문구는 값 아래 작은 글씨로 */
#sod_frm .pay_tbl td{ line-height:1.45 !important; }
#sod_frm .pay_tbl td br{ display:block !important; }
#sod_frm .pay_tbl tr{ flex-wrap:wrap !important; }
#sod_frm .pay_tbl td{ font-size:14.5px !important; }
#sod_frm .pay_tbl td small,
#sod_frm .pay_tbl td .dw-note{ display:block; font-size:12.5px; color:#9a9aa0; }

/* ── 쿠폰 선택 창 — 화면 가운데 띄운다 ── */
.od_coupon_wrap{ position:fixed !important; inset:0 !important; z-index:99999 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  padding:20px !important; margin:0 !important; background:rgba(17,17,17,.45) !important; }
#od_coupon_frm.od_coupon{ position:relative !important; box-sizing:border-box !important;
  top:auto !important; left:auto !important; right:auto !important; bottom:auto !important;
  margin:0 !important; transform:none !important;
  width:100% !important; min-width:0 !important; max-width:460px !important;
  max-height:80vh !important; overflow:auto !important;
  padding:22px 24px 20px !important;
  background:#fff !important; border:1px solid #e6e6ea !important; border-radius:14px !important;
  box-shadow:0 8px 28px rgba(17,17,17,.12) !important; }
#od_coupon_frm.od_coupon h3{ margin:0 0 14px !important; padding:0 !important;
  font-size:16px !important; font-weight:800 !important; color:#111 !important; text-align:left !important; }
#od_coupon_frm .tbl_head02{ border:0 !important; margin:0 !important; }
#od_coupon_frm table{ width:100% !important; border-collapse:collapse !important; }
#od_coupon_frm thead th{ padding:10px 8px !important; background:#fafafa !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:12.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#od_coupon_frm tbody td{ padding:14px 8px !important; border:0 !important;
  border-bottom:1px solid #f4f4f6 !important; font-size:14px !important; vertical-align:middle !important; }
#od_coupon_frm tbody tr:last-child td{ border-bottom:0 !important; }
#od_coupon_frm .od_cp_apply{ height:36px !important; line-height:34px !important; padding:0 14px !important;
  border-radius:9px !important; border:1px solid #111 !important; background:#111 !important;
  color:#fff !important; font-size:13.5px !important; font-weight:700 !important; }
.od_coupon .dw_cp_none{ margin:6px 0 4px !important; padding:22px 14px !important;
  background:#fafafb !important; border-radius:10px !important; text-align:center !important;
  font-size:14px !important; color:#6a6a72 !important; }
.od_coupon .dw_cp_unable{ margin:16px 0 4px !important; padding-top:16px !important;
  border-top:1px solid #f0f0f3 !important; }
.od_coupon .dw_cp_unable h4{ margin:0 0 10px !important; font-size:13px !important;
  font-weight:700 !important; color:#8a8a90 !important; text-align:left !important; }
.od_coupon .dw_cp_unable li{ padding:12px 14px !important; margin-bottom:8px !important;
  background:#fafafb !important; border:1px solid #f0f0f3 !important; border-radius:10px !important;
  text-align:left !important; }
.od_coupon .dw_cp_name{ text-decoration:none !important; color:#6a6a72 !important; font-size:13.5px !important; }
.od_coupon .dw_cp_val{ color:#a5a5ac !important; }
.od_coupon .dw_cp_why{ margin-top:4px !important; color:#e11d48 !important; font-size:12.5px !important; }
/* 닫기 X — 오른쪽 위 작은 단추로 */
#od_coupon_frm .btn_confirm{ position:absolute !important; top:10px !important; right:10px !important;
  margin:0 !important; padding:0 !important; border:0 !important; }
#od_coupon_frm #od_coupon_close{ width:30px !important; height:30px !important; padding:0 !important;
  line-height:30px !important; border:0 !important; border-radius:8px !important;
  background:none !important; color:#9a9aa0 !important; font-size:15px !important; cursor:pointer; }
#od_coupon_frm #od_coupon_close:hover{ background:#f4f4f6 !important; color:#333 !important; }

/* ═════════ 모바일 주문서 (mobile/shop/orderform.sub.php 전용 구조) ═════════
 * 주의: .sod_list / #m_sod_bsk_tot 은 #sod_frm 바깥(#sod_approval_frm)에 있다.
 * 결제수단 묶음 id 도 PC 와 달리 #m_sod_frm_paysel 이다. */

/* 주문상품 카드 */
.dw-order .sod_list{ margin:0 0 14px !important; padding:0 !important; list-style:none !important;
  border:0 !important; background:none !important; }
.dw-order .sod_list > li.sod_li{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; padding:16px !important; margin:0 0 12px !important;
  overflow:hidden !important; position:relative !important; }
.dw-order .sod_list > li.sod_li:after{ content:''; display:block; clear:both; }
.dw-order .sod_list .li_name{ float:none !important; width:auto !important;
  font-size:15px !important; font-weight:700 !important; color:#111 !important;
  line-height:1.45 !important; margin:0 0 12px !important; padding:0 !important; }
.dw-order .sod_list .li_name strong{ font-weight:700 !important; }

/* 이미지 + 옵션 + 쿠폰버튼 — 어긋나지 않게 flex 로 다시 짠다 */
.dw-order .sod_list .li_op_wr{ display:flex !important; flex-wrap:wrap !important;
  gap:12px !important; align-items:flex-start !important; float:none !important;
  width:auto !important; margin:0 !important; padding:0 !important; }
.dw-order .sod_list .total_img{ flex:0 0 76px !important; display:block !important;
  float:none !important; width:76px !important; height:76px !important; margin:0 !important; padding:0 !important; }
.dw-order .sod_list .total_img img{ display:block !important; width:76px !important;
  height:76px !important; border:1px solid #f0f0f2 !important; border-radius:10px !important;
  object-fit:cover !important; margin:0 !important; }
.dw-order .sod_list .sod_opt{ flex:1 1 0 !important; min-width:0 !important; float:none !important;
  width:auto !important; margin:0 !important; padding:0 !important; border:0 !important;
  font-size:13px !important; color:#6a6a72 !important; line-height:1.6 !important; }
.dw-order .sod_list .sod_opt ul,
.dw-order .sod_list .sod_opt li{ list-style:none !important; margin:0 !important;
  padding:0 !important; border:0 !important; background:none !important; }
.dw-order .sod_list .li_mod{ flex:1 1 100% !important; float:none !important; width:auto !important;
  margin:0 !important; padding:0 !important; text-align:left !important; }
.dw-order .sod_list .li_cp{ margin:0 !important; }
.dw-order .sod_list .li_cp .cp_btn,
.dw-order .sod_list .cp_btn{ height:36px !important; line-height:34px !important;
  padding:0 14px !important; border:1px solid #dfdfe4 !important; border-radius:9px !important;
  background:#fff !important; font-size:13px !important; font-weight:600 !important;
  color:#333 !important; cursor:pointer; }

/* 판매가 / 수량 / 배송비 줄 */
.dw-order .sod_list .li_prqty{ display:flex !important; flex-wrap:wrap !important;
  gap:8px 8px !important; float:none !important; width:auto !important;
  margin:14px 0 0 !important; padding:12px 0 0 !important;
  border:0 !important; border-top:1px solid #f2f2f5 !important; }
.dw-order .sod_list .li_prqty_sp{ display:inline-flex !important; align-items:baseline !important;
  gap:4px !important; float:none !important; width:auto !important; margin:0 !important;
  padding:5px 10px !important; border:0 !important; border-radius:8px !important;
  background:#f6f6f8 !important; font-size:13px !important; font-weight:600 !important;
  color:#1b1b1f !important; line-height:1.3 !important; }
.dw-order .sod_list .li_prqty_sp > span{ color:#8a8a90 !important; font-weight:500 !important;
  margin:0 !important; }
.dw-order .sod_list .li_prqty .total_point{ display:none !important; }

/* 옵션 추가금 안내 (PHP 에서 넣는 줄) */
.dw-order .sod_list .dw-optsum{ display:block !important; margin:10px 0 0 !important;
  font-size:12.5px !important; color:#8a8a90 !important; line-height:1.5 !important; }
.dw-order .sod_list .dw-optsum b{ color:#1b1b1f !important; font-weight:700 !important; }

/* 주문금액 */
.dw-order .sod_list .total_price{ display:flex !important; align-items:baseline !important;
  justify-content:space-between !important; float:none !important; width:auto !important;
  margin:12px 0 0 !important; padding:12px 0 0 !important;
  border:0 !important; border-top:1px solid #f2f2f5 !important; text-align:right !important; }
.dw-order .sod_list .total_price > span{ font-size:13.5px !important; font-weight:600 !important;
  color:#6a6a72 !important; }
.dw-order .sod_list .total_price strong{ font-size:18px !important; font-weight:800 !important;
  color:#111 !important; letter-spacing:-.02em !important; }

/* 금액 요약 (모바일) */
.dw-order .sod_ta_wr{ margin:0 !important; padding:0 !important; border:0 !important; }
#m_sod_bsk_tot{ background:#fff !important; border:1px solid #ececef !important;
  border-radius:14px !important; overflow:hidden !important; margin:0 0 16px !important; padding:0 !important; }
#m_sod_bsk_tot table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#m_sod_bsk_tot th{ padding:13px 8px 13px 18px !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important; text-align:left !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important; }
#m_sod_bsk_tot td{ padding:13px 18px 13px 0 !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important; text-align:right !important;
  font-size:15px !important; color:#1b1b1f !important; }
#m_sod_bsk_tot tr:first-child th,
#m_sod_bsk_tot tr:first-child td{ border-top:0 !important; }
#m_sod_bsk_tot tr:last-child th{ font-weight:800 !important; color:#111 !important; }
#m_sod_bsk_tot tr:last-child td strong{ font-size:19px !important; font-weight:800 !important; color:#111 !important; }

/* 결제정보 표 (모바일) */
#sod_frm .odf_tbl{ border:0 !important; background:none !important; }
#sod_frm .odf_tbl table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_frm .odf_tbl tr{ display:flex !important; align-items:center !important; flex-wrap:wrap !important;
  gap:6px 10px !important; padding:14px 18px !important; border-top:1px solid #f4f4f6 !important; }
#sod_frm .odf_tbl tr:first-child{ border-top:0 !important; }
#sod_frm .odf_tbl th{ flex:0 0 auto !important; width:auto !important; padding:0 !important;
  background:none !important; border:0 !important; text-align:left !important; line-height:1.4 !important;
  font-size:14px !important; font-weight:600 !important; color:#6a6a72 !important; }
#sod_frm .odf_tbl td{ flex:1 1 auto !important; padding:0 !important; background:none !important;
  border:0 !important; text-align:right !important; line-height:1.45 !important;
  font-size:15px !important; color:#1b1b1f !important; }
#sod_frm .odf_tbl .cp_btn1{ height:38px !important; line-height:36px !important; padding:0 14px !important;
  border:1px solid #dfdfe4 !important; border-radius:9px !important; background:#fff !important;
  font-size:13.5px !important; font-weight:600 !important; color:#333 !important; }
/* 총 주문금액 줄은 검은 띠 + 흰 글씨 */
#sod_frm .odf_tbl tr.dw-tot-row{ background:#111 !important; border-radius:12px !important;
  margin:10px 18px !important; padding:16px !important; border-top:0 !important; }
#sod_frm .odf_tbl tr.dw-tot-row th,
#sod_frm .odf_tbl tr.dw-tot-row th *{ color:#fff !important; opacity:1 !important;
  font-size:15px !important; font-weight:700 !important; }
#sod_frm .odf_tbl tr.dw-tot-row td,
#sod_frm .odf_tbl tr.dw-tot-row td *{ color:#fff !important; opacity:1 !important;
  font-size:21px !important; font-weight:800 !important; letter-spacing:-.02em !important; }
/* 추가배송비 안내는 작은 글씨로 아래에 */
#sod_frm .odf_tbl .dw-note{ display:block !important; width:100% !important;
  font-size:12.5px !important; color:#9a9aa0 !important; text-align:right !important; font-weight:400 !important; }

/* 결제수단 (모바일) — id 가 #m_sod_frm_paysel 이다. 테마 아이콘은 그대로 두고 타일만 정리 */
#sod_frm_pay h2, #sod_frm_pay h3{ font-size:15px !important; font-weight:800 !important;
  color:#111 !important; margin:0 0 10px !important; padding:0 18px !important; }
#m_sod_frm_paysel{ margin:0 18px 16px !important; padding:0 !important;
  border:0 !important; background:none !important; overflow:visible !important; border-radius:0 !important; }
#m_sod_frm_paysel ul{ display:grid !important; grid-template-columns:1fr 1fr !important;
  gap:8px !important; margin:0 !important; padding:0 !important; list-style:none !important;
  border:0 !important; background:none !important; }
#m_sod_frm_paysel li{ float:none !important; width:auto !important; margin:0 !important;
  padding:0 !important; border:0 !important; background:none !important; list-style:none !important;
  position:relative !important; }
#m_sod_frm_paysel li input[type=radio]{ position:absolute !important; opacity:0 !important;
  width:1px !important; height:1px !important; margin:0 !important; }
#m_sod_frm_paysel .lb_icon{ display:block !important; float:none !important; box-sizing:border-box !important;
  width:100% !important; height:54px !important; margin:0 !important;
  border:1px solid #dfdfe4 !important; border-radius:12px !important;
  background-color:#fff !important; background-position:center center !important;
  background-repeat:no-repeat !important; cursor:pointer !important; position:relative !important; }
#m_sod_frm_paysel input[type=radio]:checked + .lb_icon{
  border:1px solid #111 !important; box-shadow:inset 0 0 0 2px #111 !important; z-index:5 !important; }
#m_sod_frm_paysel input[type=radio]:checked + .lb_icon:after{
  content:''; position:absolute; top:7px; right:7px; width:17px; height:17px; border-radius:50%;
  background:#111 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center;
  background-size:11px 11px; }
/* 아이콘 이미지가 없는(글자만 있는) 결제수단은 글자를 보이게 */
#m_sod_frm_paysel .lb_icon:not([class*="_icon"]):not([class*="pay"]){
  line-height:52px !important; text-align:center !important; text-indent:0 !important;
  font-size:14.5px !important; font-weight:600 !important; color:#333 !important; }
#sod_frm_pt_alert{ display:none !important; }

/* 모바일 섹션·입력칸은 위쪽 규칙(.odf_list)에서 이미 맞춰 뒀다 */

/* 배송/교환 안내 */
.dw-dex{ padding:26px 4px 40px; max-width:860px; margin:0 auto; }
.dw-dex h3{ margin:26px 0 10px; font-size:16px; font-weight:800; color:#111; letter-spacing:-.03em; }
.dw-dex h3:first-child{ margin-top:0; }
.dw-dex ul{ margin:0 0 6px; padding:0; list-style:none; }
.dw-dex li{ position:relative; padding:9px 0 9px 14px; border-bottom:1px solid #f4f4f6;
  font-size:14.5px; color:#333; line-height:1.6; letter-spacing:-.02em; }
.dw-dex li:before{ content:''; position:absolute; left:2px; top:18px;
  width:3px; height:3px; border-radius:50%; background:#c9c9cf; }
.dw-dex li:last-child{ border-bottom:0; }
.dw-dex li b{ display:inline-block; min-width:86px; color:#6a6a72; font-weight:600; }
.dw-dex li em{ font-style:normal; font-weight:700; color:#111; }
.dw-dex .dw-dex-lead{ margin:0 0 10px; padding:14px 16px; border-radius:10px;
  background:#fff3ec; border:1px solid #ffdfcc; font-size:14.5px; color:#8a5a3b; line-height:1.65; }
.dw-dex .dw-dex-lead b{ color:#c2410c; }
.dw-dex .dw-dex-sub{ margin:8px 0; font-size:14px; color:#555; line-height:1.65; }
@media (max-width:768px){
  .dw-dex{ padding:20px 14px 34px; }
  .dw-dex li{ font-size:13.5px; }
  .dw-dex li b{ display:block; min-width:0; margin-bottom:2px; }
}

/* 고객상담센터 — 도매센터 직통 번호는 작게 */
.counsel_box .dw-office-tel{ margin:4px 0 10px !important; font-size:12.5px !important;
  color:#9a9aa0 !important; letter-spacing:-.02em !important; }
.dw-dex .dw-dex-small{ font-size:12.5px; color:#9a9aa0; font-weight:400; }

/* ═════════ 보내는 분 안내 문구 ═════════ */
.dw-sender-note{ margin:0 0 12px !important; padding:11px 14px !important;
  background:#fff8ee !important; border:1px solid #ffe2bb !important; border-radius:10px !important;
  font-size:13px !important; line-height:1.55 !important; color:#7a5722 !important; }
.dw-sender-note b{ color:#a8641a !important; font-weight:700 !important; }
#sod_frm .dw-sender-note{ margin:0 18px 12px !important; }

/* ═════════ 옵션 추가금 표기 ═════════ */
/* PC: 포인트 칸은 쓰지 않으므로 감추고, 옵션 추가금 칸을 넣는다 */
#sod_frm .sod_infolist li.dw-pointli{ display:none !important; }
#sod_frm .sod_infolist{ display:flex !important; flex-wrap:wrap !important; gap:0 !important;
  border:0 !important; margin:0 !important; padding:0 !important; }
#sod_frm .sod_infolist > li{ flex:1 1 0 !important; min-width:84px !important; float:none !important;
  width:auto !important; margin:0 !important; padding:10px 8px !important; border:0 !important;
  text-align:center !important; }
#sod_frm .sod_infolist > li + li{ border-left:1px solid #f2f2f5 !important; }
#sod_frm .sod_infolist > li strong{ display:block !important; margin:0 0 5px !important;
  font-size:12.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#sod_frm .sod_infolist > li p{ margin:0 !important; font-size:14.5px !important;
  font-weight:600 !important; color:#1b1b1f !important; }
#sod_frm .sod_infolist > li.dw-optli p{ color:#c0392b !important; font-weight:700 !important; }
#sod_frm .sod_infolist > li:last-child p,
#sod_frm .sod_infolist > li:last-child .total_prc{ font-size:16px !important; font-weight:800 !important;
  color:#111 !important; }

/* ═════════ 얼리버드 할인 표기 ═════════ */
.dw-order .sod_list .dw-early-line{ display:flex !important; align-items:center !important;
  justify-content:space-between !important; margin:10px 0 0 !important; padding:9px 12px !important;
  background:#fff1f0 !important; border:1px solid #ffd9d5 !important; border-radius:9px !important;
  font-size:13px !important; }
.dw-order .sod_list .dw-early-line span{ color:#a83b30 !important; font-weight:600 !important; }
.dw-order .sod_list .dw-early-line b{ color:#c0392b !important; font-weight:800 !important;
  font-size:14px !important; }
#m_sod_bsk_tot tr.dw-early-row th{ color:#c0392b !important; font-weight:700 !important; }
#m_sod_bsk_tot tr.dw-early-row td{ color:#c0392b !important; font-weight:700 !important; }
#sod_frm .sod_infolist > li.dw-earlyli strong{ color:#c0392b !important; }
#sod_frm .sod_infolist > li.dw-earlyli p{ color:#c0392b !important; font-weight:700 !important; }
#sod_frm .sod_infolist > li strong,
#sod_frm .sod_infolist > li p{ float:none !important; width:auto !important; clear:both !important; }
#sod_frm .sod_infolist > li{ position:relative !important; }
#sod_frm .sod_infolist > li strong{ position:static !important; left:auto !important; top:auto !important;
  transform:none !important; }
#sod_frm .sod_infolist > li p{ position:static !important; }

/* 모바일 상품카드 — 테마의 absolute/margin 잔재 정리 (대표이미지 어긋남 원인) */
.dw-order .sod_list{ position:static !important; }
.dw-order .sod_list .sod_li{ padding:16px !important; }
.dw-order .sod_list .li_name{ background:none !important; min-height:0 !important;
  overflow:visible !important; text-overflow:clip !important; white-space:normal !important;
  letter-spacing:-.02em !important; }
.dw-order .sod_list .li_name a,
.dw-order .sod_list .li_name strong{ display:block !important; padding:0 !important;
  border:0 !important; height:auto !important; line-height:1.45 !important;
  font-size:15px !important; font-weight:700 !important; color:#111 !important; }
.dw-order .sod_list .total_img{ position:static !important; top:auto !important; left:auto !important; }
.dw-order .sod_list .sod_opt{ margin:0 !important; padding:0 !important;
  min-height:0 !important; background:none !important; border:0 !important; font-size:13px !important; }
.dw-order .sod_list .li_cp{ position:static !important; margin:0 !important; }
.dw-order .sod_list .li_cp .cp_btn{ background:#fff !important; color:#333 !important;
  border:1px solid #dfdfe4 !important; }
.dw-order .sod_list .li_prqty{ margin:14px 0 0 !important; }
.dw-order .sod_list .total_span{ padding:12px 0 0 !important; }

/* 제주 배송 불가 안내 */
.dw-jeju-msg{ display:block !important; margin:10px 0 0 !important; padding:12px 14px !important;
  background:#fdecea !important; border:1px solid #f5c2bd !important; border-radius:10px !important;
  font-size:13.5px !important; line-height:1.6 !important; color:#a8241a !important; font-weight:600 !important; }
.dw-locked{ opacity:.45 !important; cursor:not-allowed !important; }

/* 상품 카드의 할인 딱지는 당분간 감춘다 (사장님 요청).
 * 다시 쓰고 싶으면 이 한 줄만 지우면 원래대로 나온다. */
.item .dw-off{ display:none !important; }

/* 할인특가 홀로그램 스티커도 감춘다 (사장님 요청).
 * 메인/목록 스크립트가 계속 붙이지만 화면에는 안 나오게 한다.
 * 다시 쓰려면 이 한 줄만 지우면 된다. */
.dw-sale-badge{ display:none !important; }

/* 사진 확대(돋보기) 안 씀 — 좌우로 넘겨 보는 것만 남긴다 */
#popup_item_image, #sit_pvi_big .fa-search-plus{ display:none !important; }
#sit_pvi_big a{ cursor:default !important; }
/* 화살표는 눈에 거슬리지 않게 조금 더 얇고 은은하게 */
.dw-gal-arw{ width:34px !important; height:34px !important; line-height:34px !important;
  font-size:13px !important; background:rgba(255,255,255,.82) !important; color:#444 !important;
  box-shadow:0 1px 4px rgba(0,0,0,.14) !important; opacity:.85; transition:opacity .15s ease; }
.dw-gal-arw:hover{ opacity:1; background:#fff !important; }
.dw-gal-arw.prev{ left:10px !important; } .dw-gal-arw.next{ right:10px !important; }

/* ═════════════════════════════════════════════════════════
   마이페이지 · 주문조회 — 주문서와 같은 카드 톤으로 통일
   ═════════════════════════════════════════════════════════ */
#smb_my{ padding:24px 0 40px !important; }
#smb_my h2{ font-size:17px !important; font-weight:800 !important; color:#111 !important;
  letter-spacing:-.03em !important; margin:0 0 12px !important; padding:0 !important;
  border:0 !important; }

/* 프로필 카드 */
#smb_my_ov{ position:relative !important; background:#fff !important;
  border:1px solid #ececef !important; border-radius:14px !important;
  padding:22px !important; margin:0 0 26px !important;
  display:flex !important; flex-direction:column !important; gap:0 !important; }
#smb_my_ov > h2{ position:static !important; width:auto !important; height:auto !important;
  overflow:visible !important; clip:auto !important; order:0 !important;
  font-size:0 !important; margin:0 !important; }
#smb_my_ov .my_ov_name{ order:1 !important; display:flex !important; align-items:center !important;
  gap:10px !important; width:auto !important; margin:0 0 16px !important; padding:0 !important;
  border:0 !important; background:none !important;
  font-size:18px !important; font-weight:800 !important; color:#111 !important;
  letter-spacing:-.03em !important; }
#smb_my_ov .my_ov_name img{ width:38px !important; height:38px !important;
  border-radius:50% !important; background:#f2f2f5 !important; }

/* 보유쿠폰 (포인트는 안 쓰므로 감춘다) */
#smb_my_ov .cou_pt{ position:static !important; order:2 !important; width:auto !important;
  display:flex !important; align-items:center !important; gap:8px !important;
  margin:0 0 16px !important; padding:0 !important; }
#smb_my_ov .cou_pt dt{ margin:0 !important; padding:0 !important; float:none !important;
  font-size:13.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#smb_my_ov .cou_pt dd{ margin:0 18px 0 0 !important; padding:0 !important; float:none !important;
  font-size:15px !important; font-weight:800 !important; color:#111 !important; }
/* 첫 짝(보유포인트) 숨김 */
#smb_my_ov .cou_pt dt:nth-of-type(1),
#smb_my_ov .cou_pt dd:nth-of-type(1){ display:none !important; }

/* 회원정보수정 · 탈퇴 단추 — 머리글에 가려지지 않게 카드 안으로 내린다 */
#smb_my_act{ position:static !important; top:auto !important; right:auto !important;
  order:9 !important; width:auto !important; margin:16px 0 0 !important; padding:16px 0 0 !important;
  border-top:1px solid #f2f2f5 !important; }
#smb_my_act ul{ display:flex !important; flex-wrap:wrap !important; gap:8px !important;
  margin:0 !important; padding:0 !important; list-style:none !important; }
#smb_my_act li{ float:none !important; margin:0 !important; padding:0 !important;
  border:0 !important; list-style:none !important; }
#smb_my_act li a,
#smb_my_act li .btn01{ display:inline-flex !important; align-items:center !important;
  height:38px !important; padding:0 14px !important; margin:0 !important;
  border:1px solid #dfdfe4 !important; border-radius:9px !important;
  background:#fff !important; color:#333 !important;
  font-size:13.5px !important; font-weight:600 !important; line-height:1 !important;
  letter-spacing:-.02em !important; }
#smb_my_act li a:hover{ border-color:#111 !important; color:#111 !important; }

/* 기본 정보 표 */
#smb_my_ov .op_area{ order:3 !important; display:grid !important;
  grid-template-columns:96px 1fr 96px 1fr !important; gap:0 !important;
  margin:0 !important; padding:14px 0 0 !important;
  border:0 !important; border-top:1px solid #f2f2f5 !important; background:none !important; }
#smb_my_ov .op_area dt{ padding:9px 0 !important; margin:0 !important; float:none !important;
  width:auto !important; background:none !important; border:0 !important;
  font-size:13.5px !important; font-weight:600 !important; color:#8a8a90 !important; }
#smb_my_ov .op_area dd{ padding:9px 0 !important; margin:0 !important; float:none !important;
  width:auto !important; background:none !important; border:0 !important;
  font-size:14px !important; color:#1b1b1f !important; }
#smb_my_ov .my_ov_btn{ order:10 !important; margin:12px 0 0 !important; text-align:center !important; }
#smb_my_ov .my_ov_btn button{ height:30px !important; padding:0 14px !important;
  border:1px solid #e6e6ea !important; border-radius:8px !important; background:#fff !important;
  color:#8a8a90 !important; font-size:12.5px !important; }

/* 최근 주문내역 · 위시리스트 카드 */
#smb_my_od, #smb_my_wish{ position:relative !important; margin:0 0 26px !important; }
#smb_my_od .tblWrap, #smb_my_wish .list_02{ background:#fff !important;
  border:1px solid #ececef !important; border-radius:14px !important;
  overflow:hidden !important; padding:0 !important; }
#smb_my_od table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#smb_my_od thead th{ padding:14px 10px !important; background:#fafafb !important;
  border:0 !important; border-bottom:1px solid #f0f0f3 !important;
  font-size:13px !important; font-weight:700 !important; color:#6a6a72 !important;
  letter-spacing:-.02em !important; }
#smb_my_od tbody td{ padding:16px 10px !important; background:none !important;
  border:0 !important; border-top:1px solid #f4f4f6 !important; text-align:center !important;
  font-size:14px !important; color:#1b1b1f !important; }
#smb_my_od tbody tr:first-child td{ border-top:0 !important; }
#smb_my_od tbody td a{ color:#111 !important; font-weight:700 !important; }
#smb_my_od .smb_my_more, #smb_my_wish .smb_my_more{ position:absolute !important;
  top:0 !important; right:0 !important; }
#smb_my_od .smb_my_more a, #smb_my_wish .smb_my_more a{ display:inline-flex !important;
  align-items:center !important; gap:4px !important; height:30px !important; padding:0 12px !important;
  border:1px solid #e6e6ea !important; border-radius:8px !important; background:#fff !important;
  font-size:12.5px !important; font-weight:600 !important; color:#6a6a72 !important; }

/* 상태 뱃지 */
#smb_my_od tbody td .btn01, #smb_my_od tbody td span[class*=stat]{ border-radius:7px !important; }

/* 포인트는 쓰지 않는다 — 화면에서 모두 감춘다 */
.dw-nopoint{ display:none !important; }

/* 주문내역조회 목록 (#sod_v) */
#sod_v{ padding:24px 0 40px !important; }
#sod_v .tbl_head03, #sod_v .tbl_wrap{ background:#fff !important;
  border:1px solid #ececef !important; border-radius:14px !important;
  overflow:hidden !important; padding:0 !important; margin:0 0 20px !important; }
#sod_v table{ width:100% !important; border:0 !important; border-collapse:collapse !important; }
#sod_v thead th{ padding:14px 10px !important; background:#fafafb !important; border:0 !important;
  border-bottom:1px solid #f0f0f3 !important; font-size:13px !important; font-weight:700 !important;
  color:#6a6a72 !important; letter-spacing:-.02em !important; }
#sod_v tbody td{ padding:16px 10px !important; background:none !important; border:0 !important;
  border-top:1px solid #f4f4f6 !important; text-align:center !important;
  font-size:14px !important; color:#1b1b1f !important; }
#sod_v tbody tr:first-child td{ border-top:0 !important; }
#sod_v tbody td a{ color:#111 !important; font-weight:700 !important; }
#sod_v .btn01, #sod_v .btn02{ border-radius:7px !important; }

/* 마이페이지 보유쿠폰 줄 간격 */
#smb_my_ov .cou_pt dd{ margin:0 !important; }
#smb_my_ov .cou_pt dt{ margin-right:6px !important; }
#smb_my_ov .cou_pt dt{ width:auto !important; }

/* ═════════ 주문상세 — 얼리버드 할인 · 취소 안내 ═════════ */
.dw-early-tag{ display:inline-block !important; margin:6px 0 0 !important;
  padding:3px 8px !important; border-radius:7px !important;
  background:#fff1f0 !important; border:1px solid #ffd9d5 !important;
  font-size:12px !important; font-weight:700 !important; color:#c0392b !important;
  line-height:1.4 !important; white-space:nowrap !important; }
#sod_bsk_tot li.dw-early-li span{ color:#c0392b !important; font-weight:700 !important; }
#sod_bsk_tot li.dw-early-li strong{ color:#c0392b !important; font-weight:800 !important; }

/* 취소 안내 띠 */
.dw-cancel-box{ display:block !important; margin:0 0 20px !important; padding:16px 18px !important;
  background:#fdecea !important; border:1px solid #f3bcb5 !important; border-radius:12px !important;
  text-align:center !important; }
.dw-cancel-box strong{ display:block !important; font-size:17px !important; font-weight:800 !important;
  color:#c0392b !important; letter-spacing:-.03em !important; }
.dw-cancel-box .dw-cancel-reason{ display:block !important; margin-top:6px !important;
  font-size:13.5px !important; color:#8a4a42 !important; }
.dw-cancel-box .dw-cancel-reason:empty{ display:none !important; }

/* 취소된 줄은 흐리게 + 상태 글씨 빨강 */
#sod_fin_list tbody tr.dw-canceled-row td{ color:#9a9aa0 !important; }
#sod_fin_list tbody tr.dw-canceled-row td:last-child{ color:#c0392b !important; font-weight:700 !important; }
