/* =====================================================================
   MAĞAZA STİLLERİ (cronospharma.com online satış) — yalnızca mağaza açıkken yüklenir
   Renkler: lacivert #14145d / #24357a, kırmızı #ee2b37 (site paletiyle aynı)
   Önek: .mg-  (tema sınıflarıyla çakışmaması için)
   İçindekiler: 1) Değişkenler  2) Ortak (buton, adet, gizli metin)  3) Üstbilgi sepet simgesi
                4) Ürün bloğu (detay + liste)  5) Bildirim (toast)  6) Sepet sayfası
                7) Adım göstergesi  8) Azaltılmış hareket
   ===================================================================== */

/* 1) Değişkenler ------------------------------------------------------ */
:root {
    --mg-lacivert: #14145d;
    --mg-lacivert-2: #24357a;
    --mg-kirmizi: #ee2b37;
    --mg-kirmizi-koyu: #c81e2b;   /* kırmızı YAZI için: beyaz zeminde 5.7:1 (--mg-kirmizi yazıda 4.2:1 kalır) */
    --mg-metin: #1d1f2c;
    --mg-soluk: #5f6475;
    --mg-cizgi: #e3e5ee;
    --mg-zemin: #f6f7fb;
    --mg-odak: #24357a;
}

/* 2) Ortak ------------------------------------------------------------ */
.mg-gizli {
    position: absolute !important;
    width: 1px; height: 1px;
    margin: -1px; padding: 0; border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}
[hidden].mg-sepet-sayi,
.mg-sepet [hidden],
.mg-bildirim[hidden] { display: none !important; }

.mg-ikon { flex: 0 0 auto; display: block; }

/* Klavye odağı: tema outline'ı kapattığı için burada açıkça verilir */
.mg-btn:focus-visible,
.mg-adet__btn:focus-visible,
.mg-adet__girdi:focus-visible,
.mg-sepet-link:focus-visible,
.mg-menu-sepet a:focus-visible,
.mg-bildirim a:focus-visible,
.mg-bildirim button:focus-visible,
.mg-sepet a:focus-visible,
.mg-sepet button:focus-visible {
    outline: 3px solid var(--mg-odak) !important;
    outline-offset: 2px;
}
.mg-btn--birincil:focus-visible { box-shadow: 0 0 0 2px #fff, 0 0 0 5px var(--mg-odak); outline: none !important; }

/* Buton */
.mg-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 48px;
    padding: 0 28px;
    border: 1px solid transparent;
    border-radius: 50rem;
    font-family: inherit;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .1px;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .15s ease;
}
.mg-btn--birincil,
a.mg-btn--birincil {
    background-color: var(--mg-lacivert-2);
    color: #fff !important;
}
.mg-btn--birincil:hover,
a.mg-btn--birincil:hover { background-color: var(--mg-lacivert); color: #fff !important; }
.mg-btn--birincil:active { transform: translateY(1px); }
.mg-btn--ikincil,
a.mg-btn--ikincil {
    background-color: #fff;
    border-color: #c9cddd;
    color: var(--mg-lacivert) !important;
}
.mg-btn--ikincil:hover,
a.mg-btn--ikincil:hover { border-color: var(--mg-lacivert); background-color: var(--mg-zemin); }
.mg-btn--blok { display: flex; width: 100%; }
.mg-btn.mg-eklendi { background-color: var(--mg-lacivert); }
.mg-btn[disabled],
.mg-btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }

/* Adet seçici */
.mg-adet {
    display: inline-flex;
    align-items: stretch;
    height: 48px;
    border: 1px solid #c9cddd;
    border-radius: 50rem;
    background: #fff;
    overflow: hidden;
}
.mg-adet:focus-within { border-color: var(--mg-lacivert-2); }
.mg-adet__btn {
    width: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--mg-lacivert);
    font-family: inherit;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    transition: background-color .2s ease;
}
.mg-adet__btn:hover { background-color: var(--mg-zemin); }
.mg-adet__btn[disabled] { color: #b3b7c6; cursor: not-allowed; background: transparent; }
.mg-adet__girdi {
    width: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--mg-metin);
    font-family: inherit;
    font-size: 16px;            /* iOS odakta yakınlaştırmasın */
    font-weight: 600;
    text-align: center;
    font-variant-numeric: tabular-nums;
    -moz-appearance: textfield;
    appearance: textfield;
    border-radius: 6px;
}
.mg-adet__girdi::-webkit-outer-spin-button,
.mg-adet__girdi::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.mg-adet--kucuk { height: 40px; }
.mg-adet--kucuk .mg-adet__btn { width: 38px; font-size: 18px; }
.mg-adet--kucuk .mg-adet__girdi { width: 34px; font-size: 16px; }

/* 3) Üstbilgi sepet simgesi ------------------------------------------- */
.mg-sepet-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: var(--mg-lacivert) !important;
    transition: color .2s ease, background-color .2s ease;
}
.mg-sepet-link:hover { color: var(--mg-kirmizi) !important; background-color: rgba(20, 20, 93, .06); }
.main-menu__two .main-logo a.mg-sepet-link:hover { transform: none; }   /* logo "yükselme" efekti simgeye uygulanmasın */
.mg-sepet-sayi {
    position: absolute;
    top: 3px;
    left: 24px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: var(--mg-kirmizi);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 18px;
    text-align: center;
    font-variant-numeric: tabular-nums;
    box-shadow: 0 0 0 2px #fff;
}
.mg-sepet-sayi.mg-zipla { animation: mg-zipla .45s ease; }
@keyframes mg-zipla { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 100% { transform: scale(1); } }

.mg-sepet-link--masaustu { display: none; margin-left: 14px; }
/* Mobil: hamburger simgesi gibi (organik.css: position:absolute; right:25px) sağa sabitlenir, hemen solunda durur */
.main-menu .main-logo a.mg-sepet-link--mobil { display: inline-flex; position: absolute; right: 70px; }
@media (min-width: 1200px) {
    .mg-sepet-link--masaustu { display: inline-flex; }
    .main-menu .main-logo a.mg-sepet-link--mobil { display: none; }
}
/* Mobil menü satırı ("Sepetim") yalnızca açılır mobil menüde görünür */
.mg-menu-sepet { display: none !important; }
.mobile-nav__container .mg-menu-sepet { display: block !important; }
.mg-sepet-sayi--satir {
    position: static;
    left: auto;
    display: inline-block;
    margin-left: 8px;
    vertical-align: 1px;
    box-shadow: none;
}

