/* ============================================================
   checkout.css — Toon Pop Checkout (Ödeme) Sayfası
   ────────────────────────────────────────────────────────────
   View:    views/checkout.php
   Class:   br-checkout-* (tüm prefix tutarlı)
============================================================ */


/* ============================================================
   PAGE WRAPPER
============================================================ */
.br-checkout-page {
    background: var(--br-bg-1);
    background-image: var(--br-halftone-light);
    background-size: var(--br-halftone-size);
    min-height: 70vh;
    padding-bottom: 32px;
}

.br-checkout-grid {
    max-width: 1100px;
    margin: 0 auto;
    padding: 16px;
    /* v028 — Mobil'de display: inline (DevTools test edildi, taşmayı çözüyor).
       Desktop'ta (900px+) 2 sütun grid'e geçer. */
    display: inline;
    grid-template-columns: 1fr;
    gap: 16px;
    box-sizing: border-box;
}
@media (min-width: 900px) {
    .br-checkout-grid {
        display: grid;
        grid-template-columns: 1.4fr 1fr;
        gap: 24px;
        padding: 24px;
    }
}


/* ============================================================
   HEADER
============================================================ */
.br-checkout-header {
    text-align: center;
    margin: 8px 16px 0;
}
.br-checkout-header h1,
.br-checkout-header .br-page-title {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: clamp(1.625rem, 4vw, 2.25rem);
    line-height: 1;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: var(--br-white);
    -webkit-text-stroke: 2px var(--br-wine);
    text-shadow: 4px 4px 0 var(--br-gold);
    margin: 16px 0 8px;
}
.br-checkout-header .br-page-subtitle {
    font-size: 0.9375rem;
    color: var(--br-wine);
    margin: 0;
    font-weight: 500;
}


/* ============================================================
   FORM COLUMN
============================================================ */
.br-checkout-form-col {
    display: flex;
    flex-direction: column;
    gap: 14px;
    /* v028 — Grid item olarak `min-width: auto` default; bu da içeriğin
       container'dan geniş olmasına izin veriyor → mobil overflow.
       `min-width: 0` ile grid track 1fr gerçekten 1fr olur. */
    min-width: 0;
}


/* ============================================================
   CARD (form section)
============================================================ */
.br-checkout-card {
    background: var(--br-white);
    border: var(--br-border);
    border-radius: var(--br-radius-lg);
    box-shadow: var(--br-shadow-sm);
    padding: 18px 20px;
    transition: box-shadow 0.15s;
    /* v028 — Mobil overflow fix */
    box-sizing: border-box;
}
.br-checkout-card-title {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 1.0625rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--br-wine);
    margin: 0 0 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1.2;
}
/* Step number circle */
.br-checkout-card-title::before {
    content: counter(step-counter);
    counter-increment: step-counter;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--br-gold);
    color: var(--br-white);
    border: 2px solid var(--br-wine);
    border-radius: 999px;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 13px;
    flex-shrink: 0;
}
.br-checkout-form-col {
    counter-reset: step-counter;
}


/* ============================================================
   FORM INPUTS
============================================================ */
.br-checkout-form-group {
    margin-bottom: 12px;
}
.br-checkout-form-group:last-child { margin-bottom: 0; }

.br-checkout-form-row {
    display: grid;
    gap: 10px;
    margin-bottom: 12px;
    grid-template-columns: 1fr;
}
.br-checkout-form-row.two-col {
    grid-template-columns: 1fr 1fr;
}
@media (max-width: 480px) {
    .br-checkout-form-row.two-col {
        grid-template-columns: 1fr;
    }
}

.br-checkout-form-label {
    font-family: var(--br-font-display);
    font-weight: 700;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--br-wine);
    margin-bottom: 5px;
    display: block;
}

