/*!
 * cart-layout-v2.css
 * Theme: Tayfun Silver Wholesale — Premium Clean Cart Layout
 * Version: v2.1.0
 * Notes:
 * - Desktop header/body kolon hizaları stabilize edildi
 * - Gem / Plating / Ring Size hizalama problemi giderildi
 * - Current cart_items.php markup ile uyumlu olacak şekilde header hizaları nth-child ile çözüldü
 * - Mobil kart düzeni korundu ve temizlendi
 */

@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&display=swap");

/* ==========================================================
   1) TOKENS
   ========================================================== */
:root{
  --color-brand-primary:#1f2b44;
  --color-brand-primary-hover:#172339;
  --color-brand-accent:#c67986;
  --color-brand-accent-hover:#b36876;

  --color-text-primary:#0e1424;
  --color-text-secondary:#4b5563;
  --color-text-tertiary:#6b7280;
  --color-text-muted:#9ca3af;

  --color-border-light:#e5e7eb;
  --color-border-medium:#d1d5db;
  --color-border-strong:#c9ced8;

  --color-bg-page:#ffffff;
  --color-bg-white:#ffffff;
  --color-bg-soft:#f7f7f7;
  --color-bg-hover:#f8fafc;
  --color-bg-selected:#f4f7ff;

  --color-danger:#e53935;
  --color-danger-hover:#c62828;

  --font-body:"Open Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-heading:"Open Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

  --fw-regular:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;

  --radius-panel:26px;
  --radius-inner:22px;
  --radius-card:18px;
  --radius-button:999px;
  --radius-sm:10px;
  --radius-xs:6px;

  --space-xs:.25rem;
  --space-sm:.5rem;
  --space-md:1rem;
  --space-lg:1.25rem;
  --space-xl:1.75rem;
  --space-2xl:2.5rem;

  --shadow-0:none;
  --shadow-sm:0 2px 8px rgba(15,23,42,.06);
  --shadow-md:0 6px 18px rgba(15,23,42,.08);

  --transition-fast:.15s ease;
  --transition-base:.18s ease;

  --z-base:1;
  --z-sticky:20;
  --z-tooltip:200;

  /* Desktop cart grid */
  --cart-grid-columns:
    34px
    78px
    minmax(300px, 4.55fr)
    minmax(98px, .92fr)
    minmax(112px, 1fr)
    minmax(112px, 1fr)
    minmax(90px, .86fr)
    minmax(100px, .92fr)
    minmax(104px, .96fr)
    minmax(64px, .60fr)
    minmax(124px, 1.08fr);
}

/* ==========================================================
   2) BASE
   ========================================================== */
html,
body{
  background:var(--color-bg-page) !important;
}

div[style*="background-color:#f3f6f9"],
div[style*="background-color: #f3f6f9"]{
  background-color:var(--color-bg-page) !important;
}

.cart-main-div,
.no-cart-items-main-div,
.shopButtonT{
  box-sizing:border-box;
  margin:0;
  padding:0;
  font-family:var(--font-body);
  font-weight:var(--fw-regular);
  color:var(--color-text-primary);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:.9rem;
  line-height:1.5;
}

.cart-main-div *,
.no-cart-items-main-div *,
.shopButtonT *{
  box-sizing:border-box;
}

.cart-main-div *:focus-visible{
  outline:2px solid var(--color-brand-primary);
  outline-offset:2px;
}

.tooltip{
  font-size:12px !important;
  z-index:var(--z-tooltip);
}

/* ==========================================================
   3) PAGE LAYOUT
   ========================================================== */
.cart-main-div{
  width:100%;
  max-width:100%;
  margin:0 auto;
  background:var(--color-bg-page);
  min-height:100vh;
  padding:var(--space-xl) 0 var(--space-2xl);
  display:flex;
  flex-direction:column;
  gap:var(--space-lg);
}

.cart-main-div > div,
.cart-main-div > form{
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
  padding-left:16px;
  padding-right:16px;
}

.cart-left-div,
.cart-right-div{
  width:100% !important;
  max-width:100% !important;
  float:none !important;
}

.cart-right-div{
  position:static !important;
}

@media (max-width:1199.98px){
  .cart-main-div > div,
  .cart-main-div > form{
    padding-left:16px;
    padding-right:16px;
  }
}

