/* ═══════════════════════════════════════════
   Neore — Cart Page
   ═══════════════════════════════════════════ */

.n-cart-wrapper{background:var(--bg)}

/* ── Empty ── */
.n-cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 24px;text-align:center;color:var(--g4)}
.n-cart-empty p{font-size:15px;font-weight:500;margin:0}
.n-cart-shop-btn{display:inline-block;padding:13px 32px;background:var(--or);color:#fff;text-decoration:none;border-radius:var(--rm);font-weight:600;font-size:15px}

/* ── Body ── */
.n-cart-body{padding:14px 14px 175px;max-width:1240px;margin:0 auto}
@media(min-width:481px){.n-cart-body{padding:16px 20px 175px}}
@media(min-width:768px){.n-cart-body{padding:20px 28px 175px}}
@media(min-width:1024px){.n-cart-body{padding:24px 28px 60px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}}

/* ── Items card ── */
.n-cart-items-card{background:var(--wh);border-radius:var(--rm);box-shadow:0 2px 16px rgba(0,0,0,.06);margin-bottom:10px;padding:14px 16px}
@media(min-width:481px){.n-cart-items-card{padding:20px}}
@media(min-width:768px){.n-cart-items-card{padding:24px}}

.n-cart-items-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;margin-bottom:8px;border-bottom:1px solid var(--g1);font-size:12px;font-weight:600;color:var(--bk)}
@media(min-width:1024px){.n-cart-items-head{font-size:16px}}
.n-cart-items-qty{font-size:11px;color:var(--g4);font-weight:400}

/* ── Item row ── */
.n-cart-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--g1);align-items:center}
.n-cart-item:last-child{border-bottom:none}

.n-cart-item-img{width:56px;height:56px;border-radius:var(--rs);overflow:hidden;flex-shrink:0;border:1px solid var(--g1)}
.n-cart-item-img img{width:100%;height:100%;object-fit:cover;display:block}
.n-cart-rm{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--g4);font-size:18px;line-height:1;text-decoration:none;flex-shrink:0;transition:color 0.2s;align-self:center}
.n-cart-rm:hover{color:var(--rd)}

.n-cart-item-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:6px}
.n-cart-item-name{font-size:13px;font-weight:600;color:var(--bk);line-height:1.35}

/* ── Variation chips ── */
.n-cart-chips{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.n-cart-chip{font-size:8px;font-weight:500;color:var(--g6);background:var(--g1);padding:1px 5px;border-radius:3px}

/* ── Item foot: chips+qty + price ── */
.n-cart-item-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
.n-cart-item-price{display:flex;flex-direction:column;align-items:flex-end;gap:1px}
.n-cart-price-old{font-size:10px;font-weight:400;color:var(--rd);text-decoration:line-through;white-space:nowrap}
.n-cart-price-cur{font-size:14px;font-weight:700;color:var(--bk);white-space:nowrap}

/* ── Qty controls ── */
.n-cart-qty{display:flex;align-items:center;border:1.5px solid var(--g2);border-radius:20px;overflow:hidden;height:20px;flex-shrink:0}
.n-cart-q-btn{width:22px;height:100%;background:none;border:none;font-size:12px;line-height:1;color:var(--g6);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s;flex-shrink:0;padding:0;font-family:inherit}
.n-cart-q-btn:active{background:var(--g1);color:var(--bk)}
.n-cart-q-btn:disabled{color:var(--g2);cursor:default}
.n-cart-q-inp{width:22px;text-align:center;font-size:11px;font-weight:600;color:var(--bk);border:none;border-left:1px solid var(--g2);border-right:1px solid var(--g2);background:none;-moz-appearance:textfield;pointer-events:none;padding:0;height:100%;font-family:inherit}
.n-cart-q-inp::-webkit-inner-spin-button,.n-cart-q-inp::-webkit-outer-spin-button{-webkit-appearance:none}

.n-cart-busy{opacity:.45;pointer-events:none;transition:opacity .2s}

/* ── Summary card ── */
.n-cart-summary-col{display:none}
@media(min-width:1024px){.n-cart-summary-col{display:block;position:sticky;top:80px}}
.n-cart-summary-card{background:var(--wh);border-radius:var(--rm);box-shadow:0 2px 16px rgba(0,0,0,.06);padding:16px}
@media(min-width:1024px){.n-cart-summary-card{padding:20px}}

.n-cart-sum-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--g6);padding:4px 0}
.n-cart-sum-disc{color:var(--gn);font-weight:600}
.n-cart-sum-total{font-size:16px;font-weight:700;color:var(--bk);padding-top:12px;margin-top:8px;border-top:1px solid var(--g1)}
@media(min-width:1024px){.n-cart-sum-total{font-size:18px}}

.n-cart-del-note{font-size:10px;color:var(--g4);margin-top:8px}

/* ── CTA ── */
.n-cart-cta-desk{display:none}
@media(min-width:1024px){.n-cart-cta-desk{display:flex;flex-direction:column;gap:10px;margin-top:16px}}

.n-cart-cta-mob{position:fixed;bottom:0;left:0;width:100%;padding:12px 14px calc(14px + env(safe-area-inset-bottom,0px));background:var(--wh);border-top:1px solid var(--g1);box-shadow:0 -4px 20px rgba(0,0,0,.07);z-index:200}
@media(min-width:481px){.n-cart-cta-mob{padding:12px 20px calc(14px + env(safe-area-inset-bottom,0px))}}
@media(min-width:1024px){.n-cart-cta-mob{display:none}}
.n-cart-mob-sum{margin-bottom:10px}
.n-cart-mob-disc{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--g6);margin-bottom:3px}
.n-cart-mob-total{display:flex;justify-content:space-between;align-items:center}
.n-cart-mob-total>span:first-child{font-size:13px;font-weight:600;color:var(--g6)}
.n-cart-mob-total>span:last-child{font-size:20px;font-weight:700;color:var(--bk)}
.n-cart-mob-sum .n-cart-del-note{margin-top:2px}

/* ── CTA button ── */
.n-cart-btn{display:flex;align-items:center;justify-content:center;width:100%;height:50px;background:var(--or);color:#fff;border-radius:50px;font-size:16px;font-weight:600;letter-spacing:.04em;box-shadow:0 2px 8px rgba(0,0,0,.15);animation:nCtaBuzz 4s ease-in-out infinite;-webkit-tap-highlight-color:transparent;transition:filter .15s}
.n-cart-btn:active{filter:brightness(.85)}
@media(min-width:1024px){.n-cart-btn{height:50px;font-size:16px}}

.n-cart-back{display:flex;align-items:center;justify-content:center;gap:4px;padding:14px 16px;font-size:12px;color:var(--g4);text-decoration:none;-webkit-tap-highlight-color:transparent}
.n-cart-back:active{color:var(--g6)}

/* ── Tablet ── */
@media(min-width:481px){.n-cart-item-img{width:64px;height:64px}.n-cart-item-name{font-size:14px}}
@media(min-width:768px){.n-cart-item-img{width:72px;height:72px}.n-cart-item-price{font-size:15px}}