.br-checkout-form-input,
.br-checkout-form-textarea {
    width: 100%;
    background: var(--br-cream);
    color: var(--br-wine);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-sm);
    padding: 11px 14px;
    font-family: var(--br-font-sans);
    font-size: 14px;
    box-shadow: 2px 2px 0 var(--br-wine);
    line-height: 1.4;
    transition: box-shadow 0.15s, background 0.15s;
    /* v028 — Mobil overflow fix */
    box-sizing: border-box;
}
.br-checkout-form-input:focus,
.br-checkout-form-textarea:focus {
    outline: none;
    background: var(--br-white);
    box-shadow: 3px 3px 0 var(--br-gold);
}
.br-checkout-form-input:disabled,
.br-checkout-form-textarea:disabled {
    background: var(--br-bg-4);
    color: var(--br-wine-light);
    cursor: not-allowed;
}
.br-checkout-form-textarea {
    min-height: 80px;
    resize: vertical;
}

.br-checkout-form-hint {
    font-family: var(--br-font-mono);
    font-size: 11px;
    color: var(--br-wine-light);
    letter-spacing: 0.04em;
    margin-top: 4px;
}


/* ============================================================
   CHECKBOX
============================================================ */
.br-checkout-checkbox-wrap {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 8px;
    cursor: pointer;
    padding: 8px;
    background: var(--br-cream);
    border: 2px dashed var(--br-wine-line);
    border-radius: var(--br-radius-sm);
    transition: background 0.15s;
}
.br-checkout-checkbox-wrap:hover {
    background: var(--br-yellow-light);
}
.br-checkout-checkbox-wrap input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    background: var(--br-white);
    border: 2px solid var(--br-wine);
    border-radius: 4px;
    box-shadow: 2px 2px 0 var(--br-wine);
    cursor: pointer;
    margin: 1px 0 0;
    flex-shrink: 0;
    position: relative;
    transition: background 0.15s;
}
.br-checkout-checkbox-wrap input[type="checkbox"]:checked {
    background: var(--br-gold);
}
.br-checkout-checkbox-wrap input[type="checkbox"]:checked::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--br-white);
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 14px;
    line-height: 1;
}
.br-checkout-checkbox-wrap label {
    font-size: 13px;
    color: var(--br-wine);
    line-height: 1.4;
    cursor: pointer;
    flex: 1;
}


/* ============================================================
   MODE TOGGLE (delivery / takeout)
============================================================ */
.br-checkout-mode-toggle {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}
.br-checkout-mode-toggle label {
    background: var(--br-white);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    box-shadow: 2px 2px 0 var(--br-wine);
    padding: 12px 14px;
    cursor: pointer;
    text-align: center;
    font-family: var(--br-font-display);
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--br-wine);
    transition: all 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.br-checkout-mode-toggle label:hover {
    background: var(--br-yellow);
}
.br-checkout-mode-toggle input[type="radio"] {
    display: none;
}
.br-checkout-mode-toggle input[type="radio"]:checked + label,
.br-checkout-mode-toggle label.is-active {
    background: var(--br-yellow);
    box-shadow: 3px 3px 0 var(--br-gold);
}


