/* ==========================================================================
   TUHAFSEYLER — WooCommerce stilleri
   WooCommerce'in kendi CSS'i kapalı; her şey burada.
   ========================================================================== */

.woo-wrap { padding-block: 28px clamp(48px, 8vw, 96px); }
.woo-main { min-height: 50vh; }

/* Mağaza başlığı */
.shop-hero { padding-block: clamp(28px, 5vw, 56px) clamp(20px, 3vw, 32px); background: var(--cream-2); background-image: radial-gradient(rgba(20, 18, 31, .14) 1.4px, transparent 1.4px); background-size: 20px 20px; border-bottom: var(--bw) solid var(--edge); }
html.is-weird .shop-hero { background-color: #1d1438; background-image: radial-gradient(rgba(255, 246, 229, .1) 1.4px, transparent 1.4px); }
.shop-hero__row { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.shop-hero__title { margin: 0 0 .3em; font-size: clamp(2.2rem, 6vw, 4.6rem); }
.shop-hero__desc { max-width: 60ch; color: var(--muted); font-weight: 500; }
.shop-hero__desc > :last-child { margin-bottom: 0; }
.shop-hero__ghost { width: clamp(80px, 12vw, 150px); flex: none; }
.chips { list-style: none; display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.4rem 0 0; }
.chip { display: inline-flex; align-items: center; gap: .5em; padding: .55em 1em; border: var(--bw) solid var(--edge); border-radius: 999px; background: var(--card); font: 700 .95rem var(--f-display); text-decoration: none; box-shadow: 2px 2px 0 var(--edge); transition: transform .18s var(--ease), background .2s; }
.chip small { font: 700 .7rem var(--f-mono); background: var(--ink); color: var(--acid); padding: .15em .5em; border-radius: 999px; }
.chip:hover { transform: translate(-2px, -2px) rotate(-1.5deg); background: var(--acid); color: var(--ink); }
.chip.is-active { background: var(--ink); color: var(--acid); }
html.is-weird .chip.is-active { background: var(--acid); color: var(--ink); }
.chip.is-active small { background: var(--acid); color: var(--ink); }

.shop-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.6rem; }
.woocommerce-result-count { margin: 0; font: 700 .85rem var(--f-mono); text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.woocommerce-ordering { margin: 0; }
.woocommerce-ordering select { width: auto; min-width: 220px; padding-block: .65em; border-radius: 999px; font-weight: 700; box-shadow: 2px 2px 0 var(--edge); }

/* Ürün ızgarası */
ul.products { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 2.2vw, 26px); margin: 0; padding: 0; }
ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
ul.products.columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
ul.products::before, ul.products::after { display: none; }

.pcard { position: relative; display: flex; flex-direction: column; background: var(--card); border: var(--bw) solid var(--edge); border-radius: var(--r); box-shadow: var(--shadow); transition: transform .3s var(--ease), box-shadow .3s var(--ease); min-width: 0; }
.pcard:hover { transform: translate(-4px, -4px) rotate(-.6deg); box-shadow: var(--shadow-lg); }
.pcard:nth-child(even):hover { transform: translate(-4px, -4px) rotate(.6deg); }
.pcard__media { position: relative; aspect-ratio: 1; border-radius: calc(var(--r) - 3px) calc(var(--r) - 3px) 0 0; overflow: hidden; border-bottom: var(--bw) solid var(--edge); background: var(--cream-2); background-image: repeating-linear-gradient(45deg, rgba(20, 18, 31, .05) 0 10px, transparent 10px 20px); }
.pcard__link { display: block; width: 100%; height: 100%; }
.pcard__img, .pcard__img2 { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .35s, transform .5s var(--ease); }
.pcard__img2 { opacity: 0; }
.pcard:hover .pcard__img { transform: scale(1.06); }
.pcard:hover .pcard__img2 { opacity: 1; }
.pcard__body { display: flex; flex-direction: column; gap: .55rem; padding: 1rem 1.05rem 1.15rem; flex: 1; }
.pcard__title { margin: 0; font-size: 1.08rem; line-height: 1.2; letter-spacing: -.02em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.4em; }
.pcard__title a { text-decoration: none; }
.pcard__title a:hover { color: var(--violet); }
html.is-weird .pcard__title a:hover { color: var(--acid); }
.pcard__price { margin-top: auto; }
.pcard .button { margin-top: .4rem; padding-block: .75em; }
.pcard .button.loading { opacity: .6; pointer-events: none; }
.pcard .button.loading::after { content: ""; width: 1em; height: 1em; border: 3px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: spin .7s linear infinite; }
.pcard .button.added { background: var(--acid); color: var(--ink); border-color: var(--ink); }
.pcard .button.added::after { content: "✓"; font-weight: 900; }
.added_to_cart { display: none !important; }

/* Fiyat */
.price { font: 800 1.2rem/1.1 var(--f-display); letter-spacing: -.02em; color: var(--fg); }
.price del { opacity: .5; font-weight: 500; font-size: .85em; margin-right: .4em; }
.price ins { text-decoration: none; background: var(--acid); color: var(--ink); padding: .08em .35em; border-radius: 8px; border: 2px solid var(--ink); display: inline-block; transform: rotate(-2deg); }
.price .woocommerce-price-suffix { font-size: .7em; font-weight: 500; opacity: .7; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; word-wrap: normal !important; }

/* Rozetler, favori, Tuhaflık Ölçeği */
.badges { position: absolute; top: 10px; left: 10px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; z-index: 2; pointer-events: none; }
.badge { display: inline-block; padding: .35em .75em; background: var(--acid); color: var(--ink); border: 2px solid var(--ink); border-radius: 999px; font: 800 .75rem/1 var(--f-display); text-transform: uppercase; letter-spacing: .04em; box-shadow: 2px 2px 0 var(--ink); transform: rotate(-4deg); }
.badge--sale { background: var(--pink); }
.badge--out { background: var(--ink); color: var(--cream); border-color: var(--cream); }
.badge--custom { background: var(--orange); transform: rotate(3deg); }
.badge--new { background: var(--sky); transform: rotate(3deg); }
.pcard .fav { position: absolute; top: 10px; right: 10px; z-index: 2; }
.fav { display: inline-grid; place-items: center; width: 40px; height: 40px; border: var(--bw) solid var(--ink); border-radius: 50%; background: #fffdf6; color: var(--ink); cursor: pointer; box-shadow: 2px 2px 0 var(--ink); transition: transform .2s var(--ease), background .2s; padding: 0; }
.fav .ic { width: 19px; height: 19px; transition: transform .25s var(--ease); }
.fav:hover { transform: scale(1.12) rotate(-6deg); background: var(--pink); }
.fav[aria-pressed="true"] { background: var(--pink); }
.fav[aria-pressed="true"] .ic { fill: var(--ink); animation: heartPop .4s var(--ease); }
.fav--text { width: auto; height: auto; display: inline-flex; gap: .5em; padding: .6em 1em; border-radius: 999px; background: transparent; color: var(--fg); border-color: var(--edge); box-shadow: 2px 2px 0 var(--edge); font: 700 .9rem var(--f-display); }
.fav--text .ic { width: 1.1em; height: 1.1em; }
.fav--text[aria-pressed="true"] { color: var(--ink); }
@keyframes heartPop { 0% { transform: scale(.5); } 60% { transform: scale(1.4); } 100% { transform: scale(1); } }

.meter { display: flex; align-items: center; gap: .55rem; }
.meter__label { font: 700 .66rem var(--f-mono); text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.meter__eyes { display: inline-flex; gap: 3px; }
.meter__eye { position: relative; width: 15px; height: 15px; border: 2px solid var(--edge); border-radius: 50%; background: var(--card); }
.meter__eye.is-on { background: var(--acid); }
.meter__eye.is-on::after { content: ""; position: absolute; width: 5px; height: 5px; left: 3px; top: 3px; border-radius: 50%; background: var(--ink); }
html.is-weird .meter__eye.is-on { border-color: var(--acid); }

/* Tek ürün --------------------------------------------------------------- */
.single-product div.product { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(24px, 5vw, 64px); align-items: start; }
.single-product div.product > .woocommerce-tabs, .single-product div.product > .related, .single-product div.product > .upsells, .single-product div.product > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-product-gallery { position: relative; margin: 0; }
.woocommerce-product-gallery__wrapper { margin: 0; }
/* Galeri: kayma (CLS) olmaması için kareye yakın sabit oran, JS gelmeden yalnız ilk görsel */
.woocommerce-product-gallery { min-width: 0; }
.woocommerce-product-gallery__wrapper { position: relative; }
.woocommerce-product-gallery__image { position: relative; overflow: hidden; border: var(--bw) solid var(--edge); border-radius: var(--r-lg); background: #fff; box-shadow: var(--shadow-lg); aspect-ratio: 4 / 5; }
.woocommerce-product-gallery__image > a { display: block; width: 100%; height: 100%; }
.woocommerce-product-gallery__image img:not(.zoomImg) { width: 100%; height: 100%; object-fit: contain; display: block; }
.woocommerce-product-gallery__image img.zoomImg { max-width: none !important; max-height: none !important; object-fit: fill; background: #fff; }
.woocommerce-product-gallery:not(:has(.flex-viewport)) .woocommerce-product-gallery__image:nth-child(n+2) { display: none; }
.woocommerce-product-gallery .flex-viewport { border-radius: var(--r-lg); }
.woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image { border-radius: var(--r-lg); }
/* Küçük resim satırı gelmeden önce yerini ayır */
.woocommerce-product-gallery:not(:has(.flex-control-thumbs)):has(.woocommerce-product-gallery__image:nth-child(2))::after { content: ""; display: block; height: 100px; margin-top: 18px; }
.woocommerce-product-gallery__trigger { position: absolute; z-index: 5; top: 14px; right: 14px; width: 44px; height: 44px; display: grid; place-items: center; background: var(--acid); border: var(--bw) solid var(--ink); border-radius: 50%; box-shadow: 2px 2px 0 var(--ink); text-indent: -9999px; overflow: hidden; }
.woocommerce-product-gallery__trigger::before { content: ""; position: absolute; width: 14px; height: 14px; border: 3px solid var(--ink); border-radius: 50%; left: 11px; top: 11px; text-indent: 0; }
.woocommerce-product-gallery__trigger::after { content: ""; position: absolute; width: 3px; height: 9px; background: var(--ink); right: 11px; bottom: 7px; transform: rotate(-45deg); border-radius: 2px; text-indent: 0; }
.flex-control-thumbs { list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 18px 0 0; padding: 0; }
.flex-control-thumbs li { margin: 0; }
.flex-control-thumbs li { aspect-ratio: 1; }
.flex-control-thumbs img { width: 100%; height: 100%; aspect-ratio: 1; object-fit: cover; border: var(--bw) solid var(--edge); border-radius: 12px; cursor: pointer; opacity: .65; transition: .2s var(--ease); background: var(--cream-2); }
.flex-control-thumbs img:hover { opacity: 1; transform: translateY(-3px); }
.flex-control-thumbs img.flex-active { opacity: 1; box-shadow: 3px 3px 0 var(--violet); }
.flex-direction-nav { display: none; }
.woocommerce-product-gallery .zoomImg { background: #fff; }

.summary.entry-summary { position: sticky; top: 100px; }
.summary-top { display: flex; align-items: center; gap: .9rem; flex-wrap: wrap; margin-bottom: 1rem; }
.summary-top .badges { position: static; flex-direction: row; pointer-events: auto; }
.product_title { font-size: clamp(1.8rem, 3.6vw, 2.9rem); line-height: 1.02; margin-bottom: .35em; }
.summary .price { font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 1rem; display: block; }
.woocommerce-product-rating { display: flex; align-items: center; gap: .6rem; margin-bottom: .8rem; }
.woocommerce-review-link { font: 700 .85rem var(--f-mono); text-decoration: none; color: var(--muted); }
.woocommerce-product-details__short-description { color: var(--muted); font-size: 1.08rem; margin-bottom: 1.2rem; }
.woocommerce-product-details__short-description > :last-child { margin-bottom: 0; }
.stock { font: 700 .85rem var(--f-mono); text-transform: uppercase; letter-spacing: .06em; padding: .4em .8em; border: 2px solid var(--ink); border-radius: 999px; display: inline-block; background: var(--acid); color: var(--ink); margin-bottom: 1rem; }
.stock.out-of-stock { background: var(--pink); }

form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: .8rem; margin: 1.2rem 0; }
.quantity { display: inline-flex; align-items: center; border: var(--bw) solid var(--edge); border-radius: 999px; background: var(--card); overflow: hidden; box-shadow: 3px 3px 0 var(--edge); }
.quantity input.qty { width: 48px; border: 0; background: none; box-shadow: none; text-align: center; padding: .7em 0; font: 700 1.1rem var(--f-mono); -moz-appearance: textfield; appearance: textfield; transform: none !important; }
.quantity input.qty::-webkit-outer-spin-button, .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.qty-btn { width: 44px; align-self: stretch; display: grid; place-items: center; border: 0; background: none; cursor: pointer; transition: background .15s; }
.qty-btn:hover { background: var(--acid); color: var(--ink); }
.qty-btn .ic { width: 16px; height: 16px; }
.single_add_to_cart_button { flex: 1; min-width: 200px; padding: 1.05em 1.6em; font-size: 1.15rem; }
.single_add_to_cart_button.loading { opacity: .6; }
.single_add_to_cart_button.added::after { content: "✓"; margin-left: .4em; }
.woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: .8rem; width: 100%; }
table.variations { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
table.variations th, table.variations td { display: block; padding: 0; text-align: left; }
table.variations th label { font: 800 .95rem var(--f-display); display: block; margin-bottom: .4rem; }
table.variations td { margin-bottom: 1rem; }
.reset_variations { font: 700 .8rem var(--f-mono); display: inline-block; margin-top: .4rem; }
.woocommerce-variation-price .price { font-size: 1.4rem; }

.buy-extras { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: 1.4rem; }
.tuhaf-note { display: flex; gap: 1rem; align-items: center; padding: 1rem 1.2rem; margin: 1.2rem 0; background: var(--sky); color: var(--ink); border: var(--bw) solid var(--ink); border-radius: var(--r); box-shadow: 4px 4px 0 var(--ink); position: relative; transform: rotate(-.8deg); }
.tuhaf-note__ghost { width: 54px; flex: none; }
.tuhaf-note strong { font: 800 .75rem var(--f-mono); text-transform: uppercase; letter-spacing: .12em; display: block; margin-bottom: .2rem; }
.tuhaf-note p { margin: 0; font: 600 1.02rem/1.35 var(--f-display); }
.trust { list-style: none; display: grid; gap: .7rem; margin: 0 0 1.4rem; padding: 1.1rem 1.2rem; border: var(--bw) dashed var(--edge); border-radius: var(--r); }
.trust li { display: flex; align-items: center; gap: .9rem; }
.trust .ic { width: 38px; height: 38px; padding: 8px; background: var(--acid); color: var(--ink); border: 2px solid var(--ink); border-radius: 50%; }
.trust span { display: grid; line-height: 1.2; }
.trust b { font: 800 .98rem var(--f-display); }
.trust small { color: var(--muted); font-size: .85rem; }
.share { display: flex; align-items: center; gap: .6rem; margin-bottom: 1rem; }
.share span { font: 700 .75rem var(--f-mono); text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.share a, .share button { width: 38px; height: 38px; display: grid; place-items: center; border: 2px solid var(--edge); border-radius: 50%; background: var(--card); color: var(--fg); cursor: pointer; transition: .2s var(--ease); padding: 0; }
.share a:hover, .share button:hover { background: var(--acid); color: var(--ink); transform: rotate(-8deg) scale(1.08); }
.share .ic { width: 18px; height: 18px; }
.product_meta { display: grid; gap: .3rem; font-size: .9rem; color: var(--muted); padding-top: 1rem; border-top: 2px dashed var(--dots); margin-bottom: 1rem; }
.product_meta a { color: var(--fg); font-weight: 600; }
.product_meta .sku_wrapper, .product_meta .posted_in, .product_meta .tagged_as { display: block; }

/* Sekmeler */
.woocommerce-tabs { margin-top: clamp(24px, 4vw, 48px); }
.woocommerce-tabs ul.tabs { list-style: none; display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 -2px; padding: 0; position: relative; z-index: 1; }
.woocommerce-tabs ul.tabs li { margin: 0; }
.woocommerce-tabs ul.tabs a { display: block; padding: .8em 1.4em; border: var(--bw) solid var(--edge); border-bottom: 0; border-radius: var(--r-sm) var(--r-sm) 0 0; background: var(--cream-2); color: var(--ink); font: 800 1rem var(--f-display); text-decoration: none; transition: background .2s; }
.woocommerce-tabs ul.tabs a:hover { background: var(--sky); }
.woocommerce-tabs ul.tabs li.active a { background: var(--acid); }
.woocommerce-Tabs-panel { padding: clamp(18px, 3vw, 36px); border: var(--bw) solid var(--edge); border-radius: 0 var(--r) var(--r) var(--r); background: var(--card); box-shadow: var(--shadow); }
.woocommerce-Tabs-panel > h2 { font-size: 1.5rem; }
.woocommerce-Tabs-panel p { max-width: 75ch; }
table.shop_attributes { width: 100%; border-collapse: collapse; }
table.shop_attributes th, table.shop_attributes td { padding: .8em 0; border-bottom: 2px dashed var(--dots); text-align: left; }
table.shop_attributes th { width: 30%; font: 700 .85rem var(--f-mono); text-transform: uppercase; letter-spacing: .06em; }
table.shop_attributes p { margin: 0; }

/* Yorumlar */
#reviews #comments ol.commentlist { list-style: none; display: grid; gap: 1rem; margin: 1rem 0 2rem; padding: 0; }
#reviews .comment_container { display: flex; gap: 1rem; padding: 1.1rem; border: var(--bw) solid var(--edge); border-radius: var(--r-sm); background: var(--bg); }
#reviews .comment_container img.avatar { width: 52px; height: 52px; border-radius: 50%; border: 2px solid var(--edge); flex: none; }
#reviews .comment-text { flex: 1; }
#reviews .comment-text p { margin: .3em 0 0; }
#reviews .meta { margin: 0 0 .3rem; font-size: .88rem; color: var(--muted); }
#reviews .woocommerce-review__author { color: var(--fg); font-weight: 800; }
.woocommerce-noreviews { color: var(--muted); }
#review_form_wrapper .comment-reply-title { font: 800 1.4rem var(--f-display); display: block; margin-bottom: 1rem; }
.comment-form-rating label { display: block; font: 800 .95rem var(--f-display); margin-bottom: .4rem; }
p.stars { margin: 0; }
p.stars span { display: inline-flex; gap: 4px; }
p.stars a { position: relative; width: 36px; height: 36px; display: inline-block; font-size: 0; text-decoration: none; }
p.stars a::before { content: "★"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 30px; line-height: 1; color: #cfc8b4; transition: color .15s, transform .15s; }
p.stars:hover a::before { color: var(--orange); }
p.stars a:hover ~ a::before { color: #cfc8b4; }
p.stars.selected a.active::before, p.stars.selected a:not(.active)::before { color: var(--orange); }
p.stars.selected a.active ~ a::before { color: #cfc8b4; }
p.stars a:hover::before { transform: scale(1.2) rotate(-8deg); }
.star-rating { position: relative; overflow: hidden; display: inline-block; width: 5.6em; height: 1.1em; line-height: 1.1; font-size: 1.05rem; letter-spacing: .1em; }
.star-rating::before { content: "★★★★★"; position: absolute; left: 0; top: 0; color: #cfc8b4; }
.star-rating span { position: absolute; left: 0; top: 0; overflow: hidden; padding-top: 1.6em; height: 0; }
.star-rating span::before { content: "★★★★★"; position: absolute; left: 0; top: 0; color: var(--orange); }

/* İlgili ürünler başlıkları */
.related.products > h2, .upsells.products > h2, .cross-sells > h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); margin-block: clamp(32px, 5vw, 64px) 1.4rem; }
.related.products > h2::after, .upsells.products > h2::after { content: ""; display: inline-block; width: 1.1em; height: 1.1em; margin-left: .3em; vertical-align: -.1em; background: var(--acid); border: var(--bw) solid var(--edge); border-radius: 50%; }

/* Yapışkan sepet çubuğu */
.sticky-atc { position: fixed; left: 0; right: 0; bottom: 0; z-index: 750; display: flex; align-items: center; gap: .8rem; padding: .7rem var(--gut); padding-bottom: calc(.7rem + env(safe-area-inset-bottom)); background: var(--bg); border-top: var(--bw) solid var(--edge); box-shadow: 0 -6px 0 rgba(20, 18, 31, .1); transform: translateY(110%); transition: transform .35s var(--ease); }
.sticky-atc.is-visible { transform: none; }
.sticky-atc__img { width: 48px; height: 48px; flex: none; border-radius: 10px; overflow: hidden; border: 2px solid var(--edge); }
.sticky-atc__img img { width: 100%; height: 100%; object-fit: cover; }
.sticky-atc__info { flex: 1; min-width: 0; display: grid; line-height: 1.2; }
.sticky-atc__info strong { font: 800 .95rem var(--f-display); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sticky-atc__info span { font-weight: 700; font-size: .9rem; }
.sticky-atc__info del { opacity: .5; margin-right: .3em; }
.sticky-atc__info ins { text-decoration: none; }
.sticky-atc .btn { flex: none; }
.single-product .wa-float, .single-product .to-top { bottom: 90px; }
.single-product .to-top { bottom: 160px; }

/* Bildirimler ------------------------------------------------------------ */
.woocommerce-notices-wrapper { margin-bottom: 1rem; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews, p.no-comments {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
	margin: 0 0 1.2rem;
	padding: 1rem 1.3rem;
	border: var(--bw) solid var(--ink);
	border-radius: var(--r-sm);
	background: var(--acid);
	color: var(--ink);
	font-weight: 600;
	box-shadow: 4px 4px 0 var(--ink);
}
.woocommerce-message::before, .woocommerce-info::before { content: "✦"; font-size: 1.3rem; }
.woocommerce-info { background: var(--sky); }
.woocommerce-error { background: var(--pink); }
.woocommerce-error::before { content: "✖"; }
.woocommerce-message .button, .woocommerce-info .button { order: 3; margin-left: auto; background: var(--ink); color: var(--cream); border-color: var(--ink); padding: .6em 1.1em; box-shadow: none; }
.woocommerce-message .button:hover { color: var(--acid); }
.woocommerce-error li { list-style: none; }
.woocommerce-error { padding-left: 1.3rem; }

/* Sepet ------------------------------------------------------------------ */
.woocommerce-cart-form { margin-bottom: 2rem; }
table.shop_table { width: 100%; border-collapse: separate; border-spacing: 0; border: var(--bw) solid var(--edge); border-radius: var(--r); overflow: hidden; background: var(--card); box-shadow: var(--shadow); }
table.shop_table th { text-align: left; padding: 1em 1.1em; background: var(--ink); color: var(--acid); font: 700 .8rem var(--f-mono); text-transform: uppercase; letter-spacing: .1em; }
table.shop_table td { padding: 1em 1.1em; border-top: 2px dashed var(--dots); vertical-align: middle; }
table.shop_table tr:first-child td { border-top: 0; }
table.shop_table .product-thumbnail img { width: 84px; height: 84px; object-fit: cover; border: 2px solid var(--edge); border-radius: 12px; }
table.shop_table .product-name a { font: 800 1.05rem/1.2 var(--f-display); text-decoration: none; }
table.shop_table .product-thumbnail { width: 108px; }
table.shop_table .product-price, table.shop_table .product-subtotal { white-space: nowrap; }
table.shop_table .product-remove a { display: grid; place-items: center; width: 32px; height: 32px; border: 2px solid var(--edge); border-radius: 50%; text-decoration: none; font-size: 1.3rem; line-height: 1; transition: .2s; }
table.shop_table .product-remove a:hover { background: var(--pink); color: var(--ink); transform: rotate(90deg); }
table.shop_table .actions { background: var(--cream-2); }
html.is-weird table.shop_table .actions { background: var(--bg); }
table.shop_table .coupon { display: flex; flex-wrap: wrap; gap: .6rem; float: left; }
table.shop_table .coupon input { width: 190px; }
table.shop_table td.actions > .button { float: right; }
.cart-collaterals { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; }
.cart-collaterals .cross-sells { grid-column: 1; }
.cart_totals { grid-column: 2; padding: 1.4rem; border: var(--bw) solid var(--edge); border-radius: var(--r); background: var(--card); box-shadow: var(--shadow); }
.cart_totals h2 { font-size: 1.6rem; }
.cart_totals table { width: 100%; border-collapse: collapse; }
.cart_totals th, .cart_totals td { padding: .8em 0; border-bottom: 2px dashed var(--dots); text-align: left; vertical-align: top; }
.cart_totals td { text-align: right; }
.cart_totals .order-total th, .cart_totals .order-total td { font: 800 1.4rem var(--f-display); border-bottom: 0; }
.wc-proceed-to-checkout { margin-top: 1.2rem; }
.wc-proceed-to-checkout .checkout-button { display: flex; width: 100%; padding: 1.1em; font-size: 1.15rem; background: var(--acid); color: var(--ink); border-color: var(--ink); box-shadow: 4px 4px 0 var(--ink); }
.woocommerce-shipping-calculator .shipping-calculator-button { font-weight: 700; }
.shipping-calculator-form { display: grid; gap: .6rem; margin-top: .6rem; text-align: left; }
.return-to-shop { text-align: center; margin: 0; }
.cart-empty { margin: 0 0 1rem; text-align: center; font: 800 1.6rem var(--f-display); }
.cart-empty.woocommerce-info { display: block; background: none; border: 0; box-shadow: none; padding: 0; }
.cart-empty::before { display: none; }

/* Ödeme ------------------------------------------------------------------ */
form.checkout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
form.checkout #customer_details { display: grid; gap: 1.4rem; }
form.checkout #order_review_heading { display: none; }
#order_review { padding: 1.4rem; border: var(--bw) solid var(--edge); border-radius: var(--r-lg); background: var(--card); box-shadow: var(--shadow-lg); position: sticky; top: 100px; }
#order_review::before { content: "Siparişin"; display: block; font: 800 1.6rem var(--f-display); margin-bottom: 1rem; }
.woocommerce-billing-fields, .woocommerce-shipping-fields, .woocommerce-additional-fields { padding: clamp(16px, 3vw, 28px); border: var(--bw) solid var(--edge); border-radius: var(--r); background: var(--card); box-shadow: 4px 4px 0 var(--edge); }
.woocommerce-billing-fields h3, .woocommerce-shipping-fields h3, .woocommerce-additional-fields h3 { font-size: 1.35rem; margin-top: 0; }
.prose--woo h2, .prose--woo h3 { margin-top: 0; }
.prose--woo > * + * { margin-top: 0; }
.prose--woo .woocommerce > * + * { margin-top: 1.2rem; }
.form-row { margin: 0 0 1rem; display: grid; gap: .35rem; }
.form-row label { font: 700 .9rem var(--f-display); }
.form-row .required, abbr.required { color: var(--pink); text-decoration: none; border: 0; }
.form-row-first, .form-row-last { width: calc(50% - .5rem); display: inline-grid; vertical-align: top; }
.form-row-first { margin-right: .9rem; }
.woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
table.woocommerce-checkout-review-order-table th, table.woocommerce-checkout-review-order-table td { padding: .7em 0; border-bottom: 2px dashed var(--dots); text-align: left; vertical-align: top; background: none; color: var(--fg); font: 500 .98rem var(--f-body); text-transform: none; letter-spacing: 0; }
table.woocommerce-checkout-review-order-table td:last-child, table.woocommerce-checkout-review-order-table tfoot td { text-align: right; }
table.woocommerce-checkout-review-order-table thead th { font: 700 .75rem var(--f-mono); text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
table.woocommerce-checkout-review-order-table .order-total th, table.woocommerce-checkout-review-order-table .order-total td { font: 800 1.35rem var(--f-display); border-bottom: 0; }
#payment { margin-top: 1rem; }
#payment ul.payment_methods { list-style: none; display: grid; gap: .7rem; margin: 0 0 1rem; padding: 0; }
#payment ul.payment_methods > li { padding: .9rem 1rem; border: var(--bw) solid var(--edge); border-radius: var(--r-sm); background: var(--bg); }
#payment ul.payment_methods > li label { font: 800 1rem var(--f-display); cursor: pointer; }
#payment .payment_box { margin-top: .7rem; padding: .8rem; background: var(--cream-2); color: var(--ink); border-radius: 10px; font-size: .92rem; }
#payment .payment_box p:last-child { margin-bottom: 0; }
#place_order { width: 100%; display: flex; padding: 1.15em; font-size: 1.2rem; background: var(--acid); color: var(--ink); border-color: var(--ink); box-shadow: 4px 4px 0 var(--ink); }
#place_order:hover { color: var(--ink); }
.woocommerce-terms-and-conditions-wrapper { margin-bottom: 1rem; font-size: .9rem; color: var(--muted); }
.pay-note { display: flex; gap: .5rem; align-items: center; font-size: .88rem; color: var(--muted); margin: 0 0 1rem; }
.pay-note .ic { width: 1.4em; height: 1.4em; color: var(--violet); }
.woocommerce-form-coupon-toggle, .woocommerce-form-login-toggle { margin-bottom: 1rem; }
.checkout_coupon, .woocommerce-form-login { padding: 1.2rem; border: var(--bw) dashed var(--edge); border-radius: var(--r); margin-bottom: 1.4rem; display: grid; gap: .8rem; }

/* Sipariş alındı */
.thanks-hero { text-align: center; display: grid; justify-items: center; gap: .4rem; padding: 1rem 0 2rem; }
.thanks-hero .ghost { width: 140px; }
.thanks-hero h2 { margin: .3em 0 0; font-size: clamp(1.8rem, 4vw, 3rem); }
.thanks-hero p { color: var(--muted); margin: 0; }
.woocommerce-order-overview { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1rem; margin: 1.5rem 0; padding: 0; }
.woocommerce-order-overview li { padding: 1rem; border: var(--bw) solid var(--edge); border-radius: var(--r-sm); background: var(--card); font: 700 .75rem var(--f-mono); text-transform: uppercase; letter-spacing: .08em; color: var(--muted); box-shadow: 3px 3px 0 var(--edge); }
.woocommerce-order-overview li strong { display: block; margin-top: .3rem; font: 800 1.1rem var(--f-display); color: var(--fg); text-transform: none; letter-spacing: 0; }
.woocommerce-order-details, .woocommerce-customer-details { margin-top: 2rem; }
.woocommerce-order-details__title, .woocommerce-column__title { font-size: 1.5rem; }
address { font-style: normal; padding: 1rem; border: var(--bw) solid var(--edge); border-radius: var(--r-sm); background: var(--card); line-height: 1.7; }

/* Hesabım ---------------------------------------------------------------- */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-MyAccount-navigation ul { list-style: none; display: grid; gap: .6rem; margin: 0; padding: 0; }
.woocommerce-MyAccount-navigation a { display: block; padding: .8em 1.1em; border: var(--bw) solid var(--edge); border-radius: 999px; background: var(--card); font: 700 1rem var(--f-display); text-decoration: none; box-shadow: 2px 2px 0 var(--edge); transition: .18s var(--ease); }
.woocommerce-MyAccount-navigation a:hover { background: var(--acid); color: var(--ink); transform: translate(-2px, -2px); }
.woocommerce-MyAccount-navigation .is-active a { background: var(--ink); color: var(--acid); }
.woocommerce-MyAccount-content { min-width: 0; }
#customer_login, .u-columns.col2-set { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; }
.woocommerce-form-login, .woocommerce-form-register { padding: 1.5rem; border: var(--bw) solid var(--edge); border-radius: var(--r); background: var(--card); box-shadow: var(--shadow); align-content: start; }
.woocommerce-form-login__rememberme { display: flex; align-items: center; }
.lost_password { margin: 0; }
.woocommerce-orders-table, .woocommerce-table--order-downloads { width: 100%; }
.col2-set { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.4rem; }
.col2-set .col-1, .col2-set .col-2 { float: none; width: auto; }
.woocommerce-Addresses { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.4rem; }

/* WooCommerce blokları (yeni sepet/ödeme) ------------------------------- */
.wc-block-components-button:not(.is-link), .wc-block-components-product-button .wp-block-button__link { border: var(--bw) solid var(--ink) !important; border-radius: 999px !important; background: var(--acid) !important; color: var(--ink) !important; font-family: var(--f-display) !important; font-weight: 800 !important; box-shadow: 3px 3px 0 var(--ink); }
.wc-block-components-text-input input, .wc-block-components-select select, .wc-block-components-textarea { border: var(--bw) solid var(--edge) !important; border-radius: var(--r-sm) !important; }
.wc-block-cart, .wc-block-checkout { font-family: var(--f-body); }
.wc-block-components-sidebar-layout .wc-block-components-main { padding-right: 2rem; }
.wc-block-cart__totals-title, .wc-block-components-totals-wrapper { font-family: var(--f-display); }
.wc-block-components-order-summary, .wc-block-components-totals-wrapper { color: var(--fg); }
.wc-block-components-checkout-step__title, .wc-block-components-title { font-family: var(--f-display) !important; font-weight: 800 !important; }

/* Sepet toplamları: koyu başlık stilinden arındır */
.cart_totals table.shop_table, .woocommerce-checkout-review-order-table.shop_table { border: 0; box-shadow: none; border-radius: 0; background: none; }
.cart_totals table.shop_table th { background: none; color: var(--fg); font: 700 .95rem var(--f-display); text-transform: none; letter-spacing: 0; padding: .8em 0; }
.cart_totals table.shop_table td { padding: .8em 0; border-top: 0; }
.prose--woo a:not(.button):not(.btn) { color: var(--fg); }
.prose--woo a:not(.button):not(.btn):hover { color: var(--violet); }
.prose--woo .button, .prose--woo .btn { text-decoration: none; }
.section--woo { padding-top: clamp(24px, 4vw, 48px); }

table.woocommerce-checkout-review-order-table td:last-child { white-space: nowrap; }
#place_order { white-space: normal; }

/* Duyarlı ---------------------------------------------------------------- */
@media (max-width: 1100px) {
	ul.products, ul.products.columns-4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
	.single-product div.product { grid-template-columns: minmax(0, 1fr); }
	.summary.entry-summary { position: static; }
	form.checkout { grid-template-columns: minmax(0, 1fr); }
	#order_review { position: static; }
	.cart-collaterals, #customer_login, .u-columns.col2-set, .col2-set, .woocommerce-Addresses { grid-template-columns: minmax(0, 1fr); }
	.cart_totals, .cart-collaterals .cross-sells { grid-column: 1; }
	.woocommerce-account .woocommerce { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-MyAccount-navigation ul { grid-auto-flow: column; grid-auto-columns: max-content; overflow-x: auto; padding-bottom: .4rem; }
}
@media (max-width: 720px) {
	ul.products, ul.products.columns-4, ul.products.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.pcard { border-radius: 16px; box-shadow: 3px 3px 0 var(--edge); }
	.pcard__media { border-radius: 13px 13px 0 0; }
	.pcard__body { padding: .75rem .75rem .9rem; gap: .4rem; }
	.pcard__title { font-size: .95rem; }
	.price { font-size: 1.05rem; }
	.meter__label { display: none; }
	.pcard .button { font-size: .88rem; padding: .7em .6em; }
	.shop-hero__ghost { display: none; }
	.woocommerce-product-gallery__image { aspect-ratio: 5 / 6; border-radius: var(--r); box-shadow: 4px 4px 0 var(--edge); }
	.flex-control-thumbs { gap: 8px; }
	.pcard .badges { top: 8px; left: 8px; max-width: calc(100% - 58px); gap: 4px; }
	.pcard .badge { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .64rem; padding: .35em .65em; }
	.pcard .fav { top: 8px; right: 8px; width: 34px; height: 34px; }
	.pcard .fav .ic { width: 16px; height: 16px; }
	.single_add_to_cart_button { min-width: 0; padding-inline: 1em; }
	.single-product .wa-float { display: none; }
	.single-product .to-top { bottom: 84px; }
	.woocommerce-tabs ul.tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	.woocommerce-tabs ul.tabs::-webkit-scrollbar { display: none; }
	.woocommerce-tabs ul.tabs a { white-space: nowrap; padding: .7em 1.1em; font-size: .92rem; }
	.woocommerce-Tabs-panel { border-radius: 0 var(--r-sm) var(--r-sm) var(--r-sm); }
	.summary .price { font-size: 1.7rem; }
	.chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding: 0 var(--gut) .7rem; margin-inline: calc(var(--gut) * -1); }
	.chips::-webkit-scrollbar { display: none; }
	.chip { white-space: nowrap; flex: none; }
	.woocommerce-ordering select { min-width: 0; width: 100%; }
	.shop-toolbar { flex-direction: column; align-items: stretch; }
	.form-row-first, .form-row-last { width: 100%; margin-right: 0; display: grid; }
	/* Sepet tablosu: kart görünümü */
	table.shop_table_responsive thead { display: none; }
	table.shop_table_responsive tr { display: grid; border-bottom: var(--bw) solid var(--edge); }
	table.shop_table_responsive td { display: flex; justify-content: space-between; align-items: center; gap: 1rem; text-align: right; border-top: 0; padding: .6em 1em; }
	table.shop_table_responsive td::before { content: attr(data-title); font: 700 .75rem var(--f-mono); text-transform: uppercase; color: var(--muted); text-align: left; }
	table.shop_table_responsive td.product-remove, table.shop_table_responsive td.product-thumbnail { justify-content: flex-start; }
	table.shop_table_responsive td.product-remove::before, table.shop_table_responsive td.product-thumbnail::before, table.shop_table_responsive td.actions::before { display: none; }
	table.shop_table .coupon, table.shop_table td.actions > .button { float: none; }
	table.shop_table td.actions { display: grid; gap: .7rem; }
	table.shop_table .coupon input { width: 100%; flex: 1 1 100%; }
	table.shop_table .coupon .button, table.shop_table td.actions > .button { width: 100%; }
	/* Sepet satırı: küçük görsel solda, bilgiler sağda */
	table.shop_table.cart tr.cart_item { position: relative; grid-template-columns: 72px minmax(0, 1fr) auto; grid-template-areas: "thumb name name" "thumb qty sub"; align-items: center; column-gap: .7rem; row-gap: .5rem; padding: .85rem .8rem; }
	table.shop_table.cart tr.cart_item td { padding: 0; border: 0; display: block; text-align: left; line-height: 1.25; }
	table.shop_table.cart tr.cart_item td::before { display: none; }
	table.shop_table.cart td.product-thumbnail { grid-area: thumb; align-self: start; }
	table.shop_table.cart td.product-thumbnail img { width: 72px; height: 72px; }
	table.shop_table.cart tr.cart_item td.product-name { grid-area: name; align-self: start; padding-right: 40px; }
	table.shop_table.cart td.product-name a { font-size: .95rem; line-height: 1.25; }
	table.shop_table.cart td.product-remove { position: absolute; top: .7rem; right: .7rem; }
	table.shop_table.cart td.product-remove a { width: 28px; height: 28px; font-size: 1.1rem; }
	table.shop_table.cart tr.cart_item td.product-price { display: none; }
	table.shop_table.cart td.product-quantity { grid-area: qty; }
	table.shop_table.cart td.product-subtotal { grid-area: sub; text-align: right; font: 800 1rem var(--f-display); white-space: nowrap; }
	table.shop_table.cart .quantity { box-shadow: 2px 2px 0 var(--edge); }
	table.shop_table.cart .quantity input.qty { width: 30px; padding: .45em 0; font-size: .95rem; }
	table.shop_table.cart .qty-btn { width: 32px; }
	table.shop_table.cart tr:last-child { border-bottom: 0; }
	.cart_totals table.shop_table_responsive tr { display: table-row; border: 0; }
	.cart_totals table.shop_table_responsive td { display: table-cell; text-align: right; padding: .8em 0; }
	.cart_totals table.shop_table_responsive td::before { display: none; }
	.cart_totals { padding: 1.1rem; }
	.sticky-atc.is-visible ~ .wa-float { bottom: 90px; }
}
@media (min-width: 721px) { .sticky-atc { display: none; } }
@media (max-width: 380px) {
	ul.products, ul.products.columns-4 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
