/* QUATROVE WordPress teması: WordPress ve WooCommerce sayfaları.
   Vitrinin stili assets/css/app.css'tedir (Next derlemesinden). */

body { margin: 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Yönetici çubuğu açıkken yapışkan başlık ve paneller altında kalmasın. */
.admin-bar .qv-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .qv-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .qv-header { top: 0; } }

/* ---------- iç sayfa iskeleti */
.qv-wp-inner { min-height: 100vh; display: flex; flex-direction: column; padding-bottom: 0; background: var(--krem); color: var(--kahve); }
.qv-wp-inner .qv-checkout-head { background: var(--krem); }
.qv-wp-inner .qv-checkout-logo { display: block; line-height: 0; }
.qv-wp-cart { justify-self: end; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 14px; border: 1px solid currentColor; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; text-decoration: none; }
.qv-wp-cart b { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; background: var(--yesil); color: var(--krem); display: inline-grid; place-items: center; font-size: 12px; letter-spacing: 0; }
.qv-wp-main { flex: 1; width: var(--wrap); margin-inline: auto; padding-block: clamp(36px, 5vw, 64px) clamp(56px, 7vw, 96px); }
.qv-wp-pagehead { margin-bottom: clamp(24px, 3vw, 40px); }
.qv-wp-pagehead h1 { font-size: clamp(34px, 4vw, 52px); }
.qv-wp-pagehead .qv-eyebrow { color: var(--yesil); }

.qv-wp-content { font-size: 16px; line-height: 1.75; }
.qv-wp-content > * + * { margin-top: 1em; }
.qv-wp-content h2 { font-size: clamp(26px, 3vw, 36px); margin-top: 1.6em; }
.qv-wp-content h3 { font-size: 22px; margin-top: 1.4em; }
.qv-wp-content ul, .qv-wp-content ol { padding-left: 1.3em; }
.qv-wp-content ul { list-style: disc; }
.qv-wp-content ol { list-style: decimal; }
.qv-wp-content a { text-decoration: underline; text-underline-offset: 3px; }
.qv-wp-content img { height: auto; }

/* Yasal sayfalar: Next sitesindeki /yasal düzeni. */
.qv-legal-page .qv-wp-main { padding-block: 0; }
.qv-legal-page .qv-legal-layout { padding-block: 56px 80px; }

.qv-wp-404 { display: grid; justify-items: start; gap: 18px; max-width: 640px; padding-block: 64px; }

/* ---------- iç sayfa alt bilgisi */
.qv-wp-foot { border-top: 1px solid color-mix(in srgb, var(--kahve) 14%, transparent); padding: 28px 0 32px; font-size: 13px; }
.qv-wp-foot .qv-wrap { display: grid; gap: 18px; justify-items: center; text-align: center; }
.qv-wp-foot-legal { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; }
.qv-wp-foot-legal a { text-decoration: none; opacity: 0.8; }
.qv-wp-foot-legal a:hover { opacity: 1; text-decoration: underline; text-underline-offset: 3px; }
.qv-wp-foot .qv-company { padding: 0; }
.qv-wp-foot .qv-paystrip { color: var(--kahve); }

/* ---------- WooCommerce */
.qv-wc { --qv-line: color-mix(in srgb, var(--kahve) 16%, transparent); font-size: 15px; }
.qv-wc a { text-underline-offset: 3px; }
.qv-wc h2, .qv-wc h3 { font-family: var(--serif); font-weight: 400; }
.qv-wc h2 { font-size: clamp(24px, 2.6vw, 32px); }
.qv-wc h3 { font-size: 24px; margin-bottom: 14px; }
.qv-wc .woocommerce-notices-wrapper:empty { display: none; }

