/* ArtsyWall sepet / satın alma bileşenleri */

.artsy-buybox {
  margin: 18px 0;
  padding: 20px;
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  background: #fafafa;
  max-width: 420px;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  color: #222;
}
.artsy-buybox .artsy-price-m2 {
  font-size: 32px;
  font-weight: 700;
  color: #111;
}
.artsy-buybox .artsy-price-m2 small { font-size: 16px; font-weight: 400; color: #777; }
.artsy-buybox .artsy-vat {
  margin-top: 2px;
  font-size: 13px;
  color: #1a7f37;
}
.artsy-buybox .artsy-panel-info {
  margin-top: 6px;
  font-size: 15px;
  color: #555;
}
.artsy-buybox .artsy-qty {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 10px;
}
.artsy-buybox .artsy-step {
  width: 38px; height: 38px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 6px;
  font-size: 20px; line-height: 1;
  cursor: pointer;
  color: #333;
}
.artsy-buybox .artsy-step:hover { background: #f0f0f0; }
.artsy-buybox .artsy-qty-input {
  width: 68px; height: 38px;
  text-align: center;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
}
.artsy-buybox .artsy-unit { font-size: 14px; color: #666; }
.artsy-buybox .artsy-subtotal {
  font-size: 15px; color: #333;
  margin-bottom: 14px;
}
.artsy-buybox .artsy-subtotal small { color: #888; }
.artsy-buybox .artsy-add-btn {
  display: inline-block;
  width: 100%;
  padding: 14px 20px;
  border: none;
  border-radius: 8px;
  background: #111;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s;
}
.artsy-buybox .artsy-add-btn:hover { background: #333; }
.artsy-buybox .artsy-added-msg {
  margin-top: 12px;
  font-size: 14px;
  color: #1a7f37;
}
.artsy-buybox .artsy-added-msg a { color: #111; font-weight: 600; }
.artsy-buybox.artsy-unavailable { color: #999; max-width: 420px; }

/* yüzen sepet butonu */
#artsy-cart-fab {
  position: fixed;
  right: 22px; bottom: 22px;
  width: 58px; height: 58px;
  background: linear-gradient(145deg, #d7b66f 0%, #a8732d 100%);
  color: #171108;
  border: 1px solid rgba(91,57,18,.45);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-shadow: 0 11px 30px rgba(103,67,24,.34);
  z-index: 900;
  transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
  -webkit-tap-highlight-color: transparent;
}
#artsy-cart-fab:hover { background: linear-gradient(145deg, #e0c17d 0%, #b77f34 100%); box-shadow: 0 14px 34px rgba(103,67,24,.42); transform: translateY(-2px); }
#artsy-cart-fab:active { transform: translateY(0) scale(.97); }
#artsy-cart-fab:focus-visible { outline: 3px solid #7b5425; outline-offset: 3px; }
#artsy-cart-fab .artsy-fab-icon { display: block; width: 27px; height: 27px; line-height: 1; }
#artsy-cart-fab .artsy-fab-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#artsy-cart-fab .artsy-fab-count {
  position: absolute;
  top: -4px; right: -4px;
  min-width: 22px; height: 22px;
  padding: 0 5px;
  background: #171108;
  color: #fff;
  border: 2px solid #f1d69f;
  border-radius: 11px;
  font-size: 12px;
  font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  font-family: Arial, sans-serif;
}

/* ---- sepet sayfası ---- */
.artsy-cart-page {
  max-width: 960px;
  margin: 0 auto;
  padding: 30px 18px 80px;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  color: #222;
}
.artsy-cart-page h1 { font-size: 26px; margin: 0 0 20px; }
.artsy-cart-empty { padding: 40px 0; color: #777; font-size: 16px; }
.artsy-cart-table { width: 100%; border-collapse: collapse; }
.artsy-cart-table th, .artsy-cart-table td {
  padding: 12px 10px;
  border-bottom: 1px solid #eee;
  text-align: left;
  vertical-align: middle;
  font-size: 14px;
}
.artsy-cart-table th { color: #888; font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .03em; }
.artsy-cart-table td.num, .artsy-cart-table th.num { text-align: right; }
.artsy-cart-table img { width: 64px; height: 64px; object-fit: cover; border-radius: 6px; }
.artsy-cart-prod { display: flex; align-items: center; gap: 12px; }
.artsy-cart-prod strong { display: block; font-size: 15px; }
.artsy-cart-prod span { color: #888; font-size: 12px; }
.artsy-cart-qty { display: inline-flex; align-items: center; gap: 6px; }
.artsy-cart-qty button {
  width: 30px; height: 30px; border: 1px solid #ccc; background: #fff;
  border-radius: 5px; cursor: pointer; font-size: 16px;
}
.artsy-cart-qty input {
  width: 52px; height: 30px; text-align: center; border: 1px solid #ccc; border-radius: 5px;
}
.artsy-cart-remove { color: #e63946; cursor: pointer; background: none; border: none; font-size: 13px; text-decoration: underline; }
.artsy-cart-summary {
  margin-top: 26px;
  display: flex; flex-direction: column; align-items: flex-end; gap: 6px;
}
.artsy-cart-summary .artsy-grand {
  font-size: 22px; font-weight: 700;
}
.artsy-cart-summary .artsy-grand-area { color: #888; font-size: 14px; }
.artsy-checkout-btn {
  margin-top: 16px;
  padding: 14px 34px;
  background: #111; color: #fff; border: none; border-radius: 8px;
  font-size: 16px; font-weight: 600; cursor: pointer;
}
.artsy-checkout-btn:hover { background: #333; }
.artsy-checkout-note { margin-top: 10px; font-size: 12px; color: #999; }
.artsy-cart-back { display: inline-block; margin-bottom: 20px; color: #555; text-decoration: none; font-size: 14px; }
.artsy-cart-back:hover { color: #111; }

@media (max-width: 640px) {
  .artsy-cart-table thead { display: none; }
  .artsy-cart-table, .artsy-cart-table tbody, .artsy-cart-table tr, .artsy-cart-table td { display: block; width: 100%; }
  .artsy-cart-table tr { border-bottom: 2px solid #eee; padding: 10px 0; }
  .artsy-cart-table td { border: none; padding: 6px 0; }
  .artsy-cart-table td.num { text-align: left; }
  .artsy-buybox { padding: 16px; }
  .artsy-buybox .artsy-price-m2 { font-size: 28px; }
  #artsy-cart-fab { right: 16px; bottom: 16px; width: 52px; height: 52px; }
}

/* ---- ürün detay sayfası düzen iyileştirmeleri (yalnızca geniş ekran) ----
   Amaç: ürün görselini küçültüp 4:3 orana sabitlemek (global.css'te aspect-ratio),
   böylece sepet kutusu + "More ... Colors" renk grid'i kaydırmadan tek ekrana sığsın. */
@media (min-width: 993px) {
  .product_details_introduce_section .introduce_left_box { width: 46%; padding-right: 30px; }
  .product_details_introduce_section .introduce_right_box { width: 54%; padding-left: 40px; }
  .introduce_right_box h1,
  .introduce_right_box h2 { font-size: 38px; line-height: 46px; margin-bottom: 14px; }
  #artsy-buy-box { margin-top: 6px; }
  .artsy-buybox { margin: 12px 0; padding: 16px 20px; }
  .introduce_right_box .product_details_thumbnail { margin-top: 20px; }
  .introduce_right_box .product_details_thumbnail h3 { font-size: 16px; margin-bottom: 8px; }
  .introduce_right_box .product_details_thumbnail_list ul li { width: 7%; margin: 0.4%; }
}

/* Ürün adı + indirme butonu: tablet/masaüstünde mobildeki aynı satır mantığı. */
@media (min-width: 769px) {
  .product_details_introduce_section {
    padding-bottom: 36px;
  }
  .product_details_introduce_section .introduce_right_box {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    column-gap: 16px;
    align-content: start;
    min-width: 0;
  }
  .introduce_right_box > h2 {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
  }
  .introduce_right_box > #artsy-buy-box {
    grid-column: 1 / -1;
    grid-row: 2;
    min-width: 0;
    margin-top: 12px;
  }
  .introduce_right_box > #artsy-buy-box .artsy-buybox {
    margin: 0;
  }
  .introduce_right_box > .product_link_box {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    width: auto;
    margin: 0;
  }
  .introduce_right_box > .product_link_box a {
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    font-size: 15px;
    line-height: 22px;
    white-space: nowrap;
    cursor: pointer;
  }
  .aw-detail-new-products {
    margin-top: 0;
    padding-top: 32px;
  }
}

/* Mobil sıralama korunur; yalnızca birikmiş dikey boşluk ve olası taşma azaltılır. */
@media (max-width: 768px) {
  .product_details_introduce_section {
    padding-bottom: 24px;
  }
  .introduce_right_box,
  #artsy-buy-box,
  .artsy-buybox {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  .artsy-buybox {
    width: 100%;
  }
  .aw-detail-new-products {
    margin-top: 0;
    padding-top: 24px;
  }
}

@media (min-width: 769px) and (max-width: 992px) {
  .product_details_introduce_section .introduce_right_box {
    column-gap: 12px;
  }
  .introduce_right_box > h2 {
    font-size: 30px;
    line-height: 38px;
  }
  .introduce_right_box > .product_link_box a {
    padding: 7px 10px;
    font-size: 14px;
    line-height: 22px;
  }
}