/* ============================================================
   PAYMENT OPTIONS
============================================================ */
.br-checkout-payment-options {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.br-checkout-payment-card {
    background: var(--br-white);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    box-shadow: 2px 2px 0 var(--br-wine);
    padding: 12px 14px;
    cursor: pointer;
    display: grid;
    /* v027 — Icon kaldırıldığı için 2 sütun: content (esnek) | radio (24px) */
    grid-template-columns: 1fr 24px;
    gap: 12px;
    align-items: center;
    transition: transform 0.15s, box-shadow 0.15s;
    position: relative;
}
/* v027 — Content sütunu (label+meta'yı saran div) shrink edebilsin diye min-width:0 */
.br-checkout-payment-card > div {
    min-width: 0;
}
.br-checkout-payment-card:hover {
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 var(--br-wine);
}
.br-checkout-payment-card.selected,
.br-checkout-payment-card.is-selected,
.br-checkout-payment-card[data-selected="true"] {
    background: var(--br-yellow);
    border: 3px solid var(--br-gold);
    box-shadow: 4px 4px 0 var(--br-wine);
    transform: translate(-1px, -1px);
    padding: 11px 13px; /* border 1px büyüdüğü için padding -1px */
}

.br-checkout-payment-icon {
    width: 36px;
    height: 36px;
    background: var(--br-wine);
    color: var(--br-yellow);
    border-radius: var(--br-radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.br-checkout-payment-label {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--br-wine);
    line-height: 1.2;
    margin-bottom: 2px;
    /* v027 — Tek satır, sığmazsa elipsis */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.br-checkout-payment-meta {
    font-size: 12px;
    color: var(--br-wine-light);
    line-height: 1.3;
    /* v027 — Tek satır, sığmazsa elipsis */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Radio dot (yardımcı, payment-card'ın içinde) */
.br-checkout-payment-card .radio-dot,
.br-checkout-payment-card::after {
    content: '';
    width: 18px;
    height: 18px;
    border: 2px solid var(--br-wine);
    border-radius: 999px;
    background: var(--br-white);
    flex-shrink: 0;
    position: relative;
    /* v027 — Icon kaldırıldığı için radio 2. sütunda */
    grid-column: 2;
}
.br-checkout-payment-card.selected::after,
.br-checkout-payment-card.is-selected::after,
.br-checkout-payment-card[data-selected="true"]::after {
    background: var(--br-gold);
    border-color: var(--br-gold);
    box-shadow: 0 0 0 3px var(--br-yellow), inset 0 0 0 3px var(--br-white);
}


/* ============================================================
   PLACE ORDER BUTTON
============================================================ */
.br-checkout-place-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    background: var(--br-gold);
    color: var(--br-white);
    border: var(--br-border-thick);
    border-radius: var(--br-radius-md);
    box-shadow: var(--br-shadow-md);
    padding: 16px 24px;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s;
    line-height: 1.2;
    margin-top: 12px;
}
.br-checkout-place-btn:hover {
    background: var(--br-gold-dark);
    color: var(--br-white);
    transform: translate(-2px, -2px);
    box-shadow: var(--br-shadow-lg);
    text-decoration: none;
}
.br-checkout-place-btn:active {
    transform: translate(2px, 2px);
    box-shadow: 3px 3px 0 var(--br-wine);
}
.br-checkout-place-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
}


/* ============================================================
   BANNERS (info, warn, error)
============================================================ */
.br-checkout-banner {
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 12px 14px;
    margin-bottom: 14px;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 500;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.br-checkout-banner--info {
    background: var(--br-yellow);
    color: var(--br-wine);
}
.br-checkout-banner--warn {
    background: var(--br-info-dim);
    color: var(--br-wine);
}
.br-checkout-banner--error {
    background: var(--br-danger-dim);
    color: var(--br-gold-dark);
}


/* ============================================================
   EMPTY STATE (sepet boş, checkout'a gelinmesin)
============================================================ */
.br-checkout-empty-state {
    text-align: center;
    padding: 56px 24px;
    background: var(--br-white);
    border: var(--br-border);
    border-radius: var(--br-radius-lg);
    box-shadow: var(--br-shadow-sm);
    margin: 32px auto;
    max-width: 480px;
}
.br-checkout-empty-state h2,
body.theme-dark .br-checkout-empty-state h2 {
    font-family: var(--br-font-display);
    font-weight: 800;
    text-transform: uppercase;
    /* v028 — theme-dark global h2 kuralı (custom.css) #fff4e6 veriyor → beyaz kart üzerinde okunmuyor.
       Buraya wine renk + daha yüksek özgüllükle override ediyoruz. */
    color: var(--br-wine) !important;
    margin: 0 0 8px;
    font-size: clamp(1.5rem, 4vw, 2rem);
    letter-spacing: 0.02em;
    line-height: 1.1;
}
.br-checkout-empty-state p {
    color: var(--br-wine-light);
    font-size: 0.9375rem;
    margin: 0 0 20px;
}
.br-checkout-empty-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--br-gold);
    color: var(--br-white) !important;
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    box-shadow: 3px 3px 0 var(--br-wine);
    padding: 12px 22px;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.15s, box-shadow 0.15s;
    /* v028 — Okunurluk: kart üzerinde net duruşu garantile */
    text-shadow: 1px 1px 0 var(--br-wine);
}
.br-checkout-empty-link:hover {
    background: var(--br-yellow);
    color: var(--br-wine) !important;
    transform: translate(-1px, -1px);
    box-shadow: 4px 4px 0 var(--br-wine);
    text-decoration: none;
    text-shadow: none;
}


/* ============================================================
   ORDER SUMMARY (sağ kolon — sticky)
============================================================ */
.br-checkout-summary {
    background: var(--br-wine);
    color: var(--br-yellow);
    border: var(--br-border-thick);
    border-radius: var(--br-radius-lg);
    box-shadow: var(--br-shadow-md);
    padding: 18px 22px;
    background-image: radial-gradient(circle at 80% 20%, var(--br-gold-soft) 0%, transparent 50%);
    position: sticky;
    top: 16px;
    align-self: flex-start;
}
.br-checkout-summary h3 {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--br-cream-soft);
    margin: 0 0 12px;
}
.br-checkout-summary .row {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 14px;
    color: var(--br-cream);
}
.br-checkout-summary .row.total {
    border-top: 2px dashed var(--br-yellow);
    margin-top: 10px;
    padding-top: 14px;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 1.125rem;
    text-transform: uppercase;
    color: var(--br-yellow);
}


/* ================================================================
   ============ CHECKOUT FIX (v002) ===============================
   1. Sayfa wrapper class adı uyumsuzluğu: .br-page-checkout (HTML)
   2. SAVED ADDRESS — hiç stil yoktu, mobile'da soluk görünüyordu
   3. SUMMARY ITEMS — class mismatch (HTML: -row -item, CSS: .row)
   4. Sipariş özeti — ürün listesi check ikonu + temiz tipografi
   5. Soluk metinler — text rengi netleştir
================================================================ */

/* 1. Page wrapper — HTML class adıyla uyum */
.br-page-checkout {
    background: var(--br-bg-1);
    background-image: var(--br-halftone-light);
    background-size: var(--br-halftone-size);
    min-height: 70vh;
    padding-bottom: 32px;
}
.br-checkout-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 16px;
}
@media (min-width: 900px) {
    .br-checkout-wrap {
        padding: 24px;
    }
}