/* 4) Ürün bloğu -------------------------------------------------------- */
.mg-urun { font-family: inherit; color: var(--mg-metin); }
.mg-urun__fiyat { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; }
.mg-fiyat {
    color: var(--mg-lacivert);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -.3px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.mg-kdv { color: var(--mg-soluk); font-size: 13px; line-height: 1.3; white-space: nowrap; }
.mg-urun p.mg-urun__meta { margin: 6px 0 0; color: var(--mg-soluk); font-size: 14px; line-height: 1.5; }
.mg-urun__islem { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }

/* Ürün sayfası (detay) */
.mg-urun--detay {
    max-width: 460px;
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid var(--mg-cizgi);
}
.mg-urun--detay .mg-urun__islem { margin-top: 20px; }
.mg-urun--detay .mg-btn { flex: 1 1 200px; }
@media (max-width: 767px) {
    .mg-urun--detay { max-width: none; margin-top: 22px; }
}

/* Liste sayfaları: fiyat + buton tek satır; "Detaylı Bilgi" butonu yanında akar */
.mg-urun--liste {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 22px;
    margin: 6px 14px 12px 0;
    vertical-align: middle;
}
.mg-urun--liste + .button { vertical-align: middle; margin-top: 6px; margin-bottom: 12px; }
.mg-urun--liste .mg-urun__fiyat { flex-direction: column; align-items: flex-start; gap: 0; }
.mg-urun--liste .mg-fiyat { font-size: 26px; }
.mg-urun--liste .mg-btn { min-height: 46px; padding: 0 24px; font-size: 15px; }

/* 5) Bildirim (toast) -------------------------------------------------- */
.mg-bildirim-alani {
    position: fixed;
    z-index: 99995;
    top: 135px;     /* masaüstü (13.11.2026 üst şerit, +39 px): sayfa başında giriş / sepet simgelerinin 11 px altı (önceden 96 px ile aynı ilişki); yapışkan üstbilginin (115 px) 20 px altı */
    right: 24px;
    width: min(380px, calc(100vw - 32px));
    pointer-events: none;
}
@media (max-width: 1199px) { .mg-bildirim-alani { top: 76px; right: 16px; } }
/* 992–1199 px: üstbilgi sabit değil (göreli, 122,8 px); giriş / sepet / menü simgelerinin alt kenarı sayfa başında 82,9 px.
   76 px'te bildirim bu simgelerin alt 7 px'ini örtüyordu. 94 px: sayfa başında simgelerin 11 px altı (masaüstüyle aynı
   ilişki), yapışkan üstbilgide (89 px) onun 5 px altı. 991 px ve altında sabit 62 px'lik üstbilgi için 76 px aynen kalır. */
@media (min-width: 992px) and (max-width: 1199px) { .mg-bildirim-alani { top: 94px; } }
.mg-bildirim {
    pointer-events: auto;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px 14px 18px;
    border-radius: 14px;
    background: var(--mg-lacivert);
    color: #fff;
    font-size: 15px;
    line-height: 1.4;
    box-shadow: 0 14px 34px rgba(20, 20, 93, .28);
    animation: mg-bildirim-gir .28s cubic-bezier(.2, .8, .2, 1);
}
.mg-bildirim__metin { flex: 1 1 auto; min-width: 0; }
.mg-bildirim__metin strong { font-weight: 600; }
.mg-bildirim a.mg-bildirim__eylem,
.mg-bildirim button.mg-bildirim__eylem {
    flex: 0 0 auto;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 50rem;
    background: transparent;
    color: #fff !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease;
}
.mg-bildirim a.mg-bildirim__eylem:hover,
.mg-bildirim button.mg-bildirim__eylem:hover { background: #fff; color: var(--mg-lacivert) !important; }
.mg-bildirim a:focus-visible,
.mg-bildirim button:focus-visible { outline-color: #fff !important; }
.mg-bildirim__kapat {
    flex: 0 0 auto;
    width: 32px; height: 32px;
    margin-right: -6px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    opacity: .8;
}
.mg-bildirim__kapat:hover { opacity: 1; background: rgba(255, 255, 255, .14); }
@keyframes mg-bildirim-gir { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

/* 6) Sepet sayfası ----------------------------------------------------- */
.mg-sayfa { font-family: inherit; color: var(--mg-metin); background: #fff; }
.mg-sayfa__bas { background: var(--mg-zemin); border-bottom: 1px solid var(--mg-cizgi); }
.mg-sayfa__bas-ic,
.mg-sayfa__govde { max-width: 1170px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.mg-sayfa__bas-ic { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px 30px; padding-top: 34px; padding-bottom: 30px; }
.mg-sayfa__bas h1 { margin: 0; color: var(--mg-lacivert); font-size: 32px; font-weight: 600; line-height: 1.2; letter-spacing: -.3px; }
.mg-sayfa__govde { padding-top: 40px; padding-bottom: 80px; min-height: 340px; }
@media (max-width: 767px) {
    .mg-sayfa__bas-ic { padding-top: 24px; padding-bottom: 20px; }
    .mg-sayfa__bas h1 { font-size: 26px; }
    .mg-sayfa__govde { padding-top: 24px; padding-bottom: 56px; }
}

.mg-sepet__duzen { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; align-items: start; }
@media (min-width: 992px) { .mg-sepet__duzen { grid-template-columns: minmax(0, 1fr) 360px; gap: 44px; } }

/* Sepet tablosu */
.mg-tablo { width: 100%; border-collapse: collapse; margin: 0; }
.mg-tablo caption { caption-side: top; padding: 0 0 12px; color: var(--mg-soluk); font-size: 14px; text-align: left; }
.mg-tablo th {
    padding: 0 12px 12px;
    border-bottom: 1px solid var(--mg-cizgi);
    color: var(--mg-soluk);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .7px;
    text-transform: uppercase;
    text-align: left;
    white-space: nowrap;
}
.mg-tablo th:first-child, .mg-tablo td:first-child { padding-left: 0; }
.mg-tablo th.mg-sag, .mg-tablo td.mg-sag { text-align: right; }
.mg-tablo th.mg-orta, .mg-tablo td.mg-orta { text-align: center; }
.mg-tablo td { padding: 20px 12px; border-bottom: 1px solid var(--mg-cizgi); vertical-align: middle; font-size: 15px; font-variant-numeric: tabular-nums; }
.mg-tablo td:last-child, .mg-tablo th:last-child { padding-right: 0; }
.mg-satir__urun { display: flex; align-items: center; gap: 16px; min-width: 0; }
.mg-satir__gorsel {
    flex: 0 0 auto;
    display: block;
    width: 84px; height: 84px;
    border-radius: 12px;
    background: var(--mg-zemin);
    overflow: hidden;
}
.mg-satir__gorsel img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mg-sepet a.mg-satir__ad { display: inline-block; color: var(--mg-metin); font-size: 17px; font-weight: 600; line-height: 1.3; text-decoration: none; }
.mg-sepet a.mg-satir__ad:hover { color: var(--mg-lacivert-2); text-decoration: underline; }
.mg-satir__alt { display: block; margin-top: 3px; color: var(--mg-soluk); font-size: 13px; }
.mg-satir__tutar { color: var(--mg-lacivert); font-weight: 600; white-space: nowrap; }
.mg-satir__birim { white-space: nowrap; color: var(--mg-metin); }
.mg-satir__sil {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px; height: 40px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--mg-soluk);
    cursor: pointer;
    transition: color .2s ease, background-color .2s ease;
}
.mg-satir__sil:hover { color: var(--mg-kirmizi); background: rgba(238, 43, 55, .08); }

/* Mobil: tablo satırları karta dönüşür (başlık satırı ekran okuyucular için kalır) */
@media (max-width: 767px) {
    .mg-tablo thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
    .mg-tablo, .mg-tablo tbody, .mg-tablo caption { display: block; }
    .mg-tablo tr {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-areas: "urun urun" "adet tutar";
        align-items: center;
        gap: 14px 12px;
        position: relative;
        padding: 18px 0;
        border-bottom: 1px solid var(--mg-cizgi);
    }
    .mg-tablo tbody tr:first-child { padding-top: 4px; }
    .mg-tablo td { display: block; padding: 0 !important; border: 0; }
    .mg-tablo td.mg-h-urun { grid-area: urun; padding-right: 44px !important; }
    .mg-tablo td.mg-h-birim { display: none; }       /* birim fiyat ürün adının altında gösterilir */
    .mg-tablo td.mg-h-adet { grid-area: adet; text-align: left; padding-left: 88px !important; }
    .mg-tablo td.mg-h-tutar { grid-area: tutar; text-align: right; font-size: 17px; }
    .mg-tablo td.mg-h-sil { position: absolute; top: 10px; right: -8px; }
    .mg-tablo tbody tr:first-child td.mg-h-sil { top: -4px; }
    .mg-satir__gorsel { width: 72px; height: 72px; }
    .mg-satir__urun { align-items: flex-start; }
}
@media (min-width: 768px) { .mg-satir__birim-mobil { display: none; } }

/* Sipariş özeti */
.mg-ozet {
    padding: 26px 26px 24px;
    border: 1px solid var(--mg-cizgi);
    border-radius: 18px;
    background: #fff;
}
@media (min-width: 992px) { .mg-ozet { position: sticky; top: 110px; } }
.mg-ozet h2 { margin: 0 0 16px; color: var(--mg-lacivert); font-size: 20px; font-weight: 600; line-height: 1.3; }
.mg-ozet dl { margin: 0; }
.mg-ozet__satir { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 9px 0; font-size: 15px; }
.mg-ozet__satir dt { margin: 0; color: var(--mg-soluk); font-weight: 400; }
.mg-ozet__satir dt small { display: block; font-size: 12.5px; color: var(--mg-soluk); }
.mg-ozet__satir dd { margin: 0; color: var(--mg-metin); font-weight: 500; white-space: nowrap; font-variant-numeric: tabular-nums; }
.mg-ozet__satir--toplam { margin-top: 8px; padding-top: 18px; border-top: 1px solid var(--mg-cizgi); }
.mg-ozet__satir--toplam dt { color: var(--mg-metin); font-size: 16px; font-weight: 600; }
.mg-ozet__satir--toplam dd { color: var(--mg-lacivert); font-size: 24px; font-weight: 600; letter-spacing: -.2px; }
.mg-ozet .mg-btn--blok { margin-top: 20px; min-height: 52px; }
.mg-sepet a.mg-ozet__devam { display: block; margin-top: 14px; color: var(--mg-lacivert-2); font-size: 15px; font-weight: 500; text-align: center; text-decoration: underline; text-underline-offset: 3px; }
.mg-sepet a.mg-ozet__devam:hover { color: var(--mg-kirmizi); }
.mg-ozet p.mg-ozet__not { display: flex; gap: 10px; margin: 20px 0 0; padding-top: 18px; border-top: 1px solid var(--mg-cizgi); color: var(--mg-soluk); font-size: 13px; line-height: 1.55; }
.mg-sepet .mg-ozet__not a { display: inline-block; color: var(--mg-lacivert-2); text-decoration: underline; text-underline-offset: 2px; }
.mg-sepet .mg-ozet__not a:hover { color: var(--mg-kirmizi); }
.mg-ozet__not svg { flex: 0 0 auto; margin-top: 2px; color: var(--mg-lacivert-2); }

/* Boş sepet */
.mg-bos { max-width: 520px; margin: 30px auto 0; text-align: center; }
.mg-bos__ikon { display: inline-flex; align-items: center; justify-content: center; width: 84px; height: 84px; border-radius: 50%; background: var(--mg-zemin); color: var(--mg-lacivert-2); }
.mg-bos h2 { margin: 22px 0 8px; color: var(--mg-lacivert); font-size: 24px; font-weight: 600; }
.mg-bos p { margin: 0 0 24px; color: var(--mg-soluk); font-size: 16px; line-height: 1.6; }
.mg-uyari { margin: 0 0 20px; padding: 14px 18px; border: 1px solid var(--mg-cizgi); border-left: 4px solid var(--mg-lacivert-2); border-radius: 8px; background: var(--mg-zemin); font-size: 15px; }

/* 7) Adım göstergesi (sepet / sipariş / ödeme) -------------------------- */
.mg-adimlar { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; list-style: none; color: var(--mg-soluk); font-size: 14px; font-weight: 500; }
.mg-adimlar li { display: flex; align-items: center; gap: 8px; margin: 0; white-space: nowrap; }
.mg-adimlar li + li::before { content: ""; width: 26px; height: 1px; margin-right: 2px; background: #c9cddd; }
.mg-adimlar__no { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid #c9cddd; border-radius: 50%; font-size: 12px; font-weight: 600; font-variant-numeric: tabular-nums; }
.mg-adimlar .mg-adim--aktif { color: var(--mg-lacivert); font-weight: 600; }
.mg-adimlar .mg-adim--aktif .mg-adimlar__no { border-color: var(--mg-lacivert); background: var(--mg-lacivert); color: #fff; }
.mg-adimlar .mg-adim--tamam .mg-adimlar__no { border-color: var(--mg-lacivert-2); color: var(--mg-lacivert-2); }
@media (max-width: 575px) {
    .mg-adimlar { gap: 6px; font-size: 13px; }
    .mg-adimlar li + li::before { width: 12px; }
}
/* Çok dar ekran: yalnızca etkin adımın adı görünür (diğerleri ekran okuyucuda kalır) */
@media (max-width: 379px) {
    .mg-adimlar li:not(.mg-adim--aktif) .mg-adimlar__ad { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* 8) Azaltılmış hareket ------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
    .mg-btn, .mg-adet__btn, .mg-sepet-link, .mg-satir__sil, .mg-bildirim a, .mg-bildirim button { transition: none !important; }
    .mg-bildirim, .mg-sepet-sayi.mg-zipla { animation: none !important; }
    .mg-btn--birincil:active { transform: none; }
}

/* =====================================================================
   SİPARİŞ SAYFALARI (siparis.php / en/checkout.php, siparis-sonuc.php / en/order-result.php)
   9) Sipariş düzeni ve form  10) Sözleşme kutuları ve onay  11) Sipariş özeti (yan sütun)
   12) Sonuç sayfası  13) Altbilgi ödeme satırı  14) Azaltılmış hareket (sipariş)
   ===================================================================== */

/* 9) Sipariş düzeni ve form --------------------------------------------- */
.mg-siparis [hidden],
.mg-sonuc [hidden] { display: none !important; }
.mg-siparis a:focus-visible,
.mg-siparis button:focus-visible,
.mg-siparis summary:focus-visible,
.mg-siparis [tabindex]:focus-visible,
.mg-sonuc a:focus-visible,
.mg-sonuc [tabindex]:focus-visible {
    outline: 3px solid var(--mg-odak) !important;
    outline-offset: 2px;
}
.mg-siparis__duzen { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; align-items: start; }
@media (min-width: 992px) { .mg-siparis__duzen { grid-template-columns: minmax(0, 1fr) 380px; gap: 56px; } }

.mg-bolum { min-width: 0; margin: 0 0 36px; padding: 0; border: 0; }
.mg-bolum > legend,
.mg-bolum > h2 {
    float: none;
    width: 100%;
    margin: 0 0 18px;
    padding: 0 0 12px;
    border-bottom: 1px solid var(--mg-cizgi);
    color: var(--mg-lacivert);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
}
.mg-bolum__no { display: inline-block; min-width: 26px; color: var(--mg-kirmizi); font-variant-numeric: tabular-nums; }
.mg-bolum p.mg-bolum__aciklama { margin: -6px 0 18px; color: var(--mg-soluk); font-size: 14px; line-height: 1.55; }

.mg-izgara { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 20px; }
@media (min-width: 576px) { .mg-izgara--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.mg-alan { margin: 0 0 18px; min-width: 0; }
.mg-alan > label,
.mg-secim-baslik {
    display: block;
    margin: 0 0 7px;
    color: var(--mg-metin);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
}
.mg-zorunlu { color: #c8102e; }        /* zorunlu alan yıldızı: beyaz zeminde 5,88:1 (site kırmızısı #ee2b37 yalnızca 4,17:1) */
.mg-istege { color: var(--mg-soluk); font-weight: 400; }
.mg-siparis .mg-girdi {
    display: block;
    width: 100%;
    height: 52px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid #c1c6d6;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: none;
    color: var(--mg-metin);
    font-family: inherit;
    font-size: 16px;            /* iOS odakta yakınlaştırmasın */
    line-height: 1.4;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.mg-siparis textarea.mg-girdi { height: auto; min-height: 96px; padding: 13px 16px; resize: vertical; }
.mg-siparis select.mg-girdi {
    padding-right: 44px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%2314145d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 20px 20px;
    cursor: pointer;
}
.mg-siparis .mg-girdi::placeholder { color: #8a8fa3; opacity: 1; }
.mg-siparis .mg-girdi:hover { border-color: #8f96b0; }
.mg-siparis .mg-girdi:focus {
    border-color: var(--mg-lacivert-2);
    box-shadow: 0 0 0 3px rgba(36, 53, 122, .22);
    outline: none;
}
.mg-siparis .mg-girdi[aria-invalid="true"] { border-color: #c81e2b; background-color: #fff8f8; }
.mg-siparis .mg-girdi[aria-invalid="true"]:focus { box-shadow: 0 0 0 3px rgba(200, 30, 43, .2); }
.mg-alan p.mg-alan__ipucu { margin: 7px 0 0; color: var(--mg-soluk); font-size: 13px; line-height: 1.5; }
.mg-siparis p.mg-alan__hata { margin: 7px 0 0; color: #b3141f; font-size: 13.5px; font-weight: 500; line-height: 1.45; }

/* Fatura tipi (radyo düğmeleri kart görünümünde) */
.mg-secim { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 20px; }
.mg-secim__oge { position: relative; display: block; margin: 0; cursor: pointer; }
.mg-secim__oge input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.mg-secim__kutu {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 56px;
    padding: 10px 16px;
    border: 1px solid #c1c6d6;
    border-radius: 12px;
    background: #fff;
    color: var(--mg-metin);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
    transition: border-color .2s ease, background-color .2s ease;
}
.mg-secim__kutu::before {
    content: "";
    flex: 0 0 auto;
    width: 20px; height: 20px;
    border: 1.5px solid #8f96b0;
    border-radius: 50%;
    background: #fff;
    box-shadow: inset 0 0 0 4px #fff;
}
.mg-secim__oge input:checked + .mg-secim__kutu { border-color: var(--mg-lacivert-2); background: var(--mg-zemin); color: var(--mg-lacivert); }
.mg-secim__oge input:checked + .mg-secim__kutu::before { border-color: var(--mg-lacivert-2); background: var(--mg-lacivert-2); }
.mg-secim__oge input:focus-visible + .mg-secim__kutu { outline: 3px solid var(--mg-odak); outline-offset: 2px; }
.mg-secim__oge:hover .mg-secim__kutu { border-color: #8f96b0; }

/* Hata özeti */
.mg-hata-ozet {
    margin: 0 0 30px;
    padding: 18px 22px;
    border: 1px solid #efc2c5;
    border-left: 4px solid #c81e2b;
    border-radius: 12px;
    background: #fff8f8;
}
.mg-hata-ozet h2 { margin: 0 0 8px; color: #8f0f18; font-size: 17px; font-weight: 600; line-height: 1.35; }
.mg-hata-ozet ul { margin: 0; padding-left: 20px; font-size: 15px; line-height: 1.6; }
.mg-siparis .mg-hata-ozet a { color: #8f0f18; text-decoration: underline; text-underline-offset: 2px; }

/* 10) Sözleşme kutuları ve onay ------------------------------------------ */
/*     Sözleşme / aydınlatma metinleri (ÖBF, MSS ve KVKK akordeonları) EN AZ 16 px = 12 punto (13.11.2026, sahibin onayı;
       yalnızca CSS, metin değişmedi). Başlıklar 17 px; tablo, etiket (dt) ve sürüm satırları da 16 px. */
.mg-sozlesme { margin: 0 0 12px; border: 1px solid var(--mg-cizgi); border-radius: 12px; background: #fff; overflow: hidden; }
.mg-sozlesme > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 54px;
    padding: 10px 18px;
    color: var(--mg-lacivert);
    font-size: 15.5px;
    font-weight: 600;
    line-height: 1.35;
    cursor: pointer;
    list-style: none;
}
.mg-sozlesme > summary::-webkit-details-marker { display: none; }
.mg-sozlesme > summary::after {
    content: "";
    flex: 0 0 auto;
    width: 10px; height: 10px;
    margin-right: 4px;
    border-right: 2px solid var(--mg-lacivert-2);
    border-bottom: 2px solid var(--mg-lacivert-2);
    transform: rotate(45deg) translateY(-3px);
    transition: transform .2s ease;
}
.mg-sozlesme[open] > summary::after { transform: rotate(225deg) translateY(-3px); }
.mg-sozlesme > summary:hover { background: var(--mg-zemin); }
.mg-sozlesme > summary:focus-visible { outline-offset: -3px !important; border-radius: 12px; }
.mg-sozlesme__ic {
    max-height: 340px;
    overflow: auto;
    padding: 4px 20px 16px;
    border-top: 1px solid var(--mg-cizgi);
    background: #fcfcfe;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}
.sz-metin { color: #3b3f52; font-size: 16px; line-height: 1.7; overflow-wrap: break-word; }   /* uzun e-posta / KEP adresi 320 px'te taşmasın */
.sz-metin h4 { margin: 18px 0 6px; color: var(--mg-lacivert); font-size: 17px; font-weight: 600; line-height: 1.4; }
.sz-metin p { margin: 0 0 8px; font-size: 16px; line-height: 1.7; }
.sz-metin ul { margin: 0 0 8px; padding-left: 20px; font-size: 16px; }
.sz-metin li { margin: 0 0 4px; }
.mg-siparis .sz-metin a { color: var(--mg-lacivert-2); text-decoration: underline; text-underline-offset: 2px; }
.sz-metin dl { margin: 0 0 10px; padding: 12px 14px; border: 1px solid var(--mg-cizgi); border-radius: 10px; background: #fff; }
.sz-metin dt { margin: 0; color: var(--mg-soluk); font-size: 16px; font-weight: 500; }
.sz-metin dd { margin: 0 0 8px; color: var(--mg-metin); font-weight: 500; word-break: break-word; }
.sz-metin dd:last-child { margin-bottom: 0; }
.sz-metin .sz-alan[data-sz-dolu] { color: var(--mg-lacivert); }
.sz-metin .sz-alan:not([data-sz-dolu]) { color: var(--mg-soluk); font-weight: 400; font-style: italic; }
.sz-metin p.sz-surum { margin-top: 14px; color: var(--mg-soluk); font-size: 16px; }
.sz-tablo { width: 100%; margin: 4px 0 10px; border-collapse: collapse; font-size: 16px; font-variant-numeric: tabular-nums; }
.sz-tablo th, .sz-tablo td { padding: 7px 8px; border-bottom: 1px solid var(--mg-cizgi); text-align: left; vertical-align: top; }
.sz-tablo th { color: var(--mg-soluk); font-size: 16px; font-weight: 600; }
.sz-tablo .sz-sag { text-align: right; white-space: nowrap; }
.sz-tablo tfoot th { color: var(--mg-metin); font-size: 16px; font-weight: 500; text-align: right; }
.sz-tablo tfoot tr:last-child th, .sz-tablo tfoot tr:last-child td { border-bottom: 0; color: var(--mg-lacivert); font-weight: 600; }

.mg-onaylar { margin: 22px 0 0; }
.mg-onay { position: relative; margin: 0 0 14px; padding-left: 38px; }
.mg-onay input[type="checkbox"] {
    position: absolute;
    top: 1px; left: 0;
    width: 24px; height: 24px;
    margin: 0;
    border: 1.5px solid #8f96b0;
    border-radius: 6px;
    background: #fff;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease;
}
.mg-onay input[type="checkbox"]:checked {
    border-color: var(--mg-lacivert-2);
    background: var(--mg-lacivert-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}
.mg-onay input[type="checkbox"]:focus-visible { outline: 3px solid var(--mg-odak); outline-offset: 2px; }
.mg-onay input[type="checkbox"][aria-invalid="true"] { border-color: #c81e2b; }
.mg-onay label { display: block; margin: 0; padding: 2px 0; color: var(--mg-metin); font-size: 15px; line-height: 1.5; cursor: pointer; }
/* Sipariş sayfasının üç onay kutusu (ÖBF, MSS, KVKK "okudum ve anladım"): etiketler de sözleşme / aydınlatma metinleriyle aynı,
   en az 16 px = 12 punto (13.11.2026). Hesabım ve "hesabıma kaydet" kutuları 15 px kalır. */
.mg-onaylar .mg-onay label { font-size: 16px; }
.mg-siparis .mg-onay label a { color: var(--mg-lacivert-2); font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.mg-siparis .mg-onay label a:hover { color: var(--mg-kirmizi); }

.mg-odenecek {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 4px 16px;
    margin: 26px 0 16px;
    padding-top: 20px;
    border-top: 1px solid var(--mg-cizgi);
}
.mg-odenecek__ad { color: var(--mg-metin); font-size: 16px; font-weight: 600; }
.mg-odenecek__ad small { margin-left: 6px; color: var(--mg-soluk); font-size: 13px; font-weight: 400; }
.mg-odenecek__tutar { color: var(--mg-lacivert); font-size: 26px; font-weight: 600; letter-spacing: -.2px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mg-btn--onay { flex-direction: column; gap: 2px; min-height: 60px; padding: 9px 24px; white-space: normal; text-align: center; }
.mg-btn--onay small { font-size: 13px; font-weight: 400; opacity: .92; }
.mg-siparis p.mg-guvence { display: flex; gap: 10px; margin: 16px 0 0; color: var(--mg-soluk); font-size: 13px; line-height: 1.55; }
.mg-guvence svg { flex: 0 0 auto; margin-top: 2px; color: var(--mg-lacivert-2); }

/* "Online ödeme çok yakında" bildirimi */
.mg-yakinda {
    margin: 24px 0 0;
    padding: 22px 24px;
    border: 1px solid #c9d2ee;
    border-left: 4px solid var(--mg-lacivert-2);
    border-radius: 14px;
    background: var(--mg-zemin);
}
.mg-yakinda h2 { margin: 0 0 8px; color: var(--mg-lacivert); font-size: 20px; font-weight: 600; line-height: 1.3; }
.mg-yakinda p { margin: 0 0 6px; color: #3b3f52; font-size: 15px; line-height: 1.6; }
.mg-yakinda p:last-child { margin-bottom: 0; }
.mg-yakinda:focus { outline: none; }
.mg-yakinda:focus-visible { outline: 3px solid var(--mg-odak); outline-offset: 2px; }

/* 11) Sipariş özeti (yan sütun) ------------------------------------------- */
.mg-ozet__liste { margin: 0 0 14px; padding: 0 0 14px; border-bottom: 1px solid var(--mg-cizgi); list-style: none; }
.mg-ozet__urun { display: flex; align-items: center; gap: 14px; margin: 0; padding: 9px 0; }
.mg-ozet__gorsel { flex: 0 0 auto; width: 56px; height: 56px; border-radius: 10px; background: var(--mg-zemin); overflow: hidden; }
.mg-ozet__gorsel img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mg-ozet__bilgi { flex: 1 1 auto; min-width: 0; }
.mg-ozet__ad { display: block; color: var(--mg-metin); font-size: 15px; font-weight: 600; line-height: 1.3; }
.mg-ozet__alt { display: block; margin-top: 2px; color: var(--mg-soluk); font-size: 13px; font-variant-numeric: tabular-nums; }
.mg-ozet__tutar { flex: 0 0 auto; color: var(--mg-metin); font-size: 15px; font-weight: 500; white-space: nowrap; font-variant-numeric: tabular-nums; }
.mg-siparis a.mg-ozet__devam { display: block; margin-top: 16px; color: var(--mg-lacivert-2); font-size: 15px; font-weight: 500; text-align: center; text-decoration: underline; text-underline-offset: 3px; }
.mg-siparis a.mg-ozet__devam:hover { color: var(--mg-kirmizi); }
.mg-ozet p.mg-ozet__uyari { margin: 14px 0 0; padding: 10px 12px; border: 1px solid #f0c9cc; border-radius: 10px; background: #fff8f8; color: #8f1019; font-size: 13.5px; line-height: 1.5; }
.mg-ozet p.mg-ozet__uyari[hidden] { display: none; }
.mg-ozet p.mg-ozet__uyari a { display: inline; color: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.mg-ozet p.mg-ozet__teslimat { margin: 16px 0 0; padding-top: 16px; border-top: 1px solid var(--mg-cizgi); color: var(--mg-soluk); font-size: 13px; line-height: 1.55; }
.mg-adimlar a { color: inherit; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
.mg-adimlar a:hover .mg-adimlar__ad { text-decoration: underline; }
.mg-adimlar a:focus-visible { outline: 3px solid var(--mg-odak); outline-offset: 3px; border-radius: 4px; }

/* 12) Sonuç sayfası --------------------------------------------------------- */
.mg-sonuc__kutu { max-width: 600px; margin: 20px auto 0; text-align: center; }
.mg-sonuc__ikon { display: inline-flex; align-items: center; justify-content: center; width: 84px; height: 84px; border-radius: 50%; background: var(--mg-zemin); color: var(--mg-lacivert-2); }
.mg-sonuc__kutu--hata .mg-sonuc__ikon { background: #fdf1f1; color: #c81e2b; }
.mg-sonuc__kutu h2 { margin: 22px 0 10px; color: var(--mg-lacivert); font-size: 26px; font-weight: 600; line-height: 1.25; }
.mg-sonuc__kutu h2:focus,
.mg-sonuc .mg-sonuc__kutu h2:focus-visible { outline: none !important; }   /* başlığa odak yalnızca ekran okuyucu için verilir */
.mg-sonuc__kutu p { margin: 0 0 10px; color: #3b3f52; font-size: 16px; line-height: 1.65; }
.mg-sonuc__no { display: inline-flex; flex-direction: column; gap: 2px; margin: 14px 0 18px; padding: 14px 28px; border: 1px solid var(--mg-cizgi); border-radius: 14px; background: var(--mg-zemin); }
.mg-sonuc__no span { color: var(--mg-soluk); font-size: 13px; }
.mg-sonuc__no strong { color: var(--mg-lacivert); font-size: 22px; font-weight: 600; letter-spacing: .5px; font-variant-numeric: tabular-nums; }
.mg-sonuc__dugmeler { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
@media (max-width: 575px) {
    .mg-sonuc__kutu h2 { font-size: 22px; }
    .mg-sonuc__dugmeler .mg-btn { flex: 1 1 100%; }
    .mg-odenecek__tutar { font-size: 24px; }
    .mg-sozlesme__ic { padding: 2px 16px 14px; }
}

/* 13) Altbilgi ödeme satırı (yalnızca mağaza açıkken basılır): etiket + resmî kart logoları (images/odeme/*.svg, 13.11.2026)
       Logolar eşit beyaz karolarda: Visa ve TROY'un renkli işaretleri açık zemin içindir (altbilgi zemini koyu, #383a39).
       Marka kuralları: logolara opaklık / filtre / gölge / döndürme / hover efekti UYGULANMAZ; oran korunur (yalnız yükseklik verilir). */
.mg-odeme-satiri {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin: 0 auto 18px;
    padding: 0 16px;
    color: #b3b6b5;
    font-size: 13px;
    line-height: 1.4;
}
.mg-odeme-satiri__ad { margin: 0; }
.mg-odeme-satiri__markalar { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mg-odeme-satiri__kart {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 88px;
    height: 44px;
    margin: 0;
    padding: 0;
    border-radius: 8px;
    background: #fff;
    list-style: none;
}
/* Kart logoları (altbilgi + sipariş sayfası "Ödeme Yöntemi"): Visa 20 px (en az ≈19,6 px), Mastercard ve TROY 28 px yükseklik; genişlik oranla */
.mg-kart-logo { display: block; width: auto; max-width: none; height: 28px; }
.mg-kart-logo--visa { height: 20px; }
/* ≤379 px: altbilgide iç içe iki konteyner (container-fluid + container = 2×30 px) var ve .page-wrapper overflow:hidden taşanı KESER;
   üç karo tek satırda ve kesilmeden kalsın diye karolar daralır (3×78 + 2×6 = 246 px ≤ 260 px). */
@media (max-width: 379px) {
    .mg-odeme-satiri { padding: 0; }
    .mg-odeme-satiri__markalar { gap: 6px; }
    .mg-odeme-satiri__kart { width: 78px; }
}

/* 14) Azaltılmış hareket (sipariş) ---------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
    .mg-siparis .mg-girdi, .mg-secim__kutu, .mg-sozlesme > summary::after, .mg-onay input[type="checkbox"] { transition: none !important; }
}

/* 15) İngilizce sayfalar: adım adları daha uzun olduğundan ("Delivery and Confirmation") 380–479px
       arasında da yalnızca etkin adımın adı görünür (diğerleri ekran okuyucuda kalır) */
@media (max-width: 479px) {
    html[lang="en"] .mg-adimlar li:not(.mg-adim--aktif) .mg-adimlar__ad { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* 16) Doğrulama sonrası düzeltmeler (11.11.2026) ----------------------------------
   a) Sabit üstbilgi: odaklanan / kaydırılan öğeler üstbilginin altında kalmasın
      (scrollIntoView ve tarayıcının odak kaydırması scroll-margin'e uyar). */
.mg-hata-ozet,
.mg-yakinda,
.mg-siparis .mg-girdi,
.mg-secim__oge,
.mg-sozlesme,
.mg-onay,
.mg-geri-al { scroll-margin-top: 140px; }
@media (max-width: 1199px) {
    .mg-hata-ozet, .mg-yakinda, .mg-siparis .mg-girdi, .mg-secim__oge, .mg-sozlesme, .mg-onay, .mg-geri-al { scroll-margin-top: 84px; }
}

/* b) Hata özeti: tema bağlantıları inline-block yaptığı için madde imi, sarılan metnin son satırına kayıyordu */
.mg-siparis .mg-hata-ozet li { margin: 0 0 2px; }
.mg-siparis .mg-hata-ozet li a { display: inline; }

/* c) (13.11.2026) Sipariş sayfasındaki kısa kişisel veri notu (.mg-kvkk-not) kaldırıldı; yerini KVKK aydınlatma metni
      akordeonu ve zorunlu "okudum ve anladım" kutusu aldı (bölüm 21). */

/* d) Onay kutuları: görünen kutu 24px, dokunma alanı 44px (şeffaf kenarlık + iç gölge çerçeve) */
.mg-onay input[type="checkbox"] {
    top: -9px; left: -10px;
    width: 44px; height: 44px;
    border: 10px solid transparent;
    border-radius: 16px;
    background-color: #fff;
    background-clip: padding-box;
    box-shadow: inset 0 0 0 1.5px #8f96b0;
}
.mg-onay input[type="checkbox"]:checked {
    border-color: transparent;
    background-clip: padding-box;
    box-shadow: inset 0 0 0 1.5px var(--mg-lacivert-2);
}
.mg-onay input[type="checkbox"]:focus-visible { outline-offset: -7px; }
.mg-onay input[type="checkbox"][aria-invalid="true"] { border-color: transparent; box-shadow: inset 0 0 0 2px #c81e2b; }

/* e) Sepet: "çıkarıldı – Geri al" satırı (bildirim kapansa da bir sonraki sepet değişikliğine kadar kalır) */
.mg-geri-al {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin: 0 0 22px;
    padding: 12px 14px 12px 18px;
    border: 1px solid var(--mg-cizgi);
    border-left: 4px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: var(--mg-zemin);
    color: var(--mg-metin);
    font-size: 15px;
    line-height: 1.45;
}
.mg-geri-al__metin { flex: 1 1 200px; min-width: 0; }
.mg-geri-al__metin strong { font-weight: 600; }
.mg-geri-al__btn {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid #c9cddd;
    border-radius: 50rem;
    background: #fff;
    color: var(--mg-lacivert);
    font-family: inherit;
    font-size: 14.5px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease;
}
.mg-geri-al__btn:hover { border-color: var(--mg-lacivert); }

/* f) Ürün bloğu: fiyat etiketi bilgileri (Fiyat Etiketi Yönetmeliği m.5/2-a, d): üretim yeri + fiyatın uygulanmaya başlandığı tarih.
      Detay görünümünde her bilgi ayrı <p>; liste görünümünde fiyatın altında, her bilgi ayrı satır (<br> yok: organik.css ≤575px'te p br'yi gizler). */
.mg-urun p.mg-urun__etiket { margin: 2px 0 0; color: var(--mg-soluk); font-size: 13px; line-height: 1.5; }
.mg-urun--liste .mg-urun__etiket { display: block; margin-top: 6px; color: var(--mg-soluk); font-size: 13px; line-height: 1.45; }
.mg-urun__etiket-oge { display: block; }

/* g) Mobil: dokunma hedefleri en az 44px */
@media (max-width: 767px) {
    .mg-adet--kucuk { height: 46px; }     /* 1px kenarlıklar dahil: düğmeler 44x44 */
    .mg-adet--kucuk .mg-adet__btn { width: 44px; }
    .mg-adet--kucuk .mg-adet__girdi { width: 38px; }
    .mg-satir__sil { width: 44px; height: 44px; }
    .mg-tablo td.mg-h-urun { padding-right: 46px !important; }
}

/* h) Mobil / tablet: sipariş özeti (ürünler) formun ve onay düğmesinin ÜSTÜNDE görünür */
@media (max-width: 991px) {
    .mg-siparis__ozet { order: -1; }
    .mg-siparis__ozet .mg-ozet__gorsel { width: 48px; height: 48px; }
}

/* i) Mobil: sözleşme kutusundaki ürün tablosu yatay taşmasın ("Tutar" sütunu kesilmesin). Yazı boyutu küçültülMEZ (en az 16 px,
      bölüm 10); bunun yerine hücre boşlukları daralır, başlıklar ve ürün adı satır kırar. */
@media (max-width: 575px) {
    .sz-tablo { table-layout: auto; }
    .sz-tablo th, .sz-tablo td { padding: 6px 4px; }
    .sz-tablo th:first-child, .sz-tablo td:first-child { padding-left: 0; }
    .sz-tablo th:last-child, .sz-tablo td:last-child { padding-right: 0; }
    .sz-tablo thead th.sz-sag { white-space: normal; }
    .sz-tablo tbody td:first-child { overflow-wrap: anywhere; }
}
@media (max-width: 379px) {          /* 320 px, 16 px yazı: tutar gerekirse "4,725" / "TL" diye iki satıra iner (EN tabloda 2 px taşma vardı) */
    .sz-tablo .sz-sag { white-space: normal; }
}

@media (prefers-reduced-motion: reduce) {
    .mg-geri-al__btn { transition: none !important; }
}

/* j) Kupon kodu (sepet özeti) + "İndirim" satırı (sepet ve sipariş özeti, sözleşme tablosu) */
.mg-ozet__satir[hidden] { display: none !important; }
.mg-ozet__satir--indirim dt,
.mg-ozet__satir--indirim dd { color: #17663a; }
.mg-ozet__satir--indirim dt { overflow-wrap: anywhere; }
.sz-tablo tfoot tr.sz-indirim th,
.sz-tablo tfoot tr.sz-indirim td { color: #17663a; }

.mg-kupon { margin: 18px 0 0; padding-top: 18px; border-top: 1px solid var(--mg-cizgi); }
.mg-kupon [hidden] { display: none !important; }
.mg-kupon label,
.mg-kupon__baslik { display: block; margin: 0 0 8px; color: var(--mg-metin); font-size: 14px; font-weight: 500; line-height: 1.4; }
.mg-kupon__form { margin: 0; }
.mg-kupon__satir { display: flex; align-items: stretch; gap: 8px; }
.mg-sepet .mg-kupon__girdi {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    height: 48px;
    margin: 0;
    padding: 0 14px;
    border: 1px solid #c1c6d6;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: none;
    color: var(--mg-metin);
    font-family: inherit;
    font-size: 16px;            /* iOS odakta yakınlaştırmasın */
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .04em;
    text-transform: uppercase;  /* yalnızca görünüm; kod sunucuda da büyük harfe çevrilir */
    -webkit-appearance: none;
    appearance: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.mg-sepet .mg-kupon__girdi:hover { border-color: #8f96b0; }
.mg-sepet .mg-kupon__girdi:focus {
    border-color: var(--mg-lacivert-2);
    box-shadow: 0 0 0 3px rgba(36, 53, 122, .22);
    outline: none;
}
.mg-sepet .mg-kupon__girdi[readonly] { background-color: var(--mg-zemin); color: var(--mg-soluk); }
.mg-sepet .mg-kupon__girdi[aria-invalid="true"] { border-color: #c81e2b; background-color: #fff8f8; }
.mg-sepet .mg-kupon__girdi[aria-invalid="true"]:focus { box-shadow: 0 0 0 3px rgba(200, 30, 43, .2); }
.mg-kupon__btn {
    flex: 0 0 auto;
    min-width: 88px;
    min-height: 48px;
    margin: 0;
    padding: 0 18px;
    border: 1px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: #fff;
    color: var(--mg-lacivert);
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease;
}
.mg-kupon__btn:hover { background: var(--mg-lacivert-2); color: #fff; }
.mg-kupon__btn[aria-disabled="true"] { border-color: #c9cddd; background: var(--mg-zemin); color: var(--mg-soluk); cursor: progress; }
.mg-kupon__cip {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    min-height: 44px;
    padding: 0 0 0 16px;
    border: 1px solid #b9dcc6;
    border-radius: 50rem;
    background: #f1f9f4;
    color: #17663a;
}
.mg-kupon__kod { flex: 0 0 auto; font-size: 15px; font-weight: 600; letter-spacing: .04em; white-space: nowrap; }
.mg-kupon__kaldir {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: -1px -1px -1px 4px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #17663a;
    font-family: inherit;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
.mg-kupon__kaldir:hover { background: #dcefe3; color: #0f4d2a; }
/* Mesaj satırı canlı bölgedir (aria-live): boşken de DOM'da kalır, yalnızca yer kaplamaz */
.mg-sepet p.mg-kupon__mesaj { margin: 0; color: #17663a; font-size: 13.5px; font-weight: 500; line-height: 1.45; }
.mg-sepet p.mg-kupon__mesaj:not(:empty) { margin-top: 8px; }
.mg-sepet p.mg-kupon__mesaj--hata { color: #b3141f; }
.mg-sepet p.mg-kupon__mesaj--bekle { color: var(--mg-soluk); }
.mg-bos p.mg-bos__not { margin-top: -12px; font-size: 14.5px; }
@media (max-width: 379px) {
    .mg-kupon__btn { min-width: 0; padding: 0 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .mg-kupon__girdi, .mg-kupon__btn { transition: none !important; }
}

/* =====================================================================
   17) ÜYELİK (15.11.2026) — üstbilgi hesap simgesi, giriş (giris / en/login) ve
       hesabım (hesabim / en/account) sayfaları. Form alanları sipariş sayfasının
       stillerini kullanır (<main class="mg-sayfa mg-siparis mg-uye">).
   ===================================================================== */
/* a) Üstbilgi: giriş / hesap alanı (sepet simgesinin solunda) + mobil menü satırı
      Mağaza açıkken HER ZAMAN basılır (header.php, en/header.php; 13.11.2026 "giriş alanı"): oturum yoksa kişi simgesi +
      "Giriş Yap" / "Sign in" (giris / en/login), oturum varsa "Hesabım" / "My account" (hesabim / en/account).
      Masaüstü (>= 1200 px): simge + yazı, 44 px yüksek hap; normal ve yapışkan üstbilgide aynı (yapışkan olan kopyadır).
      Mobil / tablet (< 1200 px): sepetin solunda yalnızca simge (aria-label + title) ve açılır mobil menüde yazılı satır. */
.mg-hesap-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: var(--mg-lacivert) !important;
    text-decoration: none !important;
    transition: color .2s ease, background-color .2s ease;
}
.mg-hesap-link:hover { color: var(--mg-kirmizi-koyu) !important; background-color: rgba(20, 20, 93, .06); }
.main-menu__two .main-logo a.mg-hesap-link:hover { transform: none; }
.mg-hesap-link:focus-visible,
.mg-menu-hesap a:focus-visible { outline: 3px solid var(--mg-odak) !important; outline-offset: 2px; }
.mg-hesap-link--masaustu {
    display: none;
    width: auto;
    gap: 6px;
    margin-left: 14px;
    padding: 0 13px 0 9px;
    border-radius: 22px;
    font-family: var(--thm-font);
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .1px;
    white-space: nowrap;
}
.mg-hesap-etiket { display: block; }
.mg-hesap-link--masaustu + .mg-sepet-link--masaustu { margin-left: 2px; }
.main-menu .main-logo a.mg-hesap-link--mobil { display: inline-flex; position: absolute; right: 114px; }
@media (min-width: 1200px) {
    .mg-hesap-link--masaustu { display: inline-flex; }
    .main-menu .main-logo a.mg-hesap-link--mobil { display: none; }
    /* Sağ küme hizası (13.11.2026 "üst şerit"): sosyal medya simgeleri ve dil düğmesi ana satırdan üstteki ince şeride
       (.ust-serit, header.php / en/header.php) taşındı; ana satırda logo, menü, giriş alanı ve sepet kaldı. Giriş alanına yer
       açmak için daraltılan menü aralığı (32 px) ve sosyal simge aralıkları kaldırıldı: menü yeniden organik.css'teki 40 px
       aralıkla 1200–1920 px'te TR ve EN'de tek satır. Yalnızca iç kapsayıcının 15 + 15 px'i sıfır kalır: sepet bağlantısı
       kapsayıcının sağ kenarına hizalanır (logonun sol kenarına simetrik).
       Göz hizası: 44 px'lik sepet bağlantısındaki çantanın ÇİZİLEN sağ kenarı kapsayıcı kenarının 15,7 px içinde (22 px
       simge ortada + çanta yolu simge kutusunun 4,7 px içinde). Üst şeritteki dil düğmesi bu yüzden 16 px içeri alınır: dil
       hapı ile çanta alt alta aynı çizgide biter (önce hap 15,7 px dışarı taşıyordu). Sepet simgesi değişirse yeniden ölçün.
       Yalnızca mağaza açıkken yüklenir (mağaza kapalıyken sağ küme boştur, dil düğmesi kapsayıcı kenarında kalır). */
    .topbar-two__right .topbar-two .container { padding-left: 0; padding-right: 0; }     /* iç kapsayıcının 15 + 15 px'i */
    .ust-serit__dil { margin-right: 16px; }                                              /* çantanın çizilen sağ kenarı */
}
.mg-menu-hesap { display: none !important; }
.mobile-nav__container .mg-menu-hesap { display: block !important; }

/* b) Ortak: bildirim satırları, bağlantı görünümlü düğme */
.mg-uye [hidden] { display: none !important; }
.mg-uye p.mg-uye__mesaj {
    margin: 0 0 22px;
    padding: 13px 16px;
    border: 1px solid var(--mg-cizgi);
    border-left: 4px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: var(--mg-zemin);
    color: var(--mg-metin);
    font-size: 15px;
    line-height: 1.55;
    scroll-margin-top: 140px;
}
.mg-uye p.mg-uye__mesaj--tamam { border-color: #b9dcc6; border-left-color: #17663a; background: #f1f9f4; color: #0f4d2a; }
.mg-uye p.mg-uye__mesaj--hata { border-color: #f0c9cc; border-left-color: #c81e2b; background: #fff8f8; color: #8f0f18; }
.mg-uye p.mg-uye__mesaj:focus { outline: none; }
.mg-uye p.mg-uye__mesaj:focus-visible { outline: 3px solid var(--mg-odak); outline-offset: 2px; }
.mg-uye__baglanti {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin: 0;
    padding: 0 4px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--mg-lacivert-2);
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}
.mg-uye__baglanti:hover { color: var(--mg-kirmizi); }
.mg-uye__baglanti[disabled] { color: #8a8fa3; text-decoration: none; cursor: not-allowed; }
.mg-uye__baglanti--sil { color: #b3141f; }
.mg-uye .mg-hata-ozet h3 { margin: 0 0 8px; color: #8f0f18; font-size: 17px; font-weight: 600; line-height: 1.35; }

/* c) Giriş sayfası: tek sütun kart */
.mg-uye__kart { max-width: 480px; margin: 8px auto 0; }
.mg-uye__kart h2 { margin: 0 0 10px; color: var(--mg-lacivert); font-size: 24px; font-weight: 600; line-height: 1.25; }
.mg-uye p.mg-uye__aciklama { margin: 0 0 24px; color: #3b3f52; font-size: 16px; line-height: 1.6; }
.mg-uye__eposta { color: var(--mg-metin); font-weight: 600; overflow-wrap: anywhere; }
.mg-uye__form .mg-btn--blok { min-height: 52px; margin-top: 6px; }
.mg-siparis .mg-girdi.mg-uye__kod {
    height: 60px;
    padding: 0 12px;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: .32em;
    text-align: center;
    font-variant-numeric: tabular-nums;
}
.mg-uye__yeniden { margin: 22px 0 0; padding-top: 18px; border-top: 1px solid var(--mg-cizgi); text-align: center; }
.mg-uye p.mg-uye__sayac { margin: 0 0 2px; color: var(--mg-soluk); font-size: 14px; line-height: 1.5; font-variant-numeric: tabular-nums; }
.mg-uye p.mg-uye__not { margin: 18px 0 0; color: var(--mg-soluk); font-size: 14.5px; line-height: 1.6; text-align: center; }
.mg-uye p.mg-uye__not--kvkk { font-size: 13px; }
.mg-uye .mg-uye__not a { display: inline; color: var(--mg-lacivert-2); font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.mg-uye .mg-uye__not a:hover { color: var(--mg-kirmizi); }

/* d) Hesabım: yan sütun (selam + bölüm bağlantıları) ve içerik */
.mg-uye__cikis { margin: 0; }
.mg-uye__cikis-btn { min-height: 44px; padding: 0 22px; font-size: 15px; }
.mg-uye__duzen { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; align-items: start; }
@media (min-width: 992px) { .mg-uye__duzen { grid-template-columns: 260px minmax(0, 1fr); gap: 56px; } }
.mg-uye__yan { min-width: 0; padding: 22px 22px 14px; border: 1px solid var(--mg-cizgi); border-radius: 16px; background: var(--mg-zemin); }
.mg-uye p.mg-uye__selam { margin: 0 0 6px; color: var(--mg-lacivert); font-size: 20px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.mg-uye p.mg-uye__kimlik { margin: 0 0 12px; color: var(--mg-soluk); font-size: 13.5px; line-height: 1.5; }
.mg-uye__kimlik strong { display: block; color: var(--mg-metin); font-size: 14.5px; font-weight: 500; overflow-wrap: anywhere; }
.mg-uye__gezinme ul { margin: 0; padding: 8px 0 0; border-top: 1px solid var(--mg-cizgi); list-style: none; }
.mg-uye__gezinme li { margin: 0; }
.mg-uye__gezinme a { display: flex; align-items: center; min-height: 44px; color: var(--mg-lacivert-2); font-size: 15px; font-weight: 500; text-decoration: none; }
.mg-uye__gezinme a:hover { color: var(--mg-kirmizi); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 991px) {
    .mg-uye__gezinme ul { display: flex; flex-wrap: wrap; gap: 0 20px; }
}
.mg-uye__icerik { min-width: 0; }
.mg-uye__icerik .mg-bolum { scroll-margin-top: 130px; }
@media (max-width: 1199px) { .mg-uye__icerik .mg-bolum { scroll-margin-top: 80px; } }
.mg-uye__icerik .mg-bolum:last-child { margin-bottom: 0; }
.mg-uye__form--genis { max-width: 720px; }
.mg-uye__grup { min-width: 0; margin: 0 0 8px; padding: 0; border: 0; }
.mg-uye__grup > legend { float: none; width: auto; margin: 0 0 14px; padding: 0; color: var(--mg-metin); font-size: 16px; font-weight: 600; line-height: 1.3; }
.mg-uye p.mg-uye__zorunlu-not { margin: 0 0 18px; color: var(--mg-soluk); font-size: 13px; }
.mg-uye__dugmeler { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; margin-top: 6px; }
.mg-uye p.mg-uye__guncelleme { margin: 12px 0 0; color: var(--mg-soluk); font-size: 13px; }
.mg-siparis .mg-girdi[readonly] { background-color: var(--mg-zemin); color: var(--mg-soluk); }

/* Sipariş geçmişi */
.mg-uye__bos { padding: 26px 24px; border: 1px dashed #c9cddd; border-radius: 14px; text-align: center; }
.mg-uye__bos h3 { margin: 0 0 6px; color: var(--mg-lacivert); font-size: 18px; font-weight: 600; }
.mg-uye__bos p { margin: 0 0 16px; color: var(--mg-soluk); font-size: 15px; line-height: 1.6; }
.mg-uye__siparisler { margin: 0; padding: 0; list-style: none; }
.mg-uye__siparisler > li { margin: 0; }
.mg-uye__siparis-ozet { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto auto; align-items: center; gap: 4px 18px; width: 100%; min-width: 0; font-size: 15px; font-weight: 400; }
.mg-uye__siparis-no { color: var(--mg-lacivert); font-weight: 600; letter-spacing: .3px; white-space: nowrap; }
.mg-uye__siparis-tarih { color: var(--mg-soluk); font-variant-numeric: tabular-nums; white-space: nowrap; }
.mg-uye__siparis-tutar { color: var(--mg-metin); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.mg-uye__durum { display: inline-flex; align-items: center; justify-self: start; min-height: 26px; padding: 2px 12px; border-radius: 50rem; background: #eef0f7; color: var(--mg-lacivert); font-size: 13px; font-weight: 600; line-height: 1.3; white-space: nowrap; }
.mg-uye__durum--odendi, .mg-uye__durum--hazirlaniyor, .mg-uye__durum--kargoda, .mg-uye__durum--teslim { background: #e7f4ec; color: #0f4d2a; }
.mg-uye__durum--inceleme { background: #fff4d9; color: #6b4a00; }
.mg-uye__durum--iptal, .mg-uye__durum--iade { background: #fdecee; color: #8f0f18; }
@media (max-width: 767px) {
    .mg-uye__siparis-ozet { grid-template-columns: minmax(0, 1fr) auto; }
    .mg-uye__siparis-tarih { text-align: right; }
}
@media (max-width: 479px) {
    /* dar ekran: sipariş no ve tarih alt alta (yan yana sığmaz), altında durum + tutar */
    .mg-uye__siparis-no, .mg-uye__siparis-tarih { grid-column: 1 / -1; text-align: left; }
    .mg-uye__siparis-tarih { font-size: 14px; }
    .mg-uye__siparis-ozet { row-gap: 3px; }
    .mg-uye__siparis > summary { padding-top: 12px; padding-bottom: 12px; }
}
@media (max-width: 379px) {
    .mg-uye__siparis-ozet .mg-uye__durum, .mg-uye__siparis-tutar { grid-column: 1 / -1; text-align: left; }
}
.mg-uye__siparis-ic { padding: 4px 20px 18px; border-top: 1px solid var(--mg-cizgi); }
.mg-uye__tablo { width: 100%; margin: 10px 0 0; border-collapse: collapse; font-size: 14.5px; font-variant-numeric: tabular-nums; }
.mg-uye__tablo th, .mg-uye__tablo td { padding: 9px 8px; border-bottom: 1px solid var(--mg-cizgi); color: var(--mg-metin); font-weight: 400; text-align: left; vertical-align: top; }
.mg-uye__tablo th:first-child, .mg-uye__tablo td:first-child { padding-left: 0; }
.mg-uye__tablo th:last-child, .mg-uye__tablo td:last-child { padding-right: 0; }
.mg-uye__tablo thead th { color: var(--mg-soluk); font-size: 12.5px; font-weight: 500; }
.mg-uye__tablo .mg-sag { text-align: right; white-space: nowrap; }
.mg-uye__tablo tfoot th { color: var(--mg-soluk); text-align: right; }
.mg-uye__tablo tfoot tr.mg-uye__indirim th, .mg-uye__tablo tfoot tr.mg-uye__indirim td { color: #17663a; }
.mg-uye__tablo tfoot tr.mg-uye__toplam th, .mg-uye__tablo tfoot tr.mg-uye__toplam td { border-bottom: 0; color: var(--mg-lacivert); font-size: 16px; font-weight: 600; }
.mg-uye__alt { color: var(--mg-soluk); font-size: 13px; white-space: nowrap; }
.mg-uye__bilgi { margin: 14px 0 0; font-size: 14.5px; line-height: 1.55; }
.mg-uye__bilgi div { margin: 0 0 6px; }
.mg-uye__bilgi dt { display: inline; color: var(--mg-soluk); font-weight: 400; }
.mg-uye__bilgi dt::after { content: ": "; }
.mg-uye__bilgi dd { display: inline; margin: 0; color: var(--mg-metin); overflow-wrap: anywhere; }
@media (max-width: 575px) {
    .mg-uye__siparis-ic { padding: 2px 16px 14px; }
    .mg-uye__tablo { font-size: 13.5px; }
    /* dar ekranda birim fiyat sütunu görünmez (adet + tutar kalır); sütun tabloda durur ki alt toplam satırları kaymasın */
    .mg-uye__tablo .mg-uye__birim { width: 0; max-width: 0; padding-left: 0; padding-right: 0; overflow: hidden; font-size: 0; white-space: nowrap; }
    .mg-uye__tablo th, .mg-uye__tablo td { padding: 8px 5px; }
    .mg-uye__tablo tbody td:first-child { overflow-wrap: anywhere; }
}

/* Hesabı sil */
.mg-uye__sil-ic { padding: 6px 20px 20px; border-top: 1px solid var(--mg-cizgi); }
.mg-uye__sil-ic p { margin: 12px 0 0; color: #3b3f52; font-size: 15px; line-height: 1.6; }
.mg-uye__sil-ic form { margin-top: 18px; }
.mg-uye__sil-ic .mg-onay { margin-bottom: 18px; }
.mg-uye__sil-btn { border-color: #c81e2b; background: #fff; color: #b3141f; white-space: normal; text-align: center; padding-top: 8px; padding-bottom: 8px; }
.mg-uye__sil-btn:hover { background: #c81e2b; color: #fff; }
/* Kayıtlı adresi sil: onay adımı (açılır bölüm), adres formunun altında */
.mg-uye__adres-sil { max-width: 720px; margin-top: 22px; }
@media (max-width: 575px) {
    .mg-uye__kart h2 { font-size: 22px; }
    .mg-uye__dugmeler .mg-btn, .mg-uye__sil-btn { width: 100%; }
    .mg-uye__sil-ic { padding: 4px 16px 16px; }
}
@media (prefers-reduced-motion: reduce) {
    .mg-hesap-link { transition: none !important; }
}

/* =====================================================================
   18. Sipariş sayfası: müşteri hesabı ipucu ve "hesabıma kaydet" kutusu
   ===================================================================== */
.mg-siparis p.mg-uye-ipucu {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0 0 28px;
    padding: 12px 16px;
    border: 1px solid var(--mg-cizgi);
    border-radius: 12px;
    background: var(--mg-zemin);
    color: #3b3f52;
    font-size: 14.5px;
    line-height: 1.55;
}
.mg-uye-ipucu svg { flex: 0 0 auto; margin-top: 1px; color: var(--mg-lacivert-2); }
.mg-uye-ipucu span { min-width: 0; overflow-wrap: anywhere; }
.mg-uye-ipucu strong { color: var(--mg-metin); font-weight: 600; }
.mg-siparis .mg-uye-ipucu a { display: inline-block; padding: 6px 0; margin: -6px 0; color: var(--mg-lacivert-2); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.mg-siparis .mg-uye-ipucu a:hover { color: var(--mg-kirmizi); }
.mg-siparis .mg-uye-ipucu a:focus-visible { outline: 3px solid var(--mg-odak); outline-offset: 2px; border-radius: 4px; }
.mg-onay--kaydet { margin: 22px 0 0; }
.mg-siparis .mg-onay--kaydet p.mg-alan__ipucu { margin: 2px 0 0; color: var(--mg-soluk); font-size: 13px; line-height: 1.5; }

/* =====================================================================
   19. Sipariş sayfası: "Ödeme Yöntemi" bölümü + "online ödeme henüz etkin değil" notu (13.11.2026)
       Tek yöntem: kredi / banka kartı (bankanın 3D Secure sayfası). Bölümde form alanı YOKTUR; kart
       bilgisi bu sitede istenmez. Kart markaları resmî logolardır (images/odeme/*.svg; .mg-kart-logo kuralları bölüm 13'te).
   ===================================================================== */
.mg-odeme__yontem {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
    padding: 16px 18px;
    border: 1px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: var(--mg-zemin);
}
.mg-odeme__ikon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px; height: 46px;
    border-radius: 10px;
    background: #fff;
    color: var(--mg-lacivert-2);
}
.mg-odeme__bilgi { flex: 1 1 200px; min-width: 0; }
.mg-siparis p.mg-odeme__ad { margin: 0; color: var(--mg-lacivert); font-size: 16px; font-weight: 600; line-height: 1.35; }
.mg-siparis p.mg-odeme__alt { margin: 3px 0 0; color: var(--mg-soluk); font-size: 13.5px; font-weight: 400; line-height: 1.45; }
.mg-siparis .mg-odeme__markalar { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mg-siparis .mg-odeme__marka {          /* eşit karolar; içinde resmî logo (Visa 20 px, Mastercard / TROY 28 px; bölüm 13: .mg-kart-logo) */
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 88px;
    height: 46px;
    margin: 0;
    padding: 0;
    border: 1px solid #c1c6d6;
    border-radius: 8px;
    background: #fff;
}
.mg-siparis p.mg-odeme__aciklama { margin: 14px 0 0; color: #3b3f52; font-size: 14px; font-weight: 400; line-height: 1.6; }
.mg-sayfa p.mg-odeme__durum {          /* sipariş sayfası (ödeme bölümü) ve isteğe bağlı olarak sepet sayfasının üstü (--ust) */
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 14px 0 0;
    padding: 12px 16px;
    border: 1px solid #c9d2ee;
    border-left: 4px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: #fff;
    color: #3b3f52;
    font-size: 14.5px;
    font-weight: 400;
    line-height: 1.55;
}
.mg-odeme__durum svg { flex: 0 0 auto; margin-top: 1px; color: var(--mg-lacivert-2); }
.mg-odeme__durum span { min-width: 0; }
.mg-odeme__durum strong { color: var(--mg-lacivert); font-weight: 600; }
.mg-sayfa p.mg-odeme__durum--ust { margin: 0 0 24px; }
@media (max-width: 575px) {
    .mg-odeme__yontem { padding: 14px; }
    .mg-siparis .mg-odeme__markalar { flex-basis: 100%; }
}
@media (max-width: 379px) {          /* 320 px: kullanılabilir 250 px; 3×78 + 2×6 = 246 px → üç karo tek satır */
    .mg-siparis .mg-odeme__markalar { gap: 6px; }
    .mg-siparis .mg-odeme__marka { width: 78px; }
}

/* =====================================================================
   20. Mağaza açılışı (13.11.2026): satıcı satırı, zorunlu alan notu, ürün sayfası uyarıları
   ===================================================================== */
/* a) Sipariş özeti: satıcının unvanı ve ülkesi (ödeme akışında satıcı ülkesi görünmeli) */
.mg-siparis p.mg-ozet__satici { margin: 12px 0 0; color: var(--mg-soluk); font-size: 13px; line-height: 1.5; }
/* b) Sipariş formunun başı: "* ile işaretli alanların doldurulması zorunludur." */
.mg-siparis p.mg-zorunlu-not { margin: 0 0 18px; color: var(--mg-soluk); font-size: 13.5px; line-height: 1.5; }
/* c) Ürün sayfası: takviye edici gıdaların zorunlu etiket uyarıları (yalnızca detay görünümü; magaza-urun-blok.php) */
.mg-urun__uyari { margin: 16px 0 0; padding: 12px 14px; border: 1px solid #e3e6ef; border-radius: 10px; background: #fff; }
.mg-urun p.mg-urun__uyari-baslik { margin: 0 0 6px; color: var(--mg-lacivert); font-size: 14px; font-weight: 600; line-height: 1.4; }
.mg-urun .mg-urun__uyari ul { margin: 0; padding-left: 18px; list-style: disc; }
.mg-urun .mg-urun__uyari li { margin: 0; color: #3b3f52; font-size: 13.5px; line-height: 1.55; list-style: disc; }
/* d) Menüde "Online Satış" / "Shop Online" (yalnızca mağaza açıkken basılır; header.php, en/header.php). Üst düzeyde masaüstü menüye
      sığmadığı için (1200–1440 px'te iki satıra iniyor ve "OEM & Private Label"ı da kırıyordu) masaüstünde "Ürünler" açılır menüsünün
      ilk öğesidir; mobil menüde (masaüstü listesinin kopyası) üst düzeyde görünür ve açılır menüdeki kopyası gizlenir. */
.mg-menu-satis { display: none !important; }
.mobile-nav__container .mg-menu-satis { display: block !important; }
.mobile-nav__container .mg-menu-satis-alt { display: none !important; }
/* e) Adım göstergesi, çok dar ekran (≤379 px): EN sipariş sayfasında etkin adımın adı ("Delivery and Confirmation") tek satıra
      sığmadığı için "3" dairesi ekranın dışına taşıyordu (320 px'te kırpılma). Etkin adımın adı gerektiğinde iki satıra iner; daireler ve
      bağlayıcı çizgiler küçülmez. Pasif adımların adları bu genişlikte zaten yalnızca görsel olarak gizlidir (ekran okuyucuda kalır;
      "Sepet" bağlantısının erişilebilir adı bu metindir, bu yüzden display:none KULLANILMAZ). */
@media (max-width: 379px) {
    .mg-adimlar { max-width: 100%; }
    .mg-adimlar li.mg-adim--aktif { white-space: normal; }
    .mg-adimlar__no, .mg-adimlar li + li::before { flex-shrink: 0; }
}

/* =====================================================================
   21. Sipariş sayfası: KVKK aydınlatma metni akordeonu (siparis.php / en/checkout.php; kvkk-content.php,
       $kv_kip = "siparis"; 13.11.2026). Metin Kişisel Verilerin Korunması sayfasıyla AYNI kaynaktan gelir
       (Bootstrap tablosu + h3 başlıklar); burada yalnızca akordeona sığdırılır. Yazılar en az 16 px (bölüm 10).
   ===================================================================== */
/* a) Başlıklar ÖBF / MSS kutularındaki h4 ile aynı görünür */
.kv-metin h3 { margin: 18px 0 6px; color: var(--mg-lacivert); font-size: 17px; font-weight: 600; line-height: 1.4; }
/* b) Veri sorumlusu tablosu: sıkı, dar ekranda taşmaz (uzun KEP / e-posta adresi kırılır); ":" sütunu akordeonda gizlenir */
.kv-metin .table { width: 100%; margin: 14px 0 6px; border-collapse: collapse; background: #fff; color: var(--mg-metin); font-size: 16px; line-height: 1.5; }
.kv-metin .table td { padding: 6px 10px; border: 1px solid var(--mg-cizgi); vertical-align: top; overflow-wrap: anywhere; }
.kv-metin .table td:first-child { width: 34%; color: var(--mg-soluk); font-weight: 500; overflow-wrap: normal; }   /* etiket sözcükleri ("Elektronik") bölünmez; yalnız değer sütunu kırılır */
.kv-metin .table td:nth-child(2) { display: none; }
/* c) "Son güncelleme" satırı (sayfadaki satır içi 30px üst boşluk akordeonda fazla) ve "metnin tamamı" bağlantısı */
.kv-metin p[style] { margin-top: 10px !important; color: var(--mg-soluk); font-size: 16px; }
.kv-metin p.kv-tamami { margin-top: 14px; padding-top: 10px; border-top: 1px solid var(--mg-cizgi); }
@media (max-width: 575px) {
    .kv-metin .table td { padding: 6px 8px; }
    .kv-metin .table td:first-child { width: 38%; }
}
/* d) Madde satırları (13.11.2026): tema (organik.css) ≤575 px'te paragraf içindeki <br>'leri gizler; aydınlatma metninde maddeler
      ("· İşlenen veriler …", "· Toplama yöntemi …", haklar listesi) <br> ile ayrıldığı için akordeonda satır sonları korunur. */
.kv-metin p br { display: inline; }

/* =====================================================================
   22. Sipariş sayfası: "Önemli bilgiler" kutusu (siparis.php / en/checkout.php, 13.11.2026)
       ÖBF / MSS / İade Politikası'nın onaylı cümlelerinin kısaltması; onay kutularının altında, "Ödenecek toplam" satırı ve onay
       düğmesinin hemen üstünde, her zaman görünür (Mesafeli Sözleşmeler Yönetmeliği m.6/2-a). Metin 16px = 12 punto (m.6/1);
       tema gövdesi 300 ağırlık ve 2.125 satır aralığı kullandığı için ağırlık / satır aralığı burada açıkça verilir.
   ===================================================================== */
.mg-onemli {
    margin: 24px 0 20px;
    padding: 18px 20px 16px;
    border: 1px solid #c9d2ee;
    border-left: 4px solid var(--mg-lacivert-2);
    border-radius: 12px;
    background: var(--mg-zemin);
    color: #3b3f52;
}
.mg-siparis .mg-onemli h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 12px;
    color: var(--mg-lacivert);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
}
.mg-onemli h3 svg { flex: 0 0 auto; color: var(--mg-lacivert-2); }
.mg-siparis .mg-onemli ul { margin: 0; padding: 0 0 0 20px; list-style: disc; }
.mg-siparis .mg-onemli li {
    margin: 0 0 10px;
    padding: 0;
    color: #3b3f52;
    font-size: 16px;               /* 12 punto */
    font-weight: 400;
    line-height: 1.6;
    list-style: disc;
    overflow-wrap: anywhere;       /* uzun e-posta / KEP adresi dar ekranda yatay taşma yapmasın */
}
.mg-siparis .mg-onemli li:last-child { margin-bottom: 0; }
.mg-onemli li::marker { color: var(--mg-lacivert-2); }
.mg-siparis .mg-onemli strong { color: var(--mg-metin); font-weight: 600; }
.mg-siparis p.mg-onemli__metinler {
    margin: 14px 0 0;
    padding-top: 12px;
    border-top: 1px solid #dde2f0;
    color: #3b3f52;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
}
.mg-siparis .mg-onemli a { display: inline-block; padding: 4px 0; color: var(--mg-lacivert-2); font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.mg-siparis .mg-onemli a:hover { color: var(--mg-kirmizi-koyu); }
/* Kutunun hemen altındaki toplam satırı kutuyla bir bütün okunsun (ayırıcı çizgi yinelenmesin) */
.mg-onemli + .mg-odenecek { margin-top: 16px; padding-top: 0; border-top: 0; }
@media (max-width: 575px) {
    .mg-onemli { padding: 16px 14px 14px 16px; }
    .mg-siparis .mg-onemli h3 { font-size: 17px; }
    .mg-siparis .mg-onemli ul { padding-left: 18px; }
}

/* =====================================================================
   23. İl → ilçe seçimi (siparis.php / en/checkout.php / Hesabım adres formu; 13.11.2026)
       İlçe <select>'i il seçilene kadar kapalıdır (assets/js/magaza-ilce.js; "Önce il seçiniz"). Kapalı kutu,
       salt okunur alanlarla aynı renklerle soluk görünür (Safari'de metin rengi -webkit-text-fill-color ile verilir).
   ===================================================================== */
.mg-siparis select.mg-girdi:disabled { background-color: var(--mg-zemin); color: var(--mg-soluk); -webkit-text-fill-color: var(--mg-soluk); border-color: #d5d9e5; cursor: not-allowed; opacity: 1; }

/* =====================================================================
   24. Yasal metin sayfaları: en az 16 px = 12 punto (13.11.2026, sahibin onayı; yalnızca CSS, metin değişmedi)
       Ön Bilgilendirme Formu / Mesafeli Satış Sözleşmesi sayfaları (sozlesme-content.php, "sayfa" kipi) ve aynı şablonu
       (.lg-wrap) kullanan İade Politikası, Kullanım Koşulları, Gizlilik Politikası sayfaları (TR + EN). Şablonun kendi satır içi
       <style> bloğu 15 px / not kutusu 13 px veriyor ve belgede bu dosyadan SONRA geldiği için seçiciler bir sınıf daha
       özeldir (.lg-wrap ...). Kişisel Verilerin Korunması sayfası zaten 16 px (tema gövdesi). Bu dosya yalnızca mağaza açıkken
       yüklenir; ÖBF / MSS de yalnızca o zaman uygulanır.
   ===================================================================== */
.lg-wrap .lg-container p,
.lg-wrap .lg-container ul,
.lg-wrap .lg-container ol,
.lg-wrap .lg-container li,
.lg-wrap .lg-satici,
.lg-wrap .lg-form,
.lg-wrap .lg-note,
.lg-wrap .lg-hero p { font-size: 16px; }
.lg-wrap .lg-container { overflow-wrap: break-word; }   /* 16 px'te uzun e-posta / KEP adresi dar ekranda taşmasın */