/* bildirimler */
.qv-wc .woocommerce-message, .qv-wc .woocommerce-info, .qv-wc .woocommerce-error, .qv-wc .woocommerce-NoticeGroup .woocommerce-error {
  list-style: none; margin: 0 0 24px; padding: 14px 18px; border-left: 3px solid var(--yesil); background: color-mix(in srgb, var(--yesil) 7%, var(--krem));
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 18px; font-size: 14px;
}
.qv-wc .woocommerce-error { border-color: #b8452b; background: #fbe9e3; display: block; }
.qv-wc .woocommerce-error li + li { margin-top: 6px; }
.qv-wc .woocommerce-message::before, .qv-wc .woocommerce-info::before, .qv-wc .woocommerce-error::before { display: none; }
.qv-wc .woocommerce-message .button, .qv-wc .woocommerce-info .button { order: 2; }

/* düğmeler */
.qv-wc .button, .qv-wc button.button, .qv-wc input.button, .qv-wc a.button, .qv-wc #place_order, .qv-wc .checkout-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 24px; border: 1px solid var(--yesil); border-radius: 0;
  background: var(--yesil); color: var(--krem); font: 500 14px var(--sans); letter-spacing: 0.06em; text-decoration: none; cursor: pointer; transition: background-color 0.3s;
}
.qv-wc .button:hover, .qv-wc #place_order:hover, .qv-wc .checkout-button:hover { background: #16402e; }
.qv-wc .button:disabled, .qv-wc .button.disabled { opacity: 0.5; cursor: default; }
.qv-wc #place_order, .qv-wc .checkout-button { width: 100%; min-height: 56px; font-size: 15px; }
.qv-wc .woocommerce-cart-form .button[name="update_cart"], .qv-wc .coupon .button { background: transparent; color: var(--kahve); border-color: color-mix(in srgb, var(--kahve) 40%, transparent); }