@media (max-width:640px){
  .cart-main-div{
    padding:var(--space-lg) 0 var(--space-xl);
    gap:var(--space-md);
  }

  .cart-main-div > div,
  .cart-main-div > form{
    padding-left:10px;
    padding-right:10px;
  }
}

/* ==========================================================
   4) FREE SHIPPING
   ========================================================== */
.cart-free-shipping-banner{
  margin-bottom:1.2rem;
  padding:var(--space-sm) var(--space-md);
  text-align:center;
  font-weight:var(--fw-semibold);
  color:var(--color-brand-primary);
  letter-spacing:.02em;
  background:var(--color-bg-selected);
  border-radius:var(--radius-sm);
  border:1px solid var(--color-border-light);
}

/* ==========================================================
   5) BULK BAR
   ========================================================== */
#cart-items-wrapper{
  width:100%;
  margin-top:0;
  margin-bottom:28px;
}

.cart-bulk-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:8px 12px;
  background:var(--color-brand-primary);
  border-radius:var(--radius-sm);
  margin-bottom:10px;
  box-shadow:var(--shadow-sm);
  font-size:11px;
  gap:var(--space-md);
  color:#fff;
}

.cart-bulk-left{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.cart-bulk-title{
  font-weight:var(--fw-semibold);
  font-size:12px;
  color:#fff;
}

.cart-bulk-subtitle{
  font-size:11px;
  color:rgba(255,255,255,.82);
}

.cart-bulk-right{
  display:flex;
  align-items:center;
  gap:var(--space-sm);
  font-size:11px;
  color:rgba(255,255,255,.88);
}

.cart-bulk-delete-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-xs);
  border:none;
  padding:6px 12px;
  border-radius:var(--radius-button);
  font-size:11px;
  cursor:pointer;
  background:var(--color-danger);
  color:#fff;
  font-weight:var(--fw-semibold);
  letter-spacing:.04em;
  text-transform:uppercase;
  transition:
    background var(--transition-base),
    transform var(--transition-fast),
    opacity var(--transition-base);
  white-space:nowrap;
}

.cart-bulk-delete-btn i{
  font-size:11px;
}

.cart-bulk-delete-btn:not(:disabled):hover{
  background:var(--color-danger-hover);
  transform:translateY(-1px);
}

.cart-bulk-delete-btn:not(:disabled):active{
  transform:translateY(0);
}

.cart-bulk-delete-btn[disabled]{
  cursor:not-allowed;
  background:#fff;
  color:var(--color-text-muted);
  border:1px solid rgba(255,255,255,.7);
  opacity:1;
}

@media (max-width:640px){
  .cart-bulk-bar{
    flex-direction:column;
    align-items:stretch;
    gap:var(--space-sm);
  }

  .cart-bulk-right{
    justify-content:space-between;
  }
}

/* ==========================================================
   6) CART WINDOW
   ========================================================== */
.cart-items-window{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  background:var(--color-bg-white);
  border-radius:var(--radius-inner);
  border:1px solid var(--color-border-strong);
  box-shadow:var(--shadow-md);
  overflow:hidden;
}

.cart-items-header,
.cart-row{
  display:grid;
  grid-template-columns:var(--cart-grid-columns);
  align-items:center;
  column-gap:8px;
}

.cart-items-header > .cart-col,
.cart-row > .cart-col{
  min-width:0;
}

/* ==========================================================
   7) HEADER ALIGNMENT
   cart_items.php current markup generic header cell classes kullandığı için
   nth-child ile birebir hizalıyoruz.
   ========================================================== */
.cart-items-header{
  padding:8px 12px;
  background:var(--color-brand-primary);
  border-bottom:1px solid rgba(0,0,0,.14);
  font-size:.58rem;
  font-weight:var(--fw-semibold);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#fff;
  position:sticky;
  top:0;
  z-index:var(--z-base);
}

.cart-items-header .cart-col{
  white-space:nowrap;
  line-height:1.2;
}

.cart-items-header .cart-col:nth-child(1),
.cart-items-header .cart-col:nth-child(2),
.cart-items-header .cart-col:nth-child(4),
.cart-items-header .cart-col:nth-child(5),
.cart-items-header .cart-col:nth-child(6),
.cart-items-header .cart-col:nth-child(10){
  text-align:center;
}

.cart-items-header .cart-col:nth-child(2){
  display:flex;
  align-items:center;
  justify-content:center;
  padding-left:0;
  padding-right:0;
}