/* Sayfa başlığı — soluk değil, kartı içeren hero gibi */
.br-checkout-title {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    line-height: 1;
    text-transform: uppercase;
    color: var(--br-white);
    -webkit-text-stroke: 2px var(--br-wine);
    text-shadow: 4px 4px 0 var(--br-gold);
    text-align: center;
    margin: 16px 0 8px;
    letter-spacing: -0.02em;
}


/* ================================================================
   2. SAVED ADDRESS — CSS yoktu, şimdi var
================================================================ */
.ck-saved-addresses {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.br-checkout-saved-addr {
    display: flex;
    gap: 12px;
    padding: 14px 16px;
    background: var(--br-cream);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    box-shadow: 2px 2px 0 var(--br-wine);
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s, background 0.15s;
    position: relative;
}
.br-checkout-saved-addr:hover {
    background: var(--br-yellow-light, #FFF1A8);
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 var(--br-wine);
}
.br-checkout-saved-addr.is-selected {
    background: var(--br-yellow);
    border-width: 3px;
    border-color: var(--br-gold);
    box-shadow: 4px 4px 0 var(--br-wine);
    padding: 13px 15px;  /* border 1px büyüdüğü için padding -1px */
}

.br-checkout-saved-addr-radio {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 2px solid var(--br-wine);
    border-radius: 999px;
    background: var(--br-white);
    box-shadow: 1px 1px 0 var(--br-wine);
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
    position: relative;
    transition: all 0.15s;
}
.br-checkout-saved-addr-radio:checked {
    background: var(--br-gold);
    border-color: var(--br-gold);
    box-shadow: 0 0 0 3px var(--br-yellow), inset 0 0 0 3px var(--br-white);
}

.br-checkout-saved-addr-body {
    flex: 1;
    min-width: 0;
}
.br-checkout-saved-addr-title,
body.theme-dark .br-checkout-saved-addr-title {
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 0.9375rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--br-wine) !important;
    margin: 0 0 4px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.br-checkout-saved-addr-default {
    display: inline-block;
    padding: 2px 8px;
    background: var(--br-gold);
    color: var(--br-white);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.br-checkout-saved-addr-text,
body.theme-dark .br-checkout-saved-addr-text {
    font-family: var(--br-font-sans);
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--br-wine) !important;
    font-style: normal;
    font-weight: 500;
    margin: 0;
}


/* ================================================================
   3. CARD — başlıklar net, body koyu zemin doğru
================================================================ */
.br-checkout-card,
body.theme-dark .br-checkout-card {
    background: var(--br-white);
    color: var(--br-wine);
}
.br-checkout-card-title,
body.theme-dark .br-checkout-card-title,
body.theme-dark h2.br-checkout-card-title {
    color: var(--br-wine) !important;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 1.0625rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin: 0 0 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Form labels okunabilir */
.br-checkout-form-label,
body.theme-dark .br-checkout-form-label {
    color: var(--br-wine) !important;
}

/* Form hint okunabilir */
.br-checkout-form-hint,
body.theme-dark .br-checkout-form-hint {
    color: var(--br-cream-soft) !important;
    font-size: 0.8125rem;
    font-style: normal;
}


/* ================================================================
   4. SUMMARY ITEMS — yeni temiz görünüm + check ikonu
   HTML: br-checkout-summary-item / -name / -qty / -price
================================================================ */
.br-checkout-summary {
    background: var(--br-wine);
    color: var(--br-cream-soft);
}
.br-checkout-summary .br-checkout-card-title,
body.theme-dark .br-checkout-summary .br-checkout-card-title {
    color: var(--br-yellow) !important;
    border-bottom: 2px dashed rgba(255, 235, 102, 0.3);
    padding-bottom: 12px;
}

.br-checkout-summary-items {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 16px;
    padding: 0;
}

.br-checkout-summary-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px dashed rgba(255, 235, 102, 0.15);
}
.br-checkout-summary-item:last-child {
    border-bottom: none;
}

/* Check ikonu — her ürünün başında sarı tick */
.br-checkout-summary-item::before {
    content: '✓';
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    background: var(--br-gold);
    color: var(--br-white);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 13px;
    line-height: 1;
    margin-top: 1px;
    box-shadow: 1px 1px 0 var(--br-yellow);
}

.br-checkout-summary-item-name {
    flex: 1;
    min-width: 0;
    font-family: var(--br-font-sans);
    font-size: 0.875rem;
    line-height: 1.4;
    color: var(--br-cream);
    font-weight: 600;
}
.br-checkout-summary-item-qty {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    background: rgba(255, 235, 102, 0.18);
    color: var(--br-yellow);
    border-radius: 999px;
    font-family: var(--br-font-mono);
    font-size: 11px;
    font-weight: 700;
}
.br-checkout-summary-item-price {
    flex-shrink: 0;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 0.9375rem;
    color: var(--br-yellow);
    white-space: nowrap;
}


/* ================================================================
   5. SUMMARY ROWS — Ara Toplam / Teslimat / Toplam
================================================================ */
.br-checkout-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 6px 0;
    font-size: 0.875rem;
    color: var(--br-cream-soft);
}
.br-checkout-summary-row span:last-child {
    font-family: var(--br-font-display);
    font-weight: 700;
    color: var(--br-cream);
}
.br-checkout-summary-row--total {
    border-top: 2px dashed var(--br-yellow);
    margin-top: 10px;
    padding-top: 14px;
    font-family: var(--br-font-display);
    font-weight: 800;
    font-size: 1.125rem;
    text-transform: uppercase;
    color: var(--br-yellow) !important;
}
.br-checkout-summary-row--total span:last-child {
    color: var(--br-yellow);
    font-size: 1.25rem;
}


/* ================================================================
   6. SAYFA — body siyah olmasın (cart pattern)
   ≥768px breakpoint cart ile tutarlı
================================================================ */
@media (min-width: 768px) {
    .br-checkout-grid {
        grid-template-columns: 1.4fr 1fr;
        gap: 24px;
    }
}



/* ================================================================
   ============ CHECKOUT FIX (v003) ===============================
   Sipariş Özeti — siyah zemin + sarı text yenmiyordu (specificity savaşı)
   .br-checkout-card rule'u .br-checkout-summary'i ezdi (white zemin verdi)
   Bu blok hepsini yener — yüksek specificity + !important
================================================================ */

/* SUMMARY KART — siyah zemin (wine) + sarı text */
.br-checkout-card.br-checkout-summary,
body .br-checkout-card.br-checkout-summary,
body.theme-dark .br-checkout-card.br-checkout-summary {
    background: var(--br-wine) !important;
    background-image: radial-gradient(circle at 80% 20%, var(--br-gold-soft, rgba(255, 200, 100, 0.15)) 0%, transparent 50%) !important;
    border-color: var(--br-wine) !important;
    color: var(--br-yellow);
}

/* Title — sarı, baskın */
.br-checkout-summary .br-checkout-card-title,
body .br-checkout-summary .br-checkout-card-title,
body.theme-dark .br-checkout-summary h2.br-checkout-card-title {
    color: var(--br-yellow) !important;
    border-bottom: 2px dashed rgba(255, 235, 102, 0.35) !important;
    padding-bottom: 12px !important;
    margin-bottom: 14px !important;
}

/* Step number circle (5) — sarı zemin, koyu text */
.br-checkout-summary .br-checkout-card-title::before {
    background: var(--br-gold) !important;
    color: var(--br-white) !important;
    border-color: var(--br-yellow) !important;
}

/* ÜRÜN İSMİ — sarı/krem net, soluk değil */
.br-checkout-summary .br-checkout-summary-item-name,
body .br-checkout-summary .br-checkout-summary-item-name,
body.theme-dark .br-checkout-summary .br-checkout-summary-item-name {
    color: #FFF8DC !important;  /* corn silk — ışıklı krem, koyu zeminde net */
    font-weight: 700 !important;
}

/* QTY pill — daha belirgin */
.br-checkout-summary .br-checkout-summary-item-qty {
    background: var(--br-yellow) !important;
    color: var(--br-wine) !important;
    font-weight: 800 !important;
}

/* FİYAT — parlak sarı */
.br-checkout-summary .br-checkout-summary-item-price,
body .br-checkout-summary .br-checkout-summary-item-price {
    color: var(--br-yellow) !important;
    font-weight: 800 !important;
}

/* CHECK İKONU — gold zemin + beyaz tick (zaten doğru ama specificity için) */
.br-checkout-summary .br-checkout-summary-item::before {
    background: var(--br-gold) !important;
    color: var(--br-white) !important;
    box-shadow: 1px 1px 0 var(--br-yellow) !important;
}

/* Item arası ayraç — daha görünür */
.br-checkout-summary .br-checkout-summary-item {
    border-bottom: 1px dashed rgba(255, 235, 102, 0.25) !important;
}

/* Summary Rows (Ara Toplam / Teslimat / Toplam) */
.br-checkout-summary .br-checkout-summary-row,
body .br-checkout-summary .br-checkout-summary-row {
    color: var(--br-cream) !important;
}
.br-checkout-summary .br-checkout-summary-row span:last-child {
    color: #FFF8DC !important;
    font-weight: 700;
}
.br-checkout-summary .br-checkout-summary-row--total,
body .br-checkout-summary .br-checkout-summary-row--total {
    border-top: 2px dashed var(--br-yellow) !important;
    color: var(--br-yellow) !important;
}
.br-checkout-summary .br-checkout-summary-row--total span:last-child {
    color: var(--br-yellow) !important;
    font-size: 1.25rem !important;
    font-weight: 800 !important;
}

/* Form hint — özet kart içinde okunsun */
.br-checkout-summary .br-checkout-form-hint,
body .br-checkout-summary .br-checkout-form-hint {
    color: var(--br-cream) !important;
    opacity: 0.85;
}

/* SİPARİŞİ VER butonu — sarı border + parlak */
.br-checkout-summary .br-checkout-place-btn {
    border-color: var(--br-yellow) !important;
    box-shadow: 3px 3px 0 var(--br-yellow) !important;
}
.br-checkout-summary .br-checkout-place-btn:hover {
    box-shadow: 4px 4px 0 var(--br-yellow) !important;
}



/* ================================================================
   ============ INLINE PAYMENT FRAME (v021) =======================
   PayTR/İyzico iframe checkout sayfası içinde
================================================================ */
.br-checkout-payframe-card {
    background: var(--br-white) !important;
    border: 3px solid var(--br-gold) !important;
    box-shadow: 4px 4px 0 var(--br-wine) !important;
}
.br-checkout-payframe-card .br-checkout-card-title {
    color: var(--br-wine) !important;
}
.br-checkout-payframe-card .br-checkout-card-title::before {
    content: '💳' !important;
    background: transparent !important;
    border: none !important;
    font-size: 22px;
    line-height: 1;
}

.br-checkout-payframe-info {
    background: var(--br-yellow);
    color: var(--br-wine);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    padding: 10px 14px;
    margin-bottom: 16px;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.5;
}

.br-checkout-payframe-container {
    width: 100%;
    min-height: 600px;
    background: var(--br-cream-soft);
    border: 2px solid var(--br-wine);
    border-radius: var(--br-radius-md);
    overflow: hidden;
    position: relative;
}
.br-checkout-payframe-loading {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--br-wine);
    font-family: var(--br-font-display);
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.br-checkout-payframe-spin {
    width: 36px;
    height: 36px;
    border: 4px solid var(--br-wine-line);
    border-top-color: var(--br-gold);
    border-radius: 50%;
    animation: ckPayframeSpin 0.8s linear infinite;
}
@keyframes ckPayframeSpin {
    to { transform: rotate(360deg); }
}
/* Iframe yüklendiğinde loading'i gizleyemiyoruz (cross-origin), arkada kalsın yeter */

.br-checkout-payframe-actions {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}
.br-checkout-payframe-cancel {
    background: transparent;
    color: var(--br-wine);
    border: 2px dashed var(--br-wine);
    border-radius: var(--br-radius-pill);
    padding: 10px 22px;
    font-family: var(--br-font-display);
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    cursor: pointer;
    transition: all 0.15s;
}
.br-checkout-payframe-cancel:hover {
    background: var(--br-wine);
    color: var(--br-yellow);
    border-style: solid;
}

/* Iframe yüklenince loading'i gizlemek için onload ile js de toggle eder */
.br-checkout-payframe-container iframe,
.br-checkout-payframe-container #iyzipay-checkout-form {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 600px;
    border: 0;
    display: block;
}
.br-checkout-payframe-container iframe + .br-checkout-payframe-loading,
.br-checkout-payframe-container #iyzipay-checkout-form + .br-checkout-payframe-loading {
    display: none;
}


