/* ===================== NOVOMART SHOP CSS ===================== */

/* ── Product Grid ──────────────────────────── */
.prd-grid{display:grid;gap:12px;}
.prd-grid.c5{grid-template-columns:repeat(5,1fr);}
.prd-grid.c4{grid-template-columns:repeat(4,1fr);}
.prd-empty{grid-column:1/-1;padding:60px;text-align:center;color:var(--c5);font-size:14px;}

/* ── Product Card ──────────────────────────── */
.prd-card{cursor:pointer;background:#fff;}
.prd-card a{text-decoration:none;color:inherit;display:block;}
.prd-thumb{position:relative;aspect-ratio:1;overflow:hidden;background:var(--bg1);}
.prd-thumb-img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.prd-thumb-img.no-img{display:flex;align-items:center;justify-content:center;color:var(--c5);font-size:12px;}
.prd-card:hover .prd-thumb-img{transform:scale(1.04);}

.dc-badge{position:absolute;top:0;left:0;background:var(--red2);color:#fff;font-size:10.5px;font-weight:700;padding:4px 7px;line-height:1;z-index:2;}
.soldout-badge{position:absolute;top:0;right:0;background:rgba(0,0,0,.5);color:#fff;font-size:10px;font-weight:700;padding:4px 8px;z-index:2;}
.like-btn{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;opacity:0;transition:opacity .15s;z-index:2;border:none;}
.prd-card:hover .like-btn{opacity:1;}

.prd-actions{position:absolute;bottom:0;left:0;right:0;display:flex;transform:translateY(100%);transition:transform .2s cubic-bezier(.4,0,.2,1);z-index:3;}
.prd-card:hover .prd-actions{transform:translateY(0);}
.prd-act{flex:1;padding:9px 0;background:rgba(255,255,255,.96);font-size:11px;font-weight:600;color:var(--c2);border-right:1px solid var(--border);cursor:pointer;text-align:center;transition:background .1s,color .1s;border-top:none;border-bottom:none;}
.prd-act:last-child{border-right:none;}
.prd-act:hover,.prd-act.main{background:var(--navy);color:#fff;}

.prd-info{padding:10px 2px 14px;}
.prd-name{font-size:13px;font-weight:500;color:var(--c1);line-height:1.45;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;}
.prd-price-row{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;}
.prd-sale{font-size:15px;font-weight:800;color:var(--c1);}
.prd-orig{font-size:12px;color:var(--c5);text-decoration:line-through;}
.prd-dc{font-size:12px;font-weight:700;color:var(--red2);}
.prd-rating{display:flex;align-items:center;gap:4px;margin-top:4px;}
.prd-stars{color:#f5a623;font-size:11px;letter-spacing:-1px;}
.prd-rcnt{font-size:11px;color:var(--c5);}

/* ── Product Detail ────────────────────────── */
.pd-wrap{display:grid;grid-template-columns:minmax(0,46%) 1fr;gap:44px;padding:28px 0 48px;align-items:start;}
.pd-gallery{position:sticky;top:80px;align-self:start;}
.pd-main-img{width:100%;max-height:500px;aspect-ratio:1;background:var(--bg2);overflow:hidden;margin-bottom:8px;display:flex;align-items:center;justify-content:center;}
.pd-main-img img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;}
.pd-thumbs{display:flex;gap:6px;overflow-x:auto;}
.pd-thumb{width:72px;height:72px;border:2px solid var(--border);background:var(--bg2);cursor:pointer;flex-shrink:0;overflow:hidden;transition:border-color .15s;}
.pd-thumb:hover,.pd-thumb.on{border-color:var(--c1);}
.pd-thumb img{width:100%;height:100%;object-fit:cover;}

.pd-info{}
.pd-badges{display:flex;gap:5px;margin-bottom:10px;flex-wrap:wrap;}
.pd-badge{font-size:10px;font-weight:700;padding:3px 7px;border-radius:1px;}
.pb-sale{background:var(--red2);color:#fff;}
.pb-new{background:var(--navy);color:#fff;}
.pb-hot{background:#e67e22;color:#fff;}

.pd-name{font-size:20px;font-weight:700;color:var(--c1);line-height:1.4;margin-bottom:10px;}
.pd-rating-row{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--border);}
.pd-stars{color:#f5a623;font-size:13px;}
.pd-rlink{font-size:12.5px;color:var(--mint);cursor:pointer;}

.pd-price-box{margin-bottom:4px;}
.pd-price-main{display:flex;align-items:baseline;gap:8px;margin-bottom:4px;}
.pd-price{font-size:26px;font-weight:800;color:var(--c1);}
.pd-orig{font-size:14px;color:var(--c5);text-decoration:line-through;}
.pd-dcr{font-size:14px;font-weight:700;color:var(--red2);}
.pd-ship-txt{font-size:13px;color:var(--c3);margin-top:4px;}
.pd-ship-txt b{color:var(--mint2);font-weight:700;}

/* Product detail shipping gauge */
.pd-sg{background:#fffbf0;border:1px solid #f0dfa0;border-radius:2px;padding:13px 16px;margin:14px 0;}
.pd-sg .sg-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;}
.pd-sg .sg-icon{font-size:14px;margin-right:6px;}
.pd-sg .sg-msg{font-size:12.5px;color:var(--c3);flex:1;}
.pd-sg .sg-msg b{color:#c07000;font-weight:700;}
.pd-sg .sg-msg.done b{color:var(--mint2);}
.pd-sg .sg-pct{font-size:11.5px;font-weight:700;color:#c07000;min-width:34px;text-align:right;}
.pd-sg .sg-pct.done{color:var(--mint2);}
.pd-sg .sg-track{height:6px;background:#f0dfa0;border-radius:3px;overflow:hidden;}
.pd-sg .sg-fill{height:100%;background:linear-gradient(90deg,#f5a623,#c07000);border-radius:3px;transition:width .5s cubic-bezier(.4,0,.2,1);}
.pd-sg .sg-fill.done{background:linear-gradient(90deg,var(--mint),var(--mint2));}
.pd-sg .sg-labels{display:flex;justify-content:space-between;margin-top:5px;}
.pd-sg .sg-lbl{font-size:10px;color:var(--c5);}

/* Options */
.pd-opts{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:16px 0;}
.pd-opt{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid var(--bg2);}
.pd-opt:last-child{border-bottom:none;}
.pd-opt-label{font-size:12px;font-weight:600;color:var(--c3);width:88px;flex-shrink:0;}
.pd-opt-val{flex:1;}
.pd-opt select{width:100%;border:1px solid var(--border);padding:8px 12px;font-size:13px;color:var(--c1);background:#fff;cursor:pointer;-webkit-appearance:none;}
.qty-wrap{display:inline-flex;align-items:center;border:1px solid var(--border);}
.qty-b{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--c3);cursor:pointer;transition:background .1s;background:#fff;border:none;}
.qty-b:hover{background:var(--bg2);}
.qty-n{width:48px;height:36px;border-left:1px solid var(--border);border-right:1px solid var(--border);text-align:center;font-size:14px;font-weight:600;border-top:none;border-bottom:none;}

/* Chosen options display */
.chosen-list{margin-top:10px;}
.chosen-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg1);border:1px solid var(--border);margin-bottom:6px;font-size:12.5px;}
.chosen-name{color:var(--c2);flex:1;}
.chosen-price{font-weight:600;color:var(--c1);margin:0 12px;}
.chosen-del{color:var(--c5);cursor:pointer;font-size:16px;padding:0 4px;background:none;border:none;}

/* Total & buttons */
.pd-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:14px;}
.pd-total .label{font-size:13px;color:var(--c3);}
.pd-total .amount{font-size:22px;font-weight:800;color:var(--c1);}
.pd-btns{display:flex;gap:8px;}
.pd-btn-cart{flex:1;padding:14px;background:#fff;border:2px solid var(--navy);color:var(--navy);font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;}
.pd-btn-cart:hover{background:var(--navy);color:#fff;}
.pd-btn-buy{flex:1;padding:14px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;cursor:pointer;border:2px solid var(--navy);transition:background .15s;}
.pd-btn-buy:hover{background:#0a1a2e;}
.pd-btn-wish{width:50px;padding:14px;border:2px solid var(--border);color:var(--c4);font-size:18px;cursor:pointer;transition:all .15s;background:#fff;}
.pd-btn-wish:hover{border-color:var(--red);color:var(--red);}

/* ── Product Detail Tabs ───────────────────── */
.pd-tabs{display:flex;border-bottom:2px solid var(--border);margin-top:36px;}
.pd-tab{padding:14px 28px;font-size:14px;font-weight:500;color:var(--c4);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;text-decoration:none;transition:color .15s;}
.pd-tab:hover{color:var(--c1);}
.pd-tab.on{font-weight:700;color:var(--c1);border-color:var(--c1);}
.pd-tab-cnt{color:var(--mint);margin-left:4px;}

/* Photo Reviews Strip */
.pr-strip{padding:24px 0 16px;}
.pr-strip-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.pr-strip-hd h3{font-size:14px;font-weight:700;color:var(--c1);}
.pr-cnt{font-size:12px;color:var(--mint);font-weight:600;}
.pr-morelink{font-size:12px;color:var(--c4);cursor:pointer;text-decoration:none;}
.pr-morelink:hover{color:var(--c1);}
.pr-row{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}
.pr-mini{cursor:pointer;border:1px solid var(--border);}
.pr-mini:hover{border-color:var(--c4);}
.pr-mini-photo{aspect-ratio:1;overflow:hidden;background:var(--bg2);}
.pr-mini-photo img{width:100%;height:100%;object-fit:cover;}
.pr-mini-body{padding:7px 8px;}
.pr-mini-stars{color:#f5a623;font-size:10px;margin-bottom:2px;}
.pr-mini-text{font-size:11px;color:var(--c2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pr-mini-meta{font-size:9.5px;color:var(--c5);margin-top:4px;}

/* Detail content */
.det-wrap{padding:20px 0 48px;}
.det-section{padding:22px;background:var(--bg1);margin-bottom:10px;border:1px solid var(--border);}
.det-section h5{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border);}
.det-section p,.det-section div{font-size:13px;color:var(--c2);line-height:1.8;}
.det-content img{max-width:100%;height:auto;}
.spec-tbl{width:100%;border-collapse:collapse;}
.spec-tbl td{padding:9px 14px;font-size:12.5px;border-bottom:1px solid var(--border);}
.spec-tbl td:first-child{width:130px;background:var(--bg2);color:var(--c3);font-weight:600;}

/* ── Cart ──────────────────────────────────── */
.cart-wrap{padding:32px 0 52px;}
.cart-title{font-size:20px;font-weight:800;color:var(--c1);margin-bottom:24px;}

.cship{background:#fffbf0;border:1px solid #f0e0b0;border-radius:2px;padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;gap:16px;}
.cship-icon{font-size:22px;}
.cship-body{flex:1;}
.cship-msg{font-size:13px;color:var(--c2);margin-bottom:8px;}
.cship-msg b{color:#c07000;font-weight:700;}
.cship-msg.done b{color:var(--mint2);}
.cship-track{height:8px;background:#f0dfa0;border-radius:4px;overflow:hidden;}
.cship-fill{height:100%;background:linear-gradient(90deg,#f5a623,#c07000);border-radius:4px;transition:width .5s cubic-bezier(.4,0,.2,1);}
.cship-fill.done{background:linear-gradient(90deg,var(--mint),var(--mint2));}
.cship-pct{font-size:12px;font-weight:700;color:#c07000;min-width:38px;text-align:right;}
.cship-pct.done{color:var(--mint2);}

.cart-tbl{width:100%;border-collapse:collapse;margin-bottom:20px;}
.cart-tbl thead td{padding:11px 14px;background:var(--bg2);font-size:12px;font-weight:600;color:var(--c3);border-top:2px solid var(--c1);border-bottom:1px solid var(--border);}
.cart-tbl tbody td{padding:16px 14px;border-bottom:1px solid var(--border);vertical-align:middle;font-size:13px;}
.ci-box{display:flex;align-items:center;gap:12px;}
.ci-img{width:72px;height:72px;background:var(--bg2);border:1px solid var(--border);flex-shrink:0;overflow:hidden;}
.ci-img img{width:100%;height:100%;object-fit:cover;}
.ci-name{font-size:13px;font-weight:500;color:var(--c1);margin-bottom:3px;text-decoration:none;}
.ci-name:hover{text-decoration:underline;}
.ci-opt{font-size:11px;color:var(--c5);}
.ci-price-orig{font-size:11px;color:var(--c5);text-decoration:line-through;margin-bottom:2px;}
.ci-price-sale{font-size:13px;font-weight:600;color:var(--c1);}
.ci-sub{font-size:14px;font-weight:700;color:var(--c1);text-align:right;}
.del-btn{padding:4px 10px;border:1px solid var(--border);font-size:11.5px;color:var(--c4);cursor:pointer;background:#fff;transition:all .1s;}
.del-btn:hover{border-color:var(--red);color:var(--red);}

.cart-bot{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start;}
.coup-box{border:1px solid var(--border);padding:18px;}
.coup-box h5{font-size:13px;font-weight:700;margin-bottom:10px;}
.coup-row{display:flex;gap:6px;}
.coup-row input{flex:1;padding:9px 12px;border:1px solid var(--border);font-size:13px;}
.coup-row button{padding:9px 16px;background:var(--navy);color:#fff;font-size:13px;font-weight:600;border:none;cursor:pointer;}
.coup-hint{font-size:11px;color:var(--c5);margin-top:6px;}
.ord-sum{background:var(--bg1);border:1px solid var(--border);padding:18px;}
.ord-sum h5{font-size:13px;font-weight:700;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border);}
.sum-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--c3);margin-bottom:8px;}
.sum-row .v{color:var(--c1);font-weight:600;}
.sum-row.total{font-size:15px;font-weight:800;color:var(--c1);border-top:1px solid var(--border);padding-top:10px;margin-top:4px;}
.sum-row.total .v{font-size:17px;}
.btn-order{width:100%;padding:14px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;cursor:pointer;margin-top:14px;border:none;transition:background .15s;}
.btn-order:hover{background:#0a1a2e;}
.cart-empty{text-align:center;padding:60px 0;}
.cart-empty .ico{font-size:44px;margin-bottom:12px;}
.cart-empty p{font-size:14px;color:var(--c4);margin-bottom:20px;}
.btn-shop{display:inline-flex;align-items:center;gap:6px;padding:13px 30px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;border:none;cursor:pointer;text-decoration:none;transition:background .15s;}
.btn-shop:hover{background:#0a1a2e;}

@media(max-width:1024px){
  .prd-grid.c5{grid-template-columns:repeat(4,1fr);}
  .pr-row{grid-template-columns:repeat(4,1fr);}
  .pd-wrap{grid-template-columns:1fr;gap:28px;}
  .pd-gallery{position:static;}
  .cart-bot{grid-template-columns:1fr;}
  .pr-row{grid-template-columns:repeat(4,1fr);}
}
@media(max-width:768px){
  .prd-grid.c5,.prd-grid.c4{grid-template-columns:repeat(2,1fr);}
  .pr-row{grid-template-columns:repeat(3,1fr);}
  .sort-row{flex-direction:column;align-items:flex-start;gap:8px;}
  .pd-tabs{overflow-x:auto;white-space:nowrap;}
  .pd-price{font-size:22px;}
  .pr-row{grid-template-columns:repeat(3,1fr);}
  .cart-tbl thead td:not(:first-child):not(:nth-child(2)){display:none;}
}

/* ============================================================
   NOVOMART HOMEPAGE SKIN CSS
   mainbanner.10 / main.10 / main.20~50
   ============================================================ */

/* ── Hero Banner (mainbanner.10.skin.php) ─────────────────── */
.hero-outer{position:relative;width:100%;overflow:hidden;background:#000;height:520px;}
.hero-track{display:flex;height:100%;transition:transform .55s cubic-bezier(.4,0,.2,1);}
.hero-slide{min-width:100%;height:100%;position:relative;flex-shrink:0;}
.hero-slide img{width:100%;height:100%;object-fit:cover;}
.hero-dim{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.18) 0%,rgba(0,0,0,.48) 100%);}
.hero-ctt{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);max-width:1240px;width:100%;padding:0 20px;color:#fff;}
.hero-tag{display:inline-block;background:var(--mint);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:2px;margin-bottom:10px;letter-spacing:.5px;text-transform:uppercase;}
.hero-h1{font-size:40px;font-weight:800;line-height:1.2;margin-bottom:10px;letter-spacing:-.5px;}
.hero-p{font-size:15px;line-height:1.7;opacity:.88;margin-bottom:20px;max-width:480px;}
.hero-cta{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:#fff;color:var(--navy);font-size:13.5px;font-weight:700;border-radius:2px;text-decoration:none;transition:background .15s;}
.hero-cta:hover{background:#f0f0f0;}
.hero-arr{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:44px;height:44px;border:none;background:rgba(255,255,255,.22);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;}
.hero-arr:hover{background:rgba(255,255,255,.40);}
.hero-arr-l{left:16px;}
.hero-arr-r{right:16px;}
.hero-dots{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:10;}
.hero-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);border:none;cursor:pointer;transition:all .25s;}
.hero-dot.on{background:#fff;width:22px;border-radius:4px;}
.hero-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:rgba(255,255,255,.2);z-index:10;}
.hero-progress-bar{height:100%;background:var(--mint);width:0%;transition:width linear;}

/* ── 인기상품 5칸 그리드 (main.10.skin.php) ───────────────── */
.main-prd-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
.main-prd-grid .prd-card{position:relative;}
.prd-rank{position:absolute;top:0;left:0;z-index:3;background:var(--navy);color:#fff;font-size:11px;font-weight:800;width:24px;height:24px;display:flex;align-items:center;justify-content:center;}
.prd-rank.r1,.prd-rank.r2,.prd-rank.r3{background:var(--red2);}
.prd-orig{font-size:11.5px;color:var(--c5);text-decoration:line-through;margin-bottom:1px;}
.prd-sale{font-size:14px;font-weight:700;color:var(--c1);}
.prd-price-row{display:flex;align-items:center;gap:5px;}
.prd-dc{font-size:12px;font-weight:700;color:var(--red2);}
.prd-empty{text-align:center;padding:40px 0;color:var(--c5);font-size:13px;grid-column:1/-1;}

/* ── 신상품 캐러셀 (main.30~50.skin.php) ─────────────────── */
.prd-carousel-wrap{position:relative;overflow:hidden;}
.prd-carousel{overflow:hidden;}
.prd-carousel-track{display:flex;gap:16px;transition:transform .4s cubic-bezier(.4,0,.2,1);}
.prd-carousel-track .prd-card{min-width:200px;flex-shrink:0;}
.car-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:36px;height:36px;background:#fff;border:1px solid var(--border);font-size:18px;color:var(--c2);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .15s;}
.car-btn:hover{border-color:var(--navy);color:var(--navy);}
.car-btn-l{left:0;}
.car-btn-r{right:0;}
.prd-new-tag{position:absolute;top:0;right:0;z-index:3;background:var(--mint);color:#fff;font-size:9.5px;font-weight:700;padding:3px 7px;text-transform:uppercase;letter-spacing:.3px;}

/* ── Responsive ───────────────────────────────────────────── */
@media(max-width:1024px){
  .hero-outer{height:420px;}
  .hero-h1{font-size:30px;}
  .main-prd-grid{grid-template-columns:repeat(4,1fr);}
  .prd-carousel-track .prd-card{min-width:180px;}
}
@media(max-width:768px){
  .hero-outer{height:300px;}
  .hero-h1{font-size:22px;}
  .hero-p{font-size:13px;}
  .hero-cta{padding:10px 20px;font-size:12.5px;}
  .hero-ctt{bottom:50px;}
  .main-prd-grid{grid-template-columns:repeat(2,1fr);}
  .prd-carousel-track .prd-card{min-width:150px;}
  .car-btn{display:none;}
}