.cart-items-header .cart-col:nth-child(3){
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  padding-left:2px;
}

.cart-items-header .cart-col:nth-child(7),
.cart-items-header .cart-col:nth-child(8),
.cart-items-header .cart-col:nth-child(9),
.cart-items-header .cart-col:nth-child(11){
  text-align:right;
}

/* ==========================================================
   8) BODY
   ========================================================== */
.cart-items-body{
  max-height:580px;
  overflow-y:auto;
  overflow-x:hidden;
}

.cart-row{
  padding:10px 12px;
  border-bottom:1px solid var(--color-border-light);
  font-size:.76rem;
  color:var(--color-text-primary);
  background:var(--color-bg-white);
  transition:background var(--transition-base);
}

.cart-row:last-child{
  border-bottom:none;
}

.cart-row:hover{
  background:var(--color-bg-hover);
}

.cart-row-selected{
  background:var(--color-bg-selected) !important;
}





/* ==========================================================
   8.5) SMALL DESKTOP POLISH
   Checkbox column'a soldan biraz daha nefes veriyoruz.
   ========================================================== */
@media (min-width:1280px){
  .cart-items-header .cart-col:first-child{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding-left:6px;
  }

  .cart-row .col-select{
    justify-content:flex-start;
    padding-left:6px;
  }
}

@media (max-width:1279.98px){
  .cart-items-window{
    overflow-x:auto;
    border-radius:var(--radius-card);
  }

  .cart-items-header,
  .cart-row{
    min-width:1260px;
  }

  .cart-items-body{
    max-height:none;
    overflow-y:visible;
  }
}

/* ==========================================================
   9) CHECKBOX
   ========================================================== */
.col-select{
  text-align:center;
  display:flex;
  align-items:center;
  justify-content:center;
}

.col-select input[type="checkbox"]{
  -webkit-appearance:none;
  appearance:none;
  width:16px !important;
  height:16px !important;
  cursor:pointer;
  border:1px solid var(--color-text-secondary);
  border-radius:var(--radius-xs);
  background:#fff;
  position:relative;
  transition:all var(--transition-base);
  flex-shrink:0;
}

.col-select input[type="checkbox"]:hover{
  border-color:var(--color-brand-primary);
}

.col-select input[type="checkbox"]:checked{
  background:var(--color-brand-primary);
  border-color:var(--color-brand-primary);
}

.col-select input[type="checkbox"]:checked::after{
  content:"✓";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -56%);
  font-size:9px;
  color:#fff;
  font-weight:var(--fw-bold);
}

/* ==========================================================
   10) IMAGE
   ========================================================== */