/* form alanları (Next ödeme formuyla aynı) */
.qv-wc .form-row { margin: 0 0 14px; padding: 0; }
.qv-wc .form-row label { display: block; margin-bottom: 6px; font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; }
.qv-wc .form-row .required { color: #b8452b; text-decoration: none; border: 0; }
.qv-wc .form-row .optional { text-transform: none; letter-spacing: 0; opacity: 0.6; }
.qv-wc input.input-text, .qv-wc textarea, .qv-wc select, .qv-wc .select2-container .select2-selection--single {
  width: 100%; min-height: 50px; padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--kahve) 30%, transparent); border-radius: 0;
  background: #fff; color: var(--kahve); font: 15px var(--sans); box-shadow: none;
}
.qv-wc textarea { min-height: 96px; resize: vertical; }
.qv-wc input.input-text:focus, .qv-wc textarea:focus, .qv-wc select:focus { outline: none; border-color: var(--yesil); }
.qv-wc .form-row.woocommerce-invalid input.input-text { border-color: #b8452b; }
.qv-wc .select2-container .select2-selection--single { display: flex; align-items: center; height: 50px; padding: 0 10px; }
.qv-wc .select2-container .select2-selection--single .select2-selection__rendered { padding: 0; line-height: 1.4; color: var(--kahve); }
.qv-wc .select2-container .select2-selection--single .select2-selection__arrow { height: 48px; right: 8px; }
.select2-dropdown { border-color: color-mix(in srgb, #3A2618 30%, transparent); border-radius: 0; font-family: var(--font-poppins), system-ui, sans-serif; }
.select2-results__option--highlighted[aria-selected], .select2-results__option--highlighted[data-selected] { background: #1D4D38 !important; }
.qv-wc .woocommerce-form__label-for-checkbox, .qv-wc .qv-wc-consent label { display: flex; gap: 10px; align-items: flex-start; text-transform: none; letter-spacing: 0; font-size: 14px; }
.qv-wc input[type="checkbox"], .qv-wc input[type="radio"] { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--yesil); flex: none; }

/* tablolar */
.qv-wc table.shop_table { width: 100%; border-collapse: collapse; border: 0; border-radius: 0; }
.qv-wc table.shop_table th, .qv-wc table.shop_table td { padding: 14px 10px; border: 0; border-bottom: 1px solid var(--qv-line); text-align: left; vertical-align: middle; }
.qv-wc table.shop_table th { font-size: 12px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; }
.qv-wc table.shop_table tfoot .order-total th, .qv-wc table.shop_table tfoot .order-total td, .qv-wc .cart_totals .order-total th, .qv-wc .cart_totals .order-total td { border-bottom: 0; }
.qv-wc .order-total .amount { font-family: var(--serif); font-weight: 400; font-size: 28px; }
.qv-wc .product-thumbnail img { width: 64px; height: auto; }
.qv-wc .product-remove a.remove { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; color: var(--kahve) !important; font-size: 20px; text-decoration: none; }
.qv-wc .product-remove a.remove:hover { background: #fbe9e3; }
.qv-wc .quantity .qty { width: 72px; min-height: 42px; padding: 6px; text-align: center; border: 1px solid color-mix(in srgb, var(--kahve) 30%, transparent); background: #fff; font: 15px var(--sans); }
.qv-wc .woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }
.qv-wc .woocommerce-shipping-methods li { display: flex; gap: 8px; align-items: center; }

/* sepet */
.qv-wc .woocommerce-cart-form { margin-bottom: 32px; }
.qv-wc .actions .coupon { display: flex; gap: 10px; flex-wrap: wrap; }
.qv-wc .actions .coupon .input-text { width: auto; min-width: 200px; }
.qv-wc .cart-collaterals .cart_totals { width: 100%; max-width: 480px; margin-left: auto; padding: 24px; background: #fff; border: 1px solid var(--qv-line); }
.qv-wc-meter { margin: 0 0 18px; display: grid; gap: 8px; }

/* ödeme: Next ödeme sayfası gibi iki sütun, sağda desen çerçeveli sipariş özeti */
.qv-wc form.checkout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); column-gap: clamp(28px, 5vw, 72px); align-items: start; }
.qv-wc form.checkout > .woocommerce-NoticeGroup { grid-row: 1; grid-column: 1 / -1; }
.qv-wc form.checkout #customer_details { grid-row: 2; grid-column: 1; }
.qv-wc form.checkout > .qv-wc-legal { grid-row: 3; grid-column: 1; margin-top: 32px; }
.qv-wc form.checkout .qv-wc-summary { grid-row: 2; grid-column: 2; position: sticky; top: 24px; padding: 10px; background: url(../sites/quatrove/pattern/tradizione-tile.svg) 0 0 / 50px; }
.qv-wc-summary > * { background: var(--krem); }
.qv-wc-summary #order_review_heading { margin: 0; padding: 24px 24px 8px; font-size: 26px; }
.qv-wc-summary #order_review { padding: 0 24px 24px; }
.qv-wc #customer_details .col-1, .qv-wc #customer_details .col-2 { float: none; width: 100%; max-width: none; }
.qv-wc #customer_details .col-2 { margin-top: 28px; }
.qv-wc .woocommerce-billing-fields__field-wrapper, .qv-wc .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.qv-wc .woocommerce-billing-fields__field-wrapper .form-row-wide, .qv-wc .woocommerce-shipping-fields__field-wrapper .form-row-wide, .qv-wc .woocommerce-billing-fields__field-wrapper .form-row:not(.form-row-first):not(.form-row-last), .qv-wc .woocommerce-shipping-fields__field-wrapper .form-row:not(.form-row-first):not(.form-row-last) { grid-column: 1 / -1; }
.qv-wc.woocommerce form .form-row-first, .qv-wc.woocommerce form .form-row-last { float: none; width: auto; }
.qv-wc .woocommerce-checkout-review-order-table .product-name { font-size: 14px; }
.qv-wc #payment { margin-top: 18px; background: transparent; border-radius: 0; }
.qv-wc #payment ul.payment_methods { list-style: none; margin: 0 0 16px; padding: 0; border: 0; display: grid; gap: 10px; }
.qv-wc #payment ul.payment_methods li { padding: 14px 16px; border: 1px solid var(--qv-line); background: #fff; }
.qv-wc #payment ul.payment_methods li label { display: inline; font-weight: 500; }
.qv-wc #payment div.payment_box { margin: 10px 0 0; padding: 12px 14px; background: color-mix(in srgb, var(--yesil) 6%, var(--krem)); font-size: 13.5px; border-radius: 0; }
.qv-wc #payment div.payment_box::before { display: none; }
.qv-wc #payment .place-order { margin: 0; padding: 0; display: grid; gap: 14px; }
.qv-wc .woocommerce-privacy-policy-text { font-size: 12.5px; opacity: 0.75; }
.qv-wc-note { display: flex; gap: 8px; align-items: flex-start; margin: 14px 0 0; font-size: 13px; line-height: 1.55; opacity: 0.85; }
.qv-wc-note svg { flex: none; margin-top: 2px; color: var(--yesil); }
.qv-wc-legal { display: grid; gap: 10px; }
.qv-wc-doc { border: 1px solid var(--qv-line); background: #fff; }
.qv-wc-doc summary { cursor: pointer; padding: 12px 14px; font-size: 13.5px; font-weight: 500; }
.qv-wc-doc-body { max-height: 260px; overflow: auto; padding: 0 16px 14px; font-size: 13px; line-height: 1.6; }
.qv-wc-doc-body .qv-legal-article h2 { font-size: 22px; }
.qv-wc-consent { margin: 4px 0 0 !important; }
.qv-wc .qv-paystrip { margin-top: 4px; color: var(--kahve); flex-wrap: wrap; }

/* PayTR ödeme çerçevesi (sipariş ödeme sayfası) */
.qv-wc iframe#paytriframe, .qv-wc iframe[src*="paytr.com"] { width: 100% !important; min-height: 640px; border: 0; background: #fff; }

/* sipariş alındı, hesabım */
.qv-wc .woocommerce-order-overview { list-style: none; margin: 0 0 28px; padding: 18px; display: flex; flex-wrap: wrap; gap: 14px 32px; background: #fff; border: 1px solid var(--qv-line); }
.qv-wc .woocommerce-order-overview li { font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; }
.qv-wc .woocommerce-order-overview li strong { display: block; margin-top: 4px; font: 400 18px var(--serif); letter-spacing: 0; text-transform: none; }
.qv-wc .woocommerce-thankyou-order-received { font-family: var(--serif); font-size: 26px; }
.qv-wc .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.qv-wc .woocommerce-MyAccount-navigation a { display: block; padding: 10px 14px; border-left: 2px solid color-mix(in srgb, var(--kahve) 15%, transparent); text-decoration: none; }
.qv-wc .woocommerce-MyAccount-navigation .is-active a { border-color: var(--kalem); background: color-mix(in srgb, var(--kalem) 10%, transparent); color: var(--yesil); }
.qv-wc .woocommerce-MyAccount-navigation { float: left; width: 240px; }
.qv-wc .woocommerce-MyAccount-content { margin-left: 280px; }
.qv-wc .woocommerce-form-login, .qv-wc .woocommerce-form-register { max-width: 460px; padding: 24px; background: #fff; border: 1px solid var(--qv-line); border-radius: 0; }

@media (max-width: 900px) {
  .qv-wc form.checkout { grid-template-columns: minmax(0, 1fr); }
  .qv-wc form.checkout .qv-wc-summary { grid-column: 1; grid-row: 2; position: static; margin-bottom: 32px; }
  .qv-wc form.checkout #customer_details { grid-column: 1; grid-row: 3; }
  .qv-wc form.checkout > .qv-wc-legal { grid-column: 1; grid-row: 4; }
  .qv-wc .woocommerce-billing-fields__field-wrapper, .qv-wc .woocommerce-shipping-fields__field-wrapper { grid-template-columns: minmax(0, 1fr); }
  .qv-wc .woocommerce-MyAccount-navigation { float: none; width: auto; margin-bottom: 24px; }
  .qv-wc .woocommerce-MyAccount-content { margin-left: 0; }
  .qv-wc table.shop_table_responsive tr td { display: flex; justify-content: space-between; text-align: right; }
  .qv-wc table.shop_table_responsive thead { display: none; }
  .qv-wp-inner .qv-checkout-back span { display: none; }
}
@media (max-width: 560px) {
  .qv-wp-inner .qv-checkout-head .qv-wrap { grid-template-columns: auto 1fr auto; }
  .qv-wp-inner .qv-checkout-logo svg { height: 30px; }
  .qv-wp-cart span, .qv-wp-inner .qv-checkout-secure span { display: none; }
}