/* ============================================================
   atesci_pwa override — okunabilir hint'ler (zemin bilinçli)
   - Açık (sarı) zemindekiler: koyu siyah yazı
   - Koyu (siyah) sağ panel içindekiler: açık krem yazı
   ============================================================ */

/* Varsayılan: açık zeminde (sol form alanı) — koyu yazı */
.br-page-checkout .br-checkout-form-hint {
    color: rgba(0, 0, 0, 0.7) !important;
    font-size: 0.85rem !important;
    opacity: 1 !important;
}

/* Sağ özet paneli (koyu zemin) içindeki hint'ler — açık yazı */
.br-page-checkout .br-checkout-summary .br-checkout-form-hint,
.br-page-checkout .br-checkout-summary-col .br-checkout-form-hint {
    color: rgba(255, 235, 195, 0.85) !important;
    font-size: 0.85rem !important;
    opacity: 1 !important;
}

/* Sandbox test-kartı bilgisi — sol formda, vurgulu sarı kutu */
.br-page-checkout .br-checkout-sandbox-hint {
    color: #5a4a00 !important;
    font-size: 0.88rem !important;
    background: rgba(255, 193, 7, 0.18) !important;
    border: 1px solid rgba(255, 193, 7, 0.45) !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
}
.br-page-checkout .br-checkout-sandbox-hint code {
    background: rgba(0, 0, 0, 0.08);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.95em;
}