.col-image{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.col-image{
  padding-left:0;
  padding-right:0;
}

.col-product{
  padding-left:2px;
}
.col-image img{
  width:66px;
  height:92px;
  object-fit:cover;
  border-radius:var(--radius-sm);
  border:1px solid var(--color-border-light);
  box-shadow:var(--shadow-sm);
  transition:transform var(--transition-base);
  display:block;
}

.col-image img:hover{
  transform:scale(1.03);
}

/* ==========================================================
   11) PRODUCT
   ========================================================== */
.col-product{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:3px;
  text-align:left;
}

.cart-product-title{
  font-family:var(--font-heading);
  font-size:.78rem;
  font-weight:var(--fw-semibold);
  line-height:1.28;
  margin:0;
}

.cart-product-title a{
  color:var(--color-text-primary);
  text-decoration:none;
  transition:color var(--transition-base);
}

.cart-product-title a:hover{
  color:var(--color-brand-accent);
}

.cart-left-variant-div,
.kdv-info,
.havale-info,
.kargo-info{
  font-size:.66rem;
  color:var(--color-text-secondary);
  letter-spacing:.01em;
  line-height:1.4;
}

.group-price-tag{
  background:var(--color-brand-primary);
  color:#fff;
  font-size:.56rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:var(--fw-semibold);
  border-radius:var(--radius-xs);
  padding:2px 6px;
  align-self:flex-start;
  display:inline-block;
}

.cart-stock-code{
  font-size:12px;
  margin-top:4px;
  opacity:.75;
  line-height:1.2;
}

.cart-stock-code strong{
  opacity:1;
}

/* ==========================================================
   12) VARIANT COLUMNS
   ========================================================== */
.col-ringsize,
.col-plating,
.col-gem{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  font-size:.74rem;
  color:var(--color-text-secondary);
  font-weight:var(--fw-medium);
  text-align:left;
  white-space:nowrap;
  min-width:0;
}

.var-icon{
  display:inline-block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  background-color:#fff;
  border:1px solid var(--color-border-strong);
  border-radius:50%;
  transition:transform var(--transition-fast);
}

.var-icon:hover{
  transform:scale(1.08);
}

.col-ringsize .var-icon{
  width:19px;
  height:19px;
  flex-basis:19px;
  border:none;
  border-radius:0;
  box-shadow:none;
  background-color:transparent;
  background-size:contain;
}

.col-plating .var-icon{
  border-radius:var(--radius-xs);
}

.col-gem .var-icon{
  border-radius:50%;
}

.col-ringsize span:last-child,
.col-plating span:last-child,
.col-gem span:last-child{
  display:inline-block;
  min-width:0;
  max-width:calc(100% - 24px);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* ==========================================================
   13) NUMERIC COLUMNS
   ========================================================== */
.col-unitweight,
.col-totalweight,
.col-unitprice,
.col-qty,
.col-total{
  font-variant-numeric:tabular-nums;
}

.col-unitweight,
.col-totalweight{
  text-align:right;
  color:var(--color-text-secondary);
  font-weight:var(--fw-medium);
  font-size:.72rem;
}

.col-unitprice,
.col-total{
  text-align:right;
  font-family:var(--font-heading);
  color:var(--color-text-primary);
  font-weight:var(--fw-semibold);
  font-size:.82rem;
  white-space:nowrap;
}

.col-qty{
  text-align:center;
  color:var(--color-text-secondary);
  font-weight:var(--fw-medium);
  font-size:.72rem;
}

.col-total{
  padding-right:2px;
}

.qty-static{
  display:inline-block;
  min-width:1ch;
}

.cart-row-total-wrap{
  display:flex;
  justify-content:flex-end;
  width:100%;
  min-width:0;
}

.cart-row-total-price{
  font-family:var(--font-heading);
  font-size:.96rem;
  font-weight:var(--fw-semibold);
  color:var(--color-brand-primary);
  text-align:right;
  white-space:nowrap;
}

.kdv-note{
  display:block;
  margin-top:2px;
  font-size:.62rem;
  color:var(--color-text-tertiary);
  font-weight:var(--fw-medium);
}

/* ==========================================================
   14) SUMMARY PANEL
   ========================================================== */
.cart-right-div-inside{
  border-radius:var(--radius-panel);
  border:1px solid var(--color-border-strong);
  background:#fff;
  box-shadow:var(--shadow-md);
  margin-bottom:18px;
  width:100%;
  overflow:hidden;
  padding:0;
}

.cart-right-div-head{
  padding:.9rem 1.8rem;
  background:var(--color-brand-primary);
  color:#fff;
  font-family:var(--font-heading);
  font-size:.9rem;
  font-weight:var(--fw-semibold);
  letter-spacing:.13em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(0,0,0,.12);
}

.cart-right-div-head h1,
.cart-right-div-head h2,
.cart-right-div-head h3{
  margin:0;
  font:inherit;
}

.cart-right-div-inside > *:not(.cart-right-div-head){
  padding-inline:1.8rem;
}

.cart-right-div-s{
  font-size:.8rem;
  color:var(--color-text-secondary);
  line-height:1.6;
  margin-bottom:.9rem;
}

.cart-right-div-coupon{
  margin-bottom:var(--space-md);
}

.cart-right-div-coupon input[type="text"]{
  width:100%;
  height:34px;
  border:1px solid var(--color-border-strong);
  border-radius:12px;
  background:#fff;
  color:var(--color-text-primary);
  font-family:var(--font-body);
  padding:0 11px;
  font-size:.78rem;
  transition:border-color var(--transition-base), box-shadow var(--transition-base);
}

.cart-right-div-coupon input[type="text"]:hover{
  border-color:var(--color-brand-primary);
}

.cart-right-div-coupon input[type="text"]:focus{
  outline:none;
  border-color:var(--color-brand-primary);
  box-shadow:0 0 0 3px rgba(31,43,68,.12);
}

.cart-right-div-coupon input[type="text"]::placeholder{
  color:var(--color-text-muted);
}

.button-blue,
.cart-right-div-coupon button{
  background:var(--color-brand-primary);
  color:#fff;
  border:none;
  border-radius:var(--radius-button);
  padding:0 1.3rem;
  height:36px;
  font-family:var(--font-body);
  font-weight:var(--fw-semibold);
  font-size:.8rem;
  cursor:pointer;
  box-shadow:var(--shadow-sm);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-xs);
  transition:
    transform var(--transition-base),
    background var(--transition-base),
    box-shadow var(--transition-base);
  white-space:nowrap;
}

