@charset "utf-8";
/* ============================================================
   shop_02 (FRESHDAY) 테마 · 쇼핑몰 화면 (메인 · 상품리스트 · 상품상세)
   ============================================================ */

/* ── 메인 히어로 ────────────────────────────────────── */
.f-hero-wrap{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;margin-bottom:44px}
.f-hero{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:320px;display:flex;align-items:center;color:#fff;background:linear-gradient(120deg,var(--green) 0%,var(--lime) 100%);background-size:cover;background-position:center}
.f-hero.has-img:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,96,53,.82),rgba(23,96,53,.28))}
.f-hero:not(.has-img):after{content:"";position:absolute;right:-60px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.14)}
.f-hero-in{position:relative;z-index:2;padding:44px 46px}
.f-hero-label{display:inline-block;padding:5px 14px;border-radius:999px;background:rgba(255,255,255,.22);font-family:var(--latin);font-size:12px;font-weight:800;letter-spacing:.12em;margin-bottom:16px}
.f-hero-title{font-family:var(--round);font-size:clamp(28px,3.4vw,42px);line-height:1.3;letter-spacing:-.01em}
.f-hero-text{margin-top:14px;font-size:15.5px;opacity:.92;line-height:1.75}
.f-hero .f-btn{margin-top:26px}
.f-hero-side{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.f-hero-sbox{position:relative;border-radius:var(--r-lg);padding:26px 24px;color:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.f-hero-sbox.tone-lime{background:linear-gradient(140deg,#8cc63f,#4fa03a)}
.f-hero-sbox.tone-orange{background:linear-gradient(140deg,#ff9a3d,#f26d0d)}
.f-hero-sbox.tone-green{background:linear-gradient(140deg,#2f9d5b,#176035)}
.f-hero-sbox span{font-size:12.5px;opacity:.9;margin-bottom:8px}
.f-hero-sbox strong{font-family:var(--round);font-size:22px;line-height:1.35}
.f-hero-sbox i{position:absolute;right:22px;bottom:20px;font-size:17px;opacity:.85;transition:.2s}
.f-hero-sbox:hover i{transform:translateX(5px)}

/* ── 구역 공통 ──────────────────────────────────────── */
.f-sect{margin-bottom:52px}
.f-sect-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.f-eyebrow{display:inline-block;padding:4px 12px;border-radius:999px;background:var(--soft);color:var(--orange);font-family:var(--latin);font-size:11.5px;font-weight:800;letter-spacing:.1em;margin-bottom:10px}
.f-sect-hd h2{font-family:var(--round);font-size:27px;color:var(--ink)}
.f-sect-hd p{margin-top:6px;font-size:14px;color:var(--gray)}

/* ── 카드 그리드 ────────────────────────────────────── */
.f-grid{display:grid;gap:22px}
.f-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.f-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.f-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.f-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.f-card:hover{box-shadow:0 14px 30px -18px rgba(36,48,36,.5);transform:translateY(-3px);border-color:var(--lime)}
.f-card-img{position:relative;display:block;aspect-ratio:1/1;background:var(--soft);overflow:hidden}
.f-card-img img{width:100%;height:100%;object-fit:cover}
.f-soldout{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(36,48,36,.55);color:#fff;font-size:15px;font-weight:700}
.f-free{position:absolute;left:10px;top:10px;height:24px;padding:0 10px;border-radius:999px;background:var(--green);color:#fff;font-size:11.5px;font-weight:700;line-height:24px}
.f-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1 1 auto}
.f-card-name{display:block;font-size:15px;font-weight:500;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.f-card-desc{margin-top:5px;font-size:12.5px;color:var(--gray2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.f-card-price{margin-top:10px;display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.f-card-price strong{font-family:var(--latin);font-size:19px;font-weight:800;color:var(--ink)}
.f-card-price del{font-size:13px;color:var(--gray2)}
.f-rate{font-family:var(--latin);font-style:normal;font-size:19px;font-weight:800;color:var(--orange)}
.f-card-icon{margin-top:8px;display:flex;gap:4px}
.f-card-icon img{height:18px;width:auto}
/* margin-top:auto — 카드마다 정가·아이콘 줄 수가 달라도 담기 버튼을 바닥에 맞춘다
   (2026-08-31 점검: 아래 규칙이 margin-top 을 14px 로 덮어써 버튼 높이가 어긋났다) */
.f-card-cart{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:42px;flex:0 0 auto;
  margin-top:auto;border-radius:10px;background:var(--soft);color:var(--green);font-size:13.5px;font-weight:700;transition:.2s}
.f-card-price,.f-card-icon{margin-bottom:14px}   /* 담기 버튼과의 최소 간격 */
.f-card-cart:hover{background:var(--green);color:#fff}

/* 가로 리스트형 (오늘의 특가) */
.f-rowlist{display:flex;flex-direction:column;gap:14px}
.f-row{display:flex;gap:20px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;transition:.22s}
.f-row:hover{border-color:var(--orange);box-shadow:0 14px 30px -20px rgba(255,122,26,.6)}
.f-row-img{flex:0 0 132px;width:132px;height:132px;border-radius:12px;overflow:hidden;background:var(--soft);display:block}
.f-row-img img{width:100%;height:100%;object-fit:cover}
.f-row-body{flex:1 1 auto;min-width:0}
.f-row-name{display:block;font-size:18px;font-weight:700;line-height:1.45}
.f-row-desc{margin-top:6px;font-size:13.5px;color:var(--gray);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.f-row-price{margin-top:12px;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.f-row-price strong{font-family:var(--latin);font-size:25px;font-weight:800}
.f-row-price del{font-size:14px;color:var(--gray2)}
.f-row-go{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13.5px;font-weight:700;color:var(--orange)}
.f-row-go i{font-style:normal;transition:.2s}
.f-row:hover .f-row-go i{transform:translateX(4px)}

/* 예시 카드 */
.f-demo-img{display:flex!important;align-items:center;justify-content:center;font-family:var(--round);font-size:34px;color:rgba(255,255,255,.95)}
.f-demo-img.tone-a{background:linear-gradient(140deg,#3f8f56,#8cc63f)}
.f-demo-img.tone-b{background:linear-gradient(140deg,#e08a2b,#f5c05a)}
.f-demo-img.tone-c{background:linear-gradient(140deg,#c05a3a,#e79a72)}
.f-demo-img.tone-d{background:linear-gradient(140deg,#4a7fa8,#8fc0dc)}
.f-demo-img.tone-e{background:linear-gradient(140deg,#7a9c3f,#c2d879)}
.f-demo-img.tone-f{background:linear-gradient(140deg,#a8517a,#dc93b3)}
.f-demo-img.tone-g{background:linear-gradient(140deg,#2f6b4a,#5da978)}
.f-demo-img.tone-h{background:linear-gradient(140deg,#b8862c,#e3c169)}
.f-demo-badge{position:absolute;left:10px;top:10px;height:24px;padding:0 10px;border-radius:999px;background:#fff;color:var(--orange);font-size:11.5px;font-weight:700;font-style:normal;line-height:24px}

/* ── 우리 원칙 ──────────────────────────────────────── */
.f-promise{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:36px;margin-bottom:52px}
.f-promise>h2{font-family:var(--round);font-size:23px;color:var(--green);text-align:center;margin-bottom:26px}
.f-promise ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.f-promise li{text-align:center;padding:22px 14px;border-radius:var(--r);background:var(--soft)}
.f-promise .ico{display:block;font-size:30px;margin-bottom:12px}
.f-promise strong{display:block;font-size:16px}
.f-promise em{display:block;margin-top:6px;font-style:normal;font-size:13px;color:var(--gray);line-height:1.7}

/* ── 메인 게시판 ────────────────────────────────────── */
.f-bbs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.f-bbs-box{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px 26px}
.f-bbs-box header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:2px solid var(--green);margin-bottom:6px}
.f-bbs-box h2{font-family:var(--round);font-size:19px;color:var(--green)}
.f-bbs-box li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line)}
.f-bbs-box li:last-child{border-bottom:0}
.f-bbs-box li a,.f-bbs-box li span{flex:1 1 auto;min-width:0;font-size:14.5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.f-bbs-box li a:hover{color:var(--green);text-decoration:underline}
.f-bbs-box li em{flex:0 0 auto;font-family:var(--latin);font-style:normal;font-size:12.5px;color:var(--gray2)}
.f-bbs-empty{padding:40px 16px;text-align:center}
.f-bbs-empty p{font-size:15px;color:var(--gray)}
.f-bbs-empty span{display:block;margin-top:8px;font-size:12.5px;color:var(--gray2)}

/* ============================================================
   상품 리스트
   ============================================================ */
#sct{margin:0;padding:0}
.f-sct-hero{background:linear-gradient(120deg,var(--green),var(--lime));border-radius:var(--r-lg);padding:32px 34px;color:#fff;margin-bottom:22px}
.f-sct-hero .eb{font-size:12.5px;opacity:.9}
.f-sct-hero .eb a{text-decoration:underline}
.f-sct-hero h2{font-family:var(--round);font-size:30px;margin-top:8px}
.f-sct-desc{margin-top:10px;font-size:14px;opacity:.92}
#sct_ct_1,.f-sct-sub{display:block;margin:0 0 20px;padding:0;border:0;background:none}
#sct_ct_1 h2{display:none}
#sct_ct_1 ul,.f-sct-sub ul{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0}
#sct_ct_1 li,.f-sct-sub li{margin:0;padding:0;border:0;background:none;width:auto;float:none}
#sct_ct_1 a,.f-sct-sub a{display:inline-flex;align-items:center;height:38px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:13.5px;color:var(--gray)}
#sct_ct_1 a:hover,.f-sct-sub a:hover{border-color:var(--green);color:var(--green)}
#sct_ct_1 a.on,.f-sct-sub a.on{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}

#sct_sortlst{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;margin-bottom:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);position:static;height:auto;flex-wrap:wrap}
#sct_sort{margin:0;padding:0;border:0;float:none}
#sct_sort h2{display:none}
#ssch_sort{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}
#ssch_sort li{margin:0;padding:0;border:0;background:none;float:none;width:auto}
#ssch_sort li:after{display:none}
/* 코어가 정렬 링크에 border-left(구분선)를 넣는데 테마의 border-radius 와 겹치면
   글자 왼쪽에 열린 반원이 그려진다. 선택자를 #sct_sortlst 부터 써서 확실히 이기게 한다.
   (2026-08-31 점검) */
#sct_sortlst #ssch_sort li a{display:inline-flex;align-items:center;height:32px;padding:0 13px;border-radius:999px;font-size:13px;color:var(--gray);border:0;background:none;float:none;width:auto}
#sct_sortlst #ssch_sort li a:hover{background:var(--soft);color:var(--green)}
#sct_lst{display:flex;gap:5px;margin:0;padding:0;float:none;position:static}
#sct_lst li{margin:0;padding:0;background:none;border:0;float:none;width:auto}
#sct_lst button{width:34px;height:32px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:13px;color:var(--gray)}
#sct_hhtml:empty,#sct_thtml:empty{display:none}
.sct_noitem{padding:70px 20px;text-align:center;color:var(--gray);border:1px dashed var(--line);border-radius:var(--r);background:#fff}
.sct_admin{text-align:right;margin-bottom:10px}

/* 코어 상품목록을 카드형으로 덮어쓴다 */
#sct .sct,ul.sct,ul.sct.lists-row,#sct .sct.lists-row{display:grid;gap:22px;margin:0;padding:0;border:0;width:auto;float:none;overflow:visible}
#sct .sct.sct_10,ul.sct.sct_10{grid-template-columns:repeat(4,minmax(0,1fr))}
#sct .sct.sct_20,ul.sct.sct_20{grid-template-columns:repeat(3,minmax(0,1fr))}
#sct .sct.sct_30,ul.sct.sct_30{grid-template-columns:minmax(0,1fr)}
#sct .sct.sct_40,ul.sct.sct_40{grid-template-columns:repeat(4,minmax(0,1fr))}
ul.sct>li.sct_li{width:auto!important;height:auto!important;margin:0!important;padding:0!important;float:none!important;list-style:none;position:relative;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:var(--r);overflow:hidden;transition:.25s;display:flex;flex-direction:column}
ul.sct>li.sct_li:hover{border-color:var(--lime)!important;box-shadow:0 14px 30px -18px rgba(36,48,36,.5);transform:translateY(-3px)}
ul.sct>li.sct_li:before,ul.sct>li.sct_li:after{display:none}
.sct_img{position:relative;overflow:hidden;background:var(--soft);aspect-ratio:1/1;margin:0;padding:0;border:0;width:auto;height:auto}
.sct_img>a{display:block;width:100%;height:100%}
.sct_img img{width:100%;height:100%;object-fit:cover}
.sct_btn.list-10-btn{position:absolute;left:0;right:0;bottom:0;transform:translateY(100%);transition:.28s;margin:0;padding:0;background:none}
.sct_li:hover .sct_btn.list-10-btn{transform:none}
.sct_btn .btn_cart{width:100%;height:44px;background:var(--green);color:#fff;font-size:13.5px;font-weight:700;border:0}
.sct_btn .btn_cart:hover{background:var(--orange)}
.shop_icon_soldout{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(36,48,36,.55)}
.shop_icon_soldout .soldout_txt{color:#fff;font-size:15px;font-weight:700}
.sct_ct_wrap{padding:16px;margin:0;border:0;background:none;position:relative;display:flex;flex-direction:column;flex:1 1 auto}
.sct_star{margin-bottom:6px}
.sct_id{font-size:11.5px;color:var(--gray2)}
.sct_txt{margin:0;padding:0;font-size:15px;font-weight:500;line-height:1.5;height:auto;overflow:hidden}
.sct_txt a{display:block;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.sct_basic{margin-top:5px;font-size:12.5px;color:var(--gray2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sct_bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:12px;padding:0;border:0}
.sct_cost{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;font-family:var(--latin);font-size:19px;font-weight:800;color:var(--ink)}
.sct_cost .sct_dict{font-size:13px;font-weight:400;color:var(--gray2);text-decoration:line-through}
.sct_op_btn{position:relative;display:flex;gap:4px;flex:0 0 auto}
.sct_op_btn button{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:13px;color:var(--gray)}
.sct_op_btn button:hover{border-color:var(--orange);color:var(--orange)}
.sit_icon_li{margin-top:8px;display:flex;gap:4px}
.sit_icon_li img{height:18px;width:auto}
.sct_sns_wrap{display:none}
.sct_sns_wrap .sct_sns{position:absolute;right:0;bottom:40px;z-index:30;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;white-space:nowrap}
.sct_sns_bg{position:fixed;inset:0;z-index:20;background:rgba(0,0,0,.25)}
.cart-layer{display:none}

/* ============================================================
   상품 상세
   ============================================================ */
#sit_ov_from{margin:0}
#sit_ov_wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;margin:0 0 46px;padding:0;border:0}
#sit_pvi{width:auto;float:none;margin:0;padding:0;border:0}
#sit_pvi_big{position:relative;width:100%;background:var(--soft);aspect-ratio:1/1;overflow:hidden;border-radius:var(--r-lg);margin:0}
#sit_pvi_big a{display:none;width:100%;height:100%}
#sit_pvi_big a.visible{display:block}
#sit_pvi_big img{width:100%;height:100%;object-fit:cover}
#popup_item_image{position:absolute!important;right:14px;bottom:14px;display:flex!important;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:rgba(255,255,255,.95);color:var(--green);font-size:16px;z-index:5}
#sit_pvi_thumb{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:0;width:auto}
#sit_pvi_thumb li{width:72px;height:72px;margin:0;padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;float:none;background:var(--soft)}
#sit_pvi_thumb li:hover{border-color:var(--green)}
#sit_pvi_thumb img{width:100%;height:100%;object-fit:cover}

#sit_ov{width:auto;float:none;margin:0;padding:0;border:0}
#sit_title{font-family:var(--round);font-size:28px;line-height:1.35;padding:0;margin:0;border:0;background:none;color:var(--ink)}
#sit_desc{margin-top:10px;font-size:14.5px;color:var(--gray);line-height:1.8;padding:0;border:0}
#sit_opt_info{margin-top:6px;font-size:12.5px;color:var(--gray2)}
#sit_star_sns{display:flex;align-items:center;gap:12px;margin:16px 0;padding:12px 16px;border-radius:var(--r);background:var(--soft);font-size:13px;color:var(--gray);position:relative;border:0}
#sit_star_sns .sit_star{width:86px}
#sit_btn_opt{margin-left:auto;display:flex;gap:6px;position:relative}
#sit_btn_opt #btn_wish,#sit_btn_opt .btn_sns_share{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:13px;cursor:pointer}
#sit_btn_opt .sns_area{display:none;position:absolute;right:0;top:40px;z-index:30;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;white-space:nowrap}
.sit_ov_tbl{width:100%;border-top:1px solid var(--line)}
.sit_ov_tbl th,.sit_ov_tbl td{padding:12px 4px;border-bottom:1px solid var(--line2);font-size:14px;text-align:left;vertical-align:middle}
.sit_ov_tbl th{width:126px;color:var(--gray);font-weight:400}
.sit_ov_tbl .tr_price td strong{font-family:var(--latin);font-size:30px;font-weight:800;color:var(--green)}
.sit_ov_tbl select{height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px}

.sit_option,#sit_sel_option{margin-top:20px;padding:0;border:0}
.sit_option h3,#sit_sel_option h3{font-size:13.5px;font-weight:700;margin-bottom:10px}
.sit_option table{width:100%}
.sit_option th{text-align:left;font-size:13px;color:var(--gray);font-weight:400;padding:6px 8px 6px 0;white-space:nowrap;vertical-align:middle}
.sit_option td{padding:6px 0}
.sit_option select,.it_option,.it_supply{width:100%;height:48px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff}
#sit_opt_added{margin-top:6px}
#sit_opt_added li,.sit_opt_added li{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:8px;border-radius:10px;background:var(--soft);flex-wrap:wrap}
.sit_opt_subj{flex:1 1 160px;font-size:14px;font-weight:500}
.opt_name{flex:1 1 160px;min-width:0}
.opt_count{display:flex;align-items:center;gap:8px}
.sit_qty_minus,.sit_qty_plus{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:12px}
.opt_count .num_input{width:52px;height:34px;text-align:center;border:1px solid var(--line);border-radius:8px;padding:0}
.sit_opt_prc{font-family:var(--latin);font-size:13.5px;color:var(--gray);min-width:64px;text-align:right}
.sit_opt_del{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:#fff}
#sit_tot_price,.sit_tot_price{margin-top:16px;padding:16px 18px;border-radius:var(--r);background:var(--green);color:#fff;display:flex;align-items:baseline;justify-content:flex-end;gap:10px;font-size:14px}
#sit_tot_price strong,.sit_tot_price strong{font-family:var(--latin);font-size:28px;font-weight:800;color:#fff}
#sit_ov_soldout{margin-top:14px;padding:14px;border-radius:10px;background:#fff1e8;color:#c1450a;font-size:13.5px;text-align:center}

#sit_ov_btn{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}
#sit_ov_btn .sit_btn_cart,#sit_ov_btn .sit_btn_buy{flex:1 1 0;min-width:140px;height:58px;border-radius:999px;font-size:16px;font-weight:700;border:2px solid var(--green)}
#sit_ov_btn .sit_btn_cart{background:#fff;color:var(--green)}
#sit_ov_btn .sit_btn_buy{background:var(--green);color:#fff}
#sit_ov_btn .sit_btn_buy:hover{background:var(--orange);border-color:var(--orange)}
#sit_ov_btn .sit_btn_wish{flex:0 0 58px;height:58px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:18px;background:#fff}
#sit_btn_alm{flex:1 1 100%;height:50px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--green);color:var(--green);font-size:14px}
.itemform-naverpay{flex:1 1 100%}
#sit_siblings{display:flex;gap:8px;justify-content:flex-end;margin:0 0 34px;padding:0;border:0}
#sit_siblings a{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);font-size:13px;background:#fff}

#sit_rel{margin:0 0 46px}
#sit_rel h2{font-family:var(--round);font-size:21px;color:var(--green);margin-bottom:18px}
#sit_info{margin:0}
#sit_tab{border:0}
#sit_tab .tab_tit{display:flex;gap:6px;margin:0 0 28px;padding:0;border:0}
#sit_tab .tab_tit li{flex:1 1 0;margin:0;padding:0;border:0;background:none;float:none;width:auto}
#sit_tab .tab_tit button{width:100%;height:52px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:14.5px;color:var(--gray)}
#sit_tab .tab_tit button.selected{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}
#sit_tab .tab_tit .item_use_count,#sit_tab .tab_tit .item_qa_count{font-family:var(--latin);margin-left:4px}
#sit_tab .tab_con>li{padding:26px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}
/* 코어가 .contents_tit 를 position:absolute;height:0 로 숨겨 둔다 — 풀어야 제목이 제자리에 선다 (2026-08-31) */
#sit_tab .tab_con h2,#sit_tab .tab_con .contents_tit{position:static;height:auto;overflow:visible;clip:auto;font-size:19px;font-weight:700;margin:0 0 18px;line-height:1.4;color:var(--green)}
#sit_inf_explan{font-size:15.5px;line-height:1.95;overflow-x:auto}
#sit_inf_open{width:100%;margin-top:30px;border-top:1px solid var(--line)}
#sit_inf_open th,#sit_inf_open td{padding:12px 14px;border-bottom:1px solid var(--line2);font-size:14px;text-align:left}
#sit_inf_open th{width:210px;background:var(--soft);color:var(--gray);font-weight:400}
#sit_dvr,#sit_ex{font-size:14.5px;line-height:1.9}
#sit_ex{margin-top:26px}
#sit_buy{display:none}

/* ── 전체 상품분류 ──────────────────────────────────── */
.f-allcate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.f-allcate-list>li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px}
.f-allcate-list h3{font-size:16.5px;color:var(--green);margin-bottom:10px}
.f-allcate-list h3 em{font-family:var(--latin);font-style:normal;font-size:12px;color:var(--orange);margin-left:4px}
.f-allcate-list ul li{padding:4px 0}
.f-allcate-list ul a{font-size:13.5px;color:var(--gray)}
.f-allcate-list ul a:hover{color:var(--green);text-decoration:underline}

/* ── 반응형 ─────────────────────────────────────────── */
@media (max-width:1280px){
  .f-grid.cols-4{grid-template-columns:repeat(3,minmax(0,1fr))}
  #sct .sct.sct_10,ul.sct.sct_10,#sct .sct.sct_40,ul.sct.sct_40{grid-template-columns:repeat(3,minmax(0,1fr))}
  .f-allcate-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1024px){
  .f-hero-wrap{grid-template-columns:minmax(0,1fr);gap:12px}
  .f-hero-side{grid-template-rows:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .f-hero{min-height:250px}
  .f-hero-in{padding:32px 28px}
  .f-promise ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-bbs{grid-template-columns:minmax(0,1fr)}
  #sit_ov_wrap{grid-template-columns:minmax(0,1fr);gap:26px}
  #sit_title{font-size:23px}
  #sit_tab .tab_tit{flex-wrap:wrap}
  #sit_tab .tab_tit li{flex:1 1 46%}
}
@media (max-width:640px){
  .f-hero-side{grid-template-columns:minmax(0,1fr)}
  .f-hero-in{padding:26px 20px}
  .f-hero-title{font-size:25px}
  .f-sect{margin-bottom:38px}
  .f-sect-hd h2{font-size:22px}
  .f-grid{gap:12px}
  .f-grid.cols-3,.f-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  #sct .sct,ul.sct{gap:12px}
  #sct .sct.sct_10,ul.sct.sct_10,#sct .sct.sct_20,ul.sct.sct_20,#sct .sct.sct_40,ul.sct.sct_40{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-card-body{padding:12px}
  .f-card-name,.sct_txt{font-size:13.5px}
  .f-card-price strong,.sct_cost{font-size:16px}
  .sct_ct_wrap{padding:12px}
  .f-row{flex-direction:row;gap:12px;padding:12px}
  .f-row-img{flex:0 0 96px;width:96px;height:96px}
  .f-row-name{font-size:15px}
  .f-row-price strong{font-size:20px}
  .f-promise{padding:22px}
  .f-promise ul{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
  .f-bbs-box{padding:18px}
  .f-sct-hero{padding:22px 20px}
  .f-sct-hero h2{font-size:23px}
  .sit_ov_tbl th{width:94px;font-size:13px}
  .sit_ov_tbl .tr_price td strong{font-size:24px}
  #sit_ov_btn .sit_btn_cart,#sit_ov_btn .sit_btn_buy{height:52px;font-size:15px;min-width:0}
  #sit_ov_btn .sit_btn_wish{flex:0 0 52px;height:52px}
  #sit_tab .tab_con>li{padding:18px}
  #sit_inf_open th{width:106px;font-size:12.5px}
  .f-allcate-list{grid-template-columns:minmax(0,1fr)}
  #sit_pvi_thumb li{width:58px;height:58px}
}

/* 상품상세 — 스킨 style.css 의 고정폭을 푼다 (모바일 가로 넘침 방지) */
#sit_ov_wrap{width:auto;max-width:100%}
#sit_tab{width:auto;max-width:100%;float:none}
#sit_pvi,#sit_ov,#sit_info,#sit_rel{max-width:100%}
.sqa_section{width:auto;max-width:100%;float:none}
#sit_inf_explan img,#sit_dvr img,#sit_ex img{max-width:100%;height:auto}

/* ── 좁은 화면(360px 급) 가로 넘침 방지 · 2026-08-31 점검 ─────────────────
   그누보드 코어 화면(새글모음·FAQ·자동등록방지·상품검색)은 고정폭이라
   갤럭시 계열 360px 기기에서 옆으로 밀린다. 이 블록을 지우면 증상이 돌아온다. */
#new_sch,#faq_sch{min-width:0;max-width:100%;box-sizing:border-box}
#pw_confirm,.mbskin,#info_fs{max-width:100%;min-width:0}
#info_fs input,#info_fs .frm_input,#pw_confirm input,.mbskin input{max-width:100%;min-width:0;box-sizing:border-box}
/* 320px 급 좁은 기기 — 한 낱말이 칸보다 길면 그때만 끊어 준다.
   word-break:keep-all 로 한글 단어는 그대로 두되, 넘치는 것보다는 끊는 편이 낫다. */
body{overflow-wrap:break-word}
#new_sch form,#faq_sch form{width:100%;max-width:100%;flex-wrap:wrap}
#new_sch select,#new_sch input,#new_sch .frm_input,
#faq_sch select,#faq_sch input,#faq_sch .frm_input{max-width:100%}
#captcha{max-width:100%}
#captcha img,#captcha audio,#captcha_audio{max-width:100%}
#ssch_q,.ssch_input{max-width:100%}
@media (max-width:480px){
  #new_sch,#faq_sch{padding:18px}
}

/* ── 모바일 입력창 확대 방지 · 2026-08-31 점검 ────────────────────────────
   iOS 사파리는 글자가 16px 보다 작은 입력칸을 누르면 화면을 확대해 버리고,
   사용자가 손으로 되돌려야 한다. 휴대폰에서만 글자를 16px 로 올려 막는다.
   (칸의 높이·테두리·색은 그대로이므로 디자인은 유지된다)
   화면별 규칙(.xx-auth .fld input 등)이 더 세서 !important 로 눌러 둔다 —
   이 한 줄을 빼면 로그인·가입·검색칸에서 확대가 다시 일어난다. */
@media (max-width:768px){
  input[type=text],input[type=password],input[type=email],input[type=tel],
  input[type=number],input[type=search],input[type=url],input[type=date],
  input[type=time],input[type=datetime-local],input[type=month],input[type=week],
  input:not([type]),select,textarea{font-size:16px!important}
}

/* ── 상품 아이콘(히트·추천·최신·인기·할인) 배지 · 2026-08-31 점검 ─────────
   영카트는 관리자가 아이콘 이미지를 올리지 않으면 글자를 그대로 내보낸다.
   그대로 두면 "추천최신할인" 처럼 붙어 나오므로 배지 모양을 입힌다. */
.sit_icon,.f-card-icon{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.shop_icon{display:inline-block;padding:3px 10px;font-size:11px;font-weight:700;line-height:1.4;
  color:#fff;background:var(--green);border-radius:999px;white-space:nowrap}
.shop_icon_1{background:var(--orange)}
.shop_icon_3{background:var(--lime);color:#22331a}
.shop_icon_5{background:var(--orange)}

/* 정렬 목록이 카드 폭을 다 쓰게 한다 — 코어의 float:left 때문에 절반만 쓰고 3줄로 늘어졌다
   (2026-08-31 점검) */
#sct_sortlst #sct_sort{flex:1 1 auto;width:auto;max-width:100%;float:none}
#sct_sortlst #ssch_sort{float:none;width:100%}

/* ── 폼 입력칸 한 벌로 통일 · 2026-08-31 점검 ──────────────────────────────
   로그인 · 회원가입 · 비밀번호찾기 · 자동등록방지 칸의 높이·테두리·둥글기·안여백이
   화면마다 달랐다(로그인 52px 인데 가입은 다른 값, 비밀번호찾기는 아예 브라우저 기본).
   ★ 칸 모양을 바꾸려면 이 블록만 고치면 네 화면이 함께 따라간다. */
#mb_login input[type=text],#mb_login input[type=password],#mb_login input[type=email],
#mb_login input[type=tel],#mb_login input[type=number],#mb_login select,
.auth input[type=text],.auth input[type=password],.auth input[type=email],.auth input[type=tel],.auth select,
.b01-auth input[type=text],.b01-auth input[type=password],.b01-auth input[type=email],.b01-auth select,
#register_form input[type=text],#register_form input[type=password],#register_form input[type=email],
#register_form input[type=tel],#register_form input[type=number],#register_form select,#register_form .frm_input,
#find_info input[type=text],#find_info input[type=email],#find_info select,#find_info .frm_input,
#pw_confirm input[type=password],#pw_confirm .frm_input,
#captcha.m_captcha #captcha_key,#captcha #captcha_key,#captcha .captcha_box,#captcha_key,.captcha_box{
  box-sizing:border-box;height:52px;
  border:1px solid var(--line);border-radius:12px;
  padding:0 16px;font-size:16px;line-height:normal;
  background:#fff;color:inherit;
  -webkit-appearance:none;outline:0;
  transition:border-color .2s}
#mb_login select,.auth select,.b01-auth select,#register_form select,#find_info select{
  -webkit-appearance:menulist;appearance:menulist;padding-right:8px}
#mb_login textarea,.auth textarea,.b01-auth textarea,#register_form textarea,#find_info textarea{
  box-sizing:border-box;width:100%;min-height:150px;
  border:1px solid var(--line);border-radius:12px;
  padding:12px 16px;font-size:16px;line-height:1.7;
  background:#fff;color:inherit;-webkit-appearance:none;outline:0}
/* 자동등록방지 칸은 좁으니 폭만 따로 둔다 */
#captcha.m_captcha #captcha_key,#captcha #captcha_key,#captcha .captcha_box,#captcha_key,.captcha_box{width:120px;text-align:center;letter-spacing:.2em}

/* 폼을 감싼 fieldset 에 브라우저 기본 테두리(2px groove)가 남아 회색 홈 박스가 그려졌다.
   로그인·비밀번호찾기·자동등록방지에서 특히 눈에 띄었다. (2026-08-31 점검) */
#mb_login fieldset,.auth fieldset,.b01-auth fieldset,#fregisterform fieldset,
#register_form fieldset,#find_info fieldset,#pw_confirm fieldset,
fieldset#login_fs,fieldset#info_fs,fieldset#captcha,fieldset.captcha,fieldset.srch,
#fregister fieldset,fieldset.fregister_agree{
  border:0;margin:0;padding:0;min-width:0}
/* 약관 동의 체크줄은 위쪽 여백만 남긴다 (2026-09-01 점검) */
#fregister fieldset.fregister_agree,fieldset.fregister_agree{margin-top:14px}
#mb_login legend,.auth legend,.b01-auth legend,#register_form legend,#find_info legend{padding:0}

/* ── 칸 옆 버튼·자동등록방지 줄 정렬 · 2026-08-31 점검 ─────────────────────
   '주소 검색' 버튼이 우편번호 칸보다 낮고 한 줄 아래로 밀려 있었고,
   자동등록방지는 그림·입력칸·새로고침 버튼의 높이와 윗선이 제각각이었다.
   칸 높이(52px)에 맞춰 한 줄로 가지런히 세운다. */
#register_form .btn_frmline,#find_info .btn_frmline,#mb_login .btn_frmline,
.auth .btn_frmline,.b01-auth .btn_frmline,#register_form button.btn_frmline{
  box-sizing:border-box;height:52px;padding:0 16px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  vertical-align:top;line-height:1;white-space:nowrap}
#fregisterform #captcha,#captcha{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%}
#fregisterform #captcha #captcha_img,#captcha #captcha_img,#captcha img{vertical-align:middle;border-radius:12px;max-width:100%}
/* #captcha_reload 는 브라우저 기본 모양(회색 그라데이션)이라 테마와 겉돌았다 (2026-08-31 점검) */
#fregisterform #captcha #captcha_reload,#captcha #captcha_reload,#captcha button{text-indent:0;overflow:visible;width:auto;white-space:nowrap;background-image:none;background:#fff;color:inherit;border:1px solid var(--line);cursor:pointer;font-size:14px;
  box-sizing:border-box;height:52px;min-width:52px;padding:0 12px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;line-height:1}
#captcha #captcha_info,#captcha .captcha_info{flex:1 1 100%;margin:6px 0 0;font-size:13px;line-height:1.6}
#captcha #captcha_audio,#captcha audio{flex:1 1 100%;max-width:100%;margin:0 0 6px}
/* legend 가 섹션 제목(h2)과 같은 '자동등록방지' 를 한 번 더 찍어 두 번 나왔다 → 읽기용으로만 남긴다 */
#captcha legend{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* 안내 문구는 버튼 옆에 끼어 뒤엉켰다 → 늘 아랫줄 전체를 쓰게 한다 */
#fregisterform #captcha #captcha_info,#captcha #captcha_info,#captcha .captcha_info{flex:0 0 100%;min-width:100%}
#captcha #captcha_reload span{display:none}
/* 그누보드 가입양식은 두 칸짜리 줄의 <li> 에도 half_input 클래스를 붙인다.
   입력칸 모양 규칙(.half_input)이 그 <li> 에까지 걸려 비밀번호 줄만 네모 상자가 그려졌다.
   줄을 감싸는 <li> 에서는 칸 모양을 없앤다. (2026-08-31 점검) */
#register_form li.half_input,#register_form li.full_input,#register_form li.twopart_input,
#register_form li.margin_input,#register_form li.left_input,#register_form li.frm_input{
  border:0;background:none;height:auto;padding:0;border-radius:0;box-shadow:none}
/* 반폭 줄(half_input) 안의 입력칸은 그 줄을 꽉 채우게만 한다.
   ★ 줄의 배치(2열이냐 한 줄이냐)는 테마 디자인이므로 건드리지 않는다 —
     display·float·width 를 손댔더니 PC 에서 섹션 카드가 겹쳐 무너졌다. (2026-08-31 점검) */
#register_form li.half_input>input,#register_form li.half_input>.frm_input{width:100%}
/* 우편번호 칸이 줄 전체를 차지해 '주소 검색' 버튼이 아랫줄로 밀렸다.
   칸을 줄이고 버튼을 옆에 붙인다. (2026-08-31 점검) */
#register_form #reg_mb_zip,#register_form input[name=mb_zip],#find_info input[name=mb_zip]{
  width:150px;max-width:48%;display:inline-block;vertical-align:middle;margin-right:8px}
#register_form #reg_mb_zip+.btn_frmline,#register_form input[name=mb_zip]+.btn_frmline{vertical-align:middle}

/* 로그인의 아이디·비밀번호 칸을 붙여 놓은 디자인인데, 테두리가 맞닿아 두 겹(2px)으로 보였다.
   1px 겹쳐 한 줄로 만든다. (2026-08-31 점검) */
#mb_login input[type=password]{margin-top:-1px}
#mb_login input[type=text]:focus,#mb_login input[type=password]:focus{position:relative;z-index:1}

/* 라벨 옆 도움말 단추(.tooltip_icon)는 코어가 '설명보기' 글자만 내보내고 아이콘은 테마 몫이다.
   그대로 두면 테마마다 빈 동그라미(20×20)이거나 아예 0×0 이라 안 보였다.
   물음표 아이콘으로 통일한다. (2026-08-31 점검) */
#register_form .tooltip_icon,.tooltip_icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;min-width:18px;padding:0;margin-left:5px;
  border:1px solid var(--line);border-radius:50%;background:none;
  font-size:0;line-height:1;vertical-align:middle;cursor:pointer}
#register_form .tooltip_icon::before,.tooltip_icon::before{
  content:"?";font-size:11px;font-weight:700;line-height:1;color:inherit}