/* ============================================================
   v025 — KUPON KODU UI (sağ özet panel içinde, koyu zemin)
   ============================================================ */
.br-page-checkout .br-checkout-coupon {
    margin-top: 14px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px dashed rgba(255, 235, 195, 0.25);
    border-radius: 10px;
}

.br-page-checkout .br-checkout-coupon-label {
    display: block;
    font-size: 0.85rem;
    font-weight: 700;
    color: rgba(255, 235, 195, 0.9);
    margin-bottom: 8px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.br-page-checkout .br-checkout-coupon-row {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

.br-page-checkout .br-checkout-coupon-input {
    flex: 1;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid rgba(255, 235, 195, 0.3);
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.2);
    color: #fff;
    font-size: 0.95rem;
    font-family: 'Courier New', monospace;
    letter-spacing: 1px;
    text-transform: uppercase;
    outline: none;
    transition: border-color 0.15s;
}
.br-page-checkout .br-checkout-coupon-input::placeholder {
    color: rgba(255, 235, 195, 0.4);
    text-transform: none;
    letter-spacing: 0.5px;
}
.br-page-checkout .br-checkout-coupon-input:focus {
    border-color: var(--br-yellow, #f9c945);
    background: rgba(0, 0, 0, 0.32);
}

.br-page-checkout .br-checkout-coupon-btn {
    padding: 10px 18px;
    background: var(--br-yellow, #f9c945);
    color: #2a1810;
    border: none;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.9rem;
    cursor: pointer;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: all 0.15s;
    white-space: nowrap;
}
.br-page-checkout .br-checkout-coupon-btn:hover {
    background: #ffd455;
    transform: translateY(-1px);
}

.br-page-checkout .br-checkout-coupon-message {
    margin-top: 8px;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 0.82rem;
    line-height: 1.35;
}
.br-page-checkout .br-checkout-coupon-message.is-success {
    background: rgba(40, 167, 69, 0.15);
    border: 1px solid rgba(40, 167, 69, 0.4);
    color: #6dd187;
}
.br-page-checkout .br-checkout-coupon-message.is-error {
    background: rgba(220, 53, 69, 0.15);
    border: 1px solid rgba(220, 53, 69, 0.4);
    color: #f08c95;
}

/* Kupon uygulandıktan sonra: kompakt aktif görünüm */
.br-page-checkout .br-checkout-coupon-active {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 12px;
    background: rgba(40, 167, 69, 0.18);
    border: 1px solid rgba(40, 167, 69, 0.4);
    border-radius: 6px;
}
.br-page-checkout .br-checkout-coupon-active-code {
    font-weight: 800;
    color: #6dd187;
    letter-spacing: 0.5px;
    font-family: 'Courier New', monospace;
    font-size: 0.95rem;
}
.br-page-checkout .br-checkout-coupon-remove {
    background: transparent;
    border: none;
    color: rgba(255, 235, 195, 0.6);
    font-size: 1.4rem;
    line-height: 1;
    width: 26px;
    height: 26px;
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.br-page-checkout .br-checkout-coupon-remove:hover {
    background: rgba(220, 53, 69, 0.2);
    color: #ff6b78;
}

/* İndirim satırı (yeşil) */
.br-page-checkout .br-checkout-summary-row--discount {
    color: #6dd187 !important;
    font-weight: 600;
}