.button-blue:hover,
.cart-right-div-coupon button:hover{
  background:var(--color-brand-primary-hover);
  transform:translateY(-1px);
  box-shadow:var(--shadow-md);
}

.button-blue:active,
.cart-right-div-coupon button:active{
  transform:translateY(0);
}

#export-buttons{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--space-sm);
  margin:0 0 14px;
}

#export-buttons .button-blue{
  width:100%;
  height:34px;
  padding:0 1.2rem;
  font-size:.78rem;
}

#export-buttons .button-blue i{
  font-size:.84rem;
  margin-right:6px;
}

.cart-right-div-price-box{
  padding:.55rem 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:.82rem;
  border-bottom:1px dashed var(--color-border-light);
}

.cart-right-div-price-box:last-of-type{
  border-bottom:none;
}

.cart-right-div-price-box-left{
  color:var(--color-text-secondary);
  font-weight:var(--fw-medium);
}

.cart-right-div-price-box-right{
  color:var(--color-text-primary);
  font-family:var(--font-heading);
  font-weight:var(--fw-semibold);
  font-size:.9rem;
  font-variant-numeric:tabular-nums;
}

.font-16{
  font-size:1.28rem;
  color:var(--color-brand-primary);
  font-weight:var(--fw-semibold);
}

.cart-right-div-price-box-right .cart-shipping-info{
  font-size:.7rem;
  color:var(--color-text-tertiary);
  display:inline-flex;
  align-items:center;
  gap:var(--space-xs);
  white-space:nowrap;
  font-style:italic;
  cursor:help;
  text-decoration:underline dotted rgba(119,119,119,.6);
  transition:color var(--transition-base);
}

.cart-right-div-price-box-right .cart-shipping-info:hover{
  color:var(--color-brand-primary);
}

.cart-right-div-price-box-right .cart-shipping-info i{
  font-size:11px;
  opacity:.8;
}

/* ==========================================================
   15) SCROLLBAR
   ========================================================== */
.cart-items-body::-webkit-scrollbar{
  width:8px;
  height:8px;
}

.cart-items-body::-webkit-scrollbar-track{
  background:var(--color-bg-soft);
  border-radius:var(--radius-xs);
}

.cart-items-body::-webkit-scrollbar-thumb{
  background-color:var(--color-border-strong);
  border-radius:var(--radius-xs);
  border:2px solid var(--color-bg-soft);
}

.cart-items-body{
  scrollbar-width:thin;
  scrollbar-color:var(--color-border-strong) var(--color-bg-soft);
}

/* ==========================================================
   16) PRINT
   ========================================================== */
@media print{
  .cart-main-div{
    max-width:100%;
    padding:0;
  }

  .cart-main-div > div,
  .cart-main-div > form{
    max-width:100%;
    padding:0;
  }

  .cart-bulk-bar,
  .cart-right-div-coupon,
  #export-buttons{
    display:none !important;
  }

  .cart-items-body{
    max-height:none;
    overflow:visible;
  }

  .cart-right-div{
    position:static !important;
    page-break-before:always;
  }
}

/* ==========================================================
   17) REDUCED MOTION
   ========================================================== */
@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}

/* ==========================================================
   18) MOBILE
   ========================================================== */
@media (max-width:768px){

  .cart-items-window,
  .cart-bulk-bar,
  .cart-right-div-inside,
  .button-blue,
  .cart-right-div-coupon button,
  .col-image img{
    box-shadow:var(--shadow-0) !important;
  }

  .cart-main-div{
    padding:12px 0 18px;
    gap:12px;
  }

  .cart-main-div > div,
  .cart-main-div > form{
    padding-left:10px;
    padding-right:10px;
  }

  #cart-items-wrapper{
    margin-bottom:16px;
  }

  .cart-items-header{
    display:none !important;
  }

  .cart-items-window{
    border-radius:var(--radius-card);
    border:1px solid var(--color-border-strong);
    overflow:hidden;
  }

  .cart-items-body{
    max-height:none !important;
    overflow:visible !important;
  }

  .cart-row{
    display:block !important;
    min-width:100% !important;
    padding:12px 12px 14px !important;
    border-bottom:1px solid var(--color-border-light) !important;
    background:#fff !important;
    position:relative;
  }

  .cart-row:last-child{
    border-bottom:none !important;
  }

  .cart-row .col-select{
    position:absolute;
    top:12px;
    left:12px;
    z-index:var(--z-sticky);
    text-align:left;
    justify-content:flex-start;
  }

  .cart-row .col-image{
    margin:2px 0 10px;
    padding:0 !important;
    justify-content:center;
  }

  .cart-row .col-image,
  .cart-row .col-image a{
    background:transparent !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
  }

  .cart-row .col-image img{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    max-height:260px;
    object-fit:contain !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    padding:0 !important;
    margin:8px auto 0 !important;
  }

  .cart-row .col-product{
    margin-top:6px;
    text-align:left;
  }

  .cart-row .cart-product-title{
    font-size:.92rem;
    line-height:1.25;
  }

  .cart-row .cart-product-title a{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  .cart-row .col-product,
  .cart-row .col-ringsize,
  .cart-row .col-plating,
  .cart-row .col-gem,
  .cart-row .col-unitweight,
  .cart-row .col-totalweight,
  .cart-row .col-unitprice,
  .cart-row .col-qty,
  .cart-row .col-total{
    margin-top:10px;
    text-align:left;
  }

  .cart-row .col-product::before,
  .cart-row .col-ringsize::before,
  .cart-row .col-plating::before,
  .cart-row .col-gem::before,
  .cart-row .col-unitweight::before,
  .cart-row .col-totalweight::before,
  .cart-row .col-unitprice::before,
  .cart-row .col-qty::before,
  .cart-row .col-total::before{
    display:block;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--color-text-muted);
    margin-bottom:2px;
  }

  .cart-row .col-product::before{ content:"Product:"; }
  .cart-row .col-ringsize::before{ content:"Ring Size:"; }
  .cart-row .col-plating::before{ content:"Plating Color:"; }
  .cart-row .col-gem::before{ content:"Gem Color:"; }
  .cart-row .col-unitweight::before{ content:"Unit Weight:"; }
  .cart-row .col-totalweight::before{ content:"Total Weight:"; }
  .cart-row .col-unitprice::before{ content:"Unit Price:"; }
  .cart-row .col-qty::before{ content:"Qty:"; }
  .cart-row .col-total::before{ content:"Total:"; }

  .cart-row .col-ringsize,
  .cart-row .col-plating,
  .cart-row .col-gem{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    font-size:.82rem;
    color:var(--color-text-secondary);
  }

  .cart-row .col-unitweight,
  .cart-row .col-totalweight{
    font-size:.82rem;
    font-weight:var(--fw-medium);
    color:var(--color-text-secondary);
    text-align:left;
  }

  .cart-row .col-unitprice,
  .cart-row .col-qty,
  .cart-row .col-total{
    font-size:.86rem;
    font-weight:var(--fw-semibold);
    font-family:var(--font-heading);
    color:var(--color-text-primary);
    text-align:left;
  }

  .cart-row .cart-row-total-wrap{
    justify-content:flex-start;
  }

  .cart-row .cart-row-total-price{
    font-size:1.05rem;
    color:var(--color-brand-primary);
    text-align:left;
  }

  #export-buttons{
    margin:12px 0 8px !important;
    gap:10px !important;
  }

  #export-buttons .button-blue{
    height:44px !important;
    box-shadow:none !important;
    font-size:.82rem !important;
    border:1px solid rgba(255,255,255,.14);
  }

  .cart-right-div-inside{
    border-radius:var(--radius-card);
    box-shadow:none !important;
  }

  .cart-right-div-head{
    padding:.85rem 1.1rem;
    font-size:.86rem;
    letter-spacing:.12em;
  }

  .cart-right-div-inside > *:not(.cart-right-div-head){
    padding-inline:1.1rem;
  }

  .cart-right-div-price-box{
    padding:.55rem 0;
  }

  .font-16{
    font-size:1.18rem;
  }

  .cart-main-div,
  .cart-left-div,
  .cart-right-div{
    overflow-x:hidden !important;
  }
}
/* ==========================================================
   CART CONFIRM MODAL
   ========================================================== */
#confirm-bulk-delete{
  padding-left:12px !important;
  padding-right:12px !important;
}

#confirm-bulk-delete.in{
  display:block;
}

#confirm-bulk-delete .modal-backdrop,
.modal-backdrop.in{
  opacity:.42;
}

.cart-confirm-modal-dialog{
  width:100%;
  max-width:460px;
  margin:30px auto;
}

.cart-confirm-modal-content{
  position:relative;
  border:none;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 24px 70px rgba(15,23,42,.18);
  padding:0;
}

.cart-confirm-close{
  position:absolute;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  border:none;
  border-radius:999px;
  background:#f8fafc;
  color:var(--color-text-secondary);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:3;
  transition:
    background var(--transition-base),
    color var(--transition-base),
    transform var(--transition-fast);
}

.cart-confirm-close i{
  font-size:28px;
  line-height:1;
}

.cart-confirm-close:hover{
  background:#eef2f7;
  color:var(--color-text-primary);
  transform:scale(1.04);
}

.cart-confirm-close:focus{
  outline:none;
}

.cart-confirm-modal-body{
  padding:34px 30px 18px;
  text-align:center;
}

.cart-confirm-icon{
  width:72px;
  height:72px;
  margin:0 auto 18px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#fff5f5 0%, #ffe8e8 100%);
  border:1px solid rgba(229,57,53,.16);
}

.cart-confirm-icon i{
  font-size:30px;
  color:var(--color-danger);
}

.cart-confirm-eyebrow{
  margin-bottom:8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--color-text-muted);
}

.cart-confirm-title{
  margin:0 0 10px;
  font-family:var(--font-heading);
  font-size:1.5rem;
  line-height:1.2;
  font-weight:var(--fw-semibold);
  color:var(--color-text-primary);
}

.cart-confirm-text{
  margin:0;
  font-size:.94rem;
  line-height:1.65;
  color:var(--color-text-secondary);
  max-width:320px;
  margin-left:auto;
  margin-right:auto;
}

.cart-confirm-modal-footer{
  display:flex;
  gap:12px;
  padding:20px 24px 24px;
  border-top:1px solid #eef2f7;
  background:linear-gradient(180deg,#ffffff 0%, #fbfcfe 100%);
}

.cart-confirm-btn{
  flex:1 1 0;
  min-height:48px;
  border:none;
  border-radius:999px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-family:var(--font-body);
  font-size:.84rem;
  font-weight:var(--fw-semibold);
  letter-spacing:.02em;
  cursor:pointer;
  transition:
    transform var(--transition-fast),
    box-shadow var(--transition-base),
    background var(--transition-base),
    color var(--transition-base),
    border-color var(--transition-base);
}

.cart-confirm-btn:focus{
  outline:none;
}

.cart-confirm-btn:hover{
  transform:translateY(-1px);
}

.cart-confirm-btn:active{
  transform:translateY(0);
}

.cart-confirm-btn-secondary{
  background:#fff;
  color:var(--color-text-primary);
  border:1px solid var(--color-border-medium);
  box-shadow:0 4px 12px rgba(15,23,42,.05);
}

.cart-confirm-btn-secondary:hover{
  background:#f8fafc;
  border-color:var(--color-border-strong);
}

.cart-confirm-btn-danger{
  background:var(--color-danger);
  color:#fff;
  box-shadow:0 10px 24px rgba(229,57,53,.22);
}

.cart-confirm-btn-danger:hover{
  background:var(--color-danger-hover);
  color:#fff;
}

.cart-confirm-btn-danger i{
  font-size:14px;
}

@media (max-width:575.98px){
  .cart-confirm-modal-dialog{
    max-width:100%;
    margin:18px auto;
  }

  .cart-confirm-modal-content{
    border-radius:18px;
  }

  .cart-confirm-modal-body{
    padding:28px 18px 16px;
  }

  .cart-confirm-icon{
    width:64px;
    height:64px;
    margin-bottom:14px;
  }

  .cart-confirm-icon i{
    font-size:26px;
  }

  .cart-confirm-title{
    font-size:1.2rem;
  }

  .cart-confirm-text{
    font-size:.88rem;
    max-width:none;
  }

  .cart-confirm-modal-footer{
    padding:16px 16px 18px;
    flex-direction:column;
  }

  .cart-confirm-btn{
    width:100%;
    min-height:46px;
  }
}