/* Üyelik (plan 8.7) ve Hesabım (plan 8.8): giriş / üye ol, dar mesaj kartları, hesap yerleşimi ve sayfaları.
   Vitrin V6: 1.5 px çerçeveli kartlar, Bricolage başlıklar, siyah (--ink) etkin menü hapı (js/store/account-nav.js
   kaydırır), koyu hediye çeki. */
@layer pages {
    /* ================================================================ şifre alanı ve kurallar (üyelik + hesabım) */
    .pw { position: relative; }
    .pw .input { padding-right: 48px; }
    .pw-eye { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--r-sm); color: var(--text-3); --ic: 19px; }
    .pw-eye:hover { color: var(--text); background: var(--surface-2); }
    .pw-rules { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 8px 0 0; padding: 0; list-style: none; font-size: 13px; color: var(--text-3); }
    .pw-rules li { display: inline-flex; align-items: center; gap: 5px; transition: color var(--t-fast); --ic: 15px; }
    .pw-rules li .icon { opacity: .35; transition: opacity var(--t-fast), transform var(--t-med) var(--ease); }
    .pw-rules li[data-ok] { color: var(--success); }
    .pw-rules li[data-ok] .icon { opacity: 1; transform: scale(1.1); }

    /* ================================================================ giriş / üye ol: ortada tek kart, altında
       avantajlar */
    .auth { display: grid; gap: var(--sp-6); max-width: 520px; margin: var(--sp-6) auto 0; }
    .auth-main { display: grid; align-content: start; gap: var(--sp-4); padding: clamp(24px, 4vw, 40px);
        border: 1.5px solid var(--border); border-radius: var(--r-xl); background: var(--surface); }
    .auth-mark { display: grid; place-items: center; width: 52px; height: 52px; border-radius: var(--r-md);
        background: var(--ink); color: var(--ink-text); --ic: 24px; }
    .auth-main h1 { font-size: var(--fs-3xl); line-height: 1; }
    .auth-sub { margin-top: -8px; color: var(--text-2); font-size: 16px; }
    .auth-seg { width: 100%; }
    .auth-seg a { flex: 1; display: block; padding: 9px 16px; border-radius: var(--r-full); text-align: center; font-size: 14px; font-weight: 600; color: var(--text-2); transition: background var(--t-fast), color var(--t-fast); }
    .auth-seg a[aria-selected="true"] { background: var(--surface); color: var(--text); box-shadow: var(--sh-1); }
    .btn-google { gap: 10px; background: var(--surface); border-color: var(--border-2); color: var(--text); }
    .btn-google:hover { background: var(--surface-2); }
    .or { display: flex; align-items: center; gap: 12px; color: var(--text-3); font-size: 13px; }
    .or::before, .or::after { content: ""; flex: 1; height: 1px; background: var(--border); }
    .auth-link { display: inline-flex; align-items: center; gap: 4px; color: var(--acc-text); font-size: 13px;
        font-weight: 600; --ic: 15px; }
    .auth-link:hover { text-decoration: underline; text-underline-offset: .2em; }
    .auth-alt { text-align: center; font-size: 14px; color: var(--text-3); }
    .auth-alt a { color: var(--acc-text); font-weight: 600; }
    .auth-more > summary { display: inline-flex; align-items: center; gap: 6px; color: var(--acc-text); font-size: 14px;
        font-weight: 600; cursor: pointer; list-style: none; --ic: 16px; }
    .auth-more > summary::-webkit-details-marker { display: none; }
    .auth-more[open] > summary { margin-bottom: 12px; }
    .auth-more[open] > summary .icon { transform: rotate(45deg); }
    .auth-more > summary .icon { transition: transform var(--t-med) var(--ease); }
    .auth-resend .btn { justify-self: start; margin-top: 6px; }
    .auth-form .check a { color: var(--acc-text); font-weight: 600; text-decoration: underline;
        text-underline-offset: .18em; }
    .auth-perks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0;
        list-style: none; }
    .auth-perks li { display: grid; align-content: start; justify-items: start; gap: 8px; padding: 14px;
        border-radius: var(--r-lg); background: var(--surface-2); --ic: 18px; }
    .auth-perks li > .icon { width: 36px; height: 36px; padding: 9px; border-radius: 50%; background: var(--surface);
        color: var(--acc-text); }
    .auth-perks b { display: block; font: 700 14px/1.25 var(--font-head); letter-spacing: -.01em; }
    .auth-perks span { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.4; color: var(--text-3); }
    @media (max-width: 559.98px) {
        .auth { margin-top: var(--sp-3); }
        .auth-main { padding: 20px; }
        .auth-perks { grid-template-columns: minmax(0, 1fr); }
        .auth-perks li { grid-template-columns: 36px minmax(0, 1fr); align-items: center; gap: 12px; padding: 12px; }
    }

    /* ================================================================ dar mesaj kartı */
    .mcard { display: grid; justify-items: center; gap: 12px; max-width: 480px; margin: var(--sp-7) auto;
        padding: 44px 32px 32px; border-radius: var(--r-xl); text-align: center; }
    .mcard > form, .mcard > .btn-block { justify-self: stretch; text-align: left; }
    .mcard h1 { font-size: var(--fs-3xl); line-height: 1; }
    .mcard p { color: var(--text-2); font-size: 15px; line-height: 1.55; }
    .mcard-ic { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 4px;
        border-radius: var(--r-xl); background: var(--acc-soft); color: var(--acc-text); --ic: 32px;
        animation: pop .45s var(--ease) both; }
    .mcard-ic.is-ok { background: var(--success-soft); color: var(--success); }
    .mcard-ic.is-bad { background: var(--danger-soft); color: var(--danger); }
    @keyframes pop { from { transform: scale(.6); opacity: 0; } }
    @media (prefers-reduced-motion: reduce) { .mcard-ic { animation: none; } }
    .mcard-acts { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 4px; }
    .mcard-alt { margin-top: 4px; }
    .mcard-note { font-size: 13px !important; color: var(--text-3) !important; }

    /* ================================================================ hesabım yerleşimi */
    /* .acc aynı zamanda akordeon sınıfı (store.css: alt çizgi); burada yerleşim kabı olduğundan çizgi sıfırlanır */
    .acc { display: grid; grid-template-columns: 264px minmax(0, 1fr); gap: var(--sp-8); align-items: start;
        border: 0; }
    .acc-nav { position: sticky; top: calc(var(--hdr-sticky) + 20px); display: grid; gap: 6px; padding: 14px;
        border: 1.5px solid var(--border); border-radius: var(--r-xl); background: var(--surface); }
    .acc-who { display: flex; align-items: center; gap: 12px; padding: 6px 6px 14px; margin-bottom: 4px;
        border-bottom: 1.5px solid var(--border); min-width: 0; }
    .acc-who > div { display: grid; min-width: 0; }
    .acc-who strong { font: 700 16px/1.25 var(--font-head); letter-spacing: -.02em; overflow: hidden;
        text-overflow: ellipsis; white-space: nowrap; }
    .acc-who span:not(.acc-ava) { font-size: 12px; color: var(--text-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .acc-ava { display: grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: 50%;
        background: var(--acc); color: var(--acc-ink); font: 800 16px/1 var(--font-head); letter-spacing: 0; }
    /* menü: etkin bağlantının arkasındaki hap (.acc-ink) JS ile kayar; JS yokken etkin bağlantının kendi zemini
       vardır */
    .acc-nav nav { position: relative; display: grid; gap: 2px; }
    .acc-nav nav a, .acc-nav nav button { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px;
        width: 100%; min-height: 44px; padding-inline: 14px; border-radius: var(--r-md); font-size: 14px;
        font-weight: 550; color: var(--text-2); text-align: left; --ic: 18px;
        transition: background var(--t-fast), color var(--t-fast); }
    .acc-nav nav a:hover, .acc-nav nav button:hover { background: var(--surface-2); color: var(--text); }
    .acc-nav nav a[aria-current="page"] { background: var(--ink); color: var(--ink-text); font-weight: 650; }
    .acc-nav nav.has-ink a[aria-current="page"] { background: transparent; }
    .acc-nav nav .chev { display: none; margin-left: auto; color: var(--text-3); }
    .acc-nav nav form { margin-top: 6px; padding-top: 6px; border-top: 1.5px solid var(--border); }
    .acc-nav nav button:hover { color: var(--danger); background: var(--danger-soft); }
    .acc-ink { position: absolute; left: 0; top: 0; z-index: 0; width: var(--ink-w, 0px); height: var(--ink-h, 0px);
        translate: var(--ink-x, 0px) var(--ink-y, 0px); border-radius: var(--r-md); background: var(--ink); opacity: 0;
        pointer-events: none; }
    .acc-ink[data-on] { opacity: 1; }
    .acc-ink[data-ready] { transition: translate var(--dur-spring-snappy) var(--ease-spring-snappy),
            width var(--dur-spring-snappy) var(--ease-spring-snappy),
            height var(--dur-spring-snappy) var(--ease-spring-snappy), opacity var(--t-fast); }
    .acc-main { display: grid; gap: var(--sp-5); min-width: 0; }
    .acc-back { display: none; align-items: center; gap: 4px; justify-self: start; color: var(--text-2);
        font-size: 14px; font-weight: 550; --ic: 18px; }
    .acc-back.is-always { display: inline-flex; }
    .acc-head h1 { font-size: var(--fs-3xl); line-height: 1.05; }
    .acc-head p { margin-top: 6px; color: var(--text-2); font-size: 15px; }
    .acc-card { display: grid; gap: var(--sp-4); padding: var(--sp-6); border-radius: var(--r-xl); }
    .acc-card h2 { font-size: var(--fs-xl); }
    .acc-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .acc-grid .full { grid-column: 1 / -1; }
    .acc-narrow { max-width: 560px; }
    .acc-actions { display: flex; gap: 10px; }
    .acc-note { font-size: 14px; color: var(--text-2); }
    .acc-help { display: flex; gap: 6px; align-items: flex-start; --ic: 16px; }
    .acc-sec { display: grid; gap: var(--sp-3); }
    .acc-sec .sec-head { margin-bottom: 0; }
    .acc-sec .sec-head h2 { font-size: var(--fs-2xl); }
    @media (max-width: 1023.98px) {
        .acc { grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); }
        /* özet sayfası: menü liste olarak sayfanın altında */
        .acc[data-section=""] .acc-nav { position: static; order: 2; padding: 6px; }
        .acc[data-section=""] .acc-who { display: none; }
        .acc[data-section=""] .acc-nav nav a[aria-current="page"] { display: none; }
        .acc-nav nav a, .acc-nav nav button { min-height: 52px; font-size: 15px; }
        .acc-nav nav .chev { display: block; }
        /* alt sayfalar: menü sayfanın üstünde yatay sekme şeridi (etkin sekme --ink hapı ile işaretli, şerit etkini
           ortalar) */
        .acc:not([data-section=""]) .acc-nav { position: static; margin-inline: calc(var(--gutter) * -1); padding: 0;
            border: 0; border-radius: 0; background: none; }
        .acc:not([data-section=""]) .acc-who { display: none; }
        .acc:not([data-section=""]) .acc-nav nav { display: flex; gap: 6px; overflow-x: auto;
            overscroll-behavior-x: contain; scrollbar-width: none; padding: 4px var(--gutter);
            scroll-padding-inline: var(--gutter); }
        .acc:not([data-section=""]) .acc-nav nav::-webkit-scrollbar { display: none; }
        .acc:not([data-section=""]) .acc-nav nav a { flex: none; width: auto; min-height: 42px; padding-inline: 16px;
            border: 1.5px solid var(--border); border-radius: var(--r-full); font-size: 14px; white-space: nowrap; }
        .acc:not([data-section=""]) .acc-nav nav a[aria-current="page"] { border-color: var(--ink); }
        .acc:not([data-section=""]) .acc-nav nav .chev, .acc:not([data-section=""]) .acc-nav nav form { display: none; }
        .acc:not([data-section=""]) .acc-ink { border-radius: var(--r-full); }
    }
    @media (max-width: 639.98px) { .acc-grid { grid-template-columns: 1fr; } .acc-card { padding: var(--sp-5); } }

    /* ---- özet */
    .acc-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    @media (max-width: 1279.98px) { .acc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    .stat { position: relative; display: grid; align-content: start; justify-items: start; gap: 6px; min-height: 148px;
        padding: 20px; border: 1.5px solid var(--border); border-radius: var(--r-lg); background: var(--surface);
        transition: border-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease),
                translate var(--dur-spring-snappy) var(--ease-spring-snappy); }
    @media (hover: hover) { .stat:hover { border-color: var(--text); box-shadow: var(--sh-2); translate: 0 -2px; } }
    .stat-ic { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 6px;
        border-radius: var(--r-md); background: var(--acc-soft); color: var(--acc-text); --ic: 20px; }
    .stat-k { font-size: 13px; color: var(--text-3); font-weight: 600; }
    .stat b { font: 800 clamp(24px, .8vw + 20px, 30px)/1.05 var(--font-head); letter-spacing: -.035em;
        font-variant-numeric: tabular-nums; }
    .stat-s { font-size: 12px; color: var(--text-3); }
    .acc-nudge { display: flex; align-items: center; gap: 14px; padding: 16px 20px; border: 1.5px solid var(--border);
        border-radius: var(--r-lg); background: color-mix(in oklab, var(--star) 12%, var(--surface));
        color: var(--text); font-size: 14px; --ic: 18px;
        transition: border-color var(--t-fast), background var(--t-fast); }
    .acc-nudge:hover { border-color: var(--text); background: color-mix(in oklab, var(--star) 20%, var(--surface)); }
    .acc-nudge > span:nth-child(2) { flex: 1; }

    /* ---- sipariş kartları: durum çipi küçük noktalı hap */
    .olist { display: grid; gap: 12px; }
    .ocard { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px;
        padding: 16px 18px; border: 1.5px solid var(--border); border-radius: var(--r-lg); background: var(--surface);
        transition: border-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease); }
    @media (hover: hover) { .ocard:hover { border-color: var(--text); box-shadow: var(--sh-1); } }
    .ocard-imgs { display: flex; }
    .ocard-imgs .cline-img { width: 56px; border-radius: var(--r-md); box-shadow: 0 0 0 2px var(--surface); }
    .ocard-imgs .cline-img + .cline-img { margin-left: -18px; }
    .ocard-info { display: grid; gap: 4px; min-width: 0; }
    .ocard-top { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
    .ocard-top strong { font: 700 17px/1.25 var(--font-head); letter-spacing: -.02em; }
    .ocard-top .badge, .od-head p .badge { height: 26px; padding-inline: 10px 12px; border-radius: var(--r-full);
        gap: 6px; }
    .ocard-top .badge::before, .od-head p .badge::before { content: ""; width: 6px; height: 6px; border-radius: 50%;
        background: currentColor; }
    .ocard-meta { font-size: 13px; color: var(--text-3); }
    .ocard-total { display: flex; align-items: center; gap: 8px; color: var(--text-3); --ic: 18px; }
    .ocard-total b { font: 800 19px/1 var(--font-head); letter-spacing: -.02em; color: var(--text);
        font-variant-numeric: tabular-nums; }
    @media (max-width: 639.98px) {
        .ocard { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 14px; }
        .ocard-imgs { grid-column: 1 / -1; order: 3; }
        .ocard-imgs .cline-img { width: 48px; }
    }
    .acc-chips { display: flex; gap: 8px; }
    .acc-chips .chip .n { font-size: 12px; font-weight: 600; opacity: .7; }
    .acc-pager { justify-content: center; }

    /* ---- sipariş detayı */
    .od-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px; }
    .od-head p { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
    .od-no { font-variant-numeric: tabular-nums; }
    .od-acts { display: flex; flex-wrap: wrap; gap: 8px; }
    /* zaman çizelgesi: tamamlanan adımların bağlantı çizgisi soldan sağa (mobilde yukarıdan aşağı) sırayla dolar */
    .od-time { display: flex; margin: 0; padding: 26px 20px; list-style: none; border-radius: var(--r-xl); }
    .od-time li { position: relative; flex: 1; display: grid; justify-items: center; gap: 6px; text-align: center; color: var(--text-3); }
    .od-time li:nth-child(2) { --i: 1; } .od-time li:nth-child(3) { --i: 2; } .od-time li:nth-child(4) { --i: 3; }
    .od-time li:nth-child(5) { --i: 4; } .od-time li:nth-child(6) { --i: 5; } .od-time li:nth-child(7) { --i: 6; }
    .od-time li:not(:last-child)::after { content: ""; position: absolute; top: 21px; left: calc(50% + 28px);
        right: calc(-50% + 28px); height: 3px; border-radius: 3px; background: var(--surface-3);
        transform-origin: left center; }
    .od-time li.is-done:not(:last-child)::after { background: var(--success);
        animation: od-line-x .5s var(--ease) calc(var(--i, 0) * 120ms + 150ms) backwards; }
    .od-dot { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%;
        border: 2px solid var(--border-2); background: var(--surface); --ic: 19px; transition: all var(--t-med); }
    .od-time li.is-done .od-dot { border-color: var(--success); background: var(--success); color: var(--on-status); }
    .od-time li.is-current .od-dot { border-color: var(--acc); background: var(--acc); color: var(--acc-ink);
        box-shadow: 0 0 0 5px var(--acc-ring); }
    .od-t { font: 700 14px/1.25 var(--font-head); letter-spacing: -.01em; }
    .od-time li.is-done .od-t, .od-time li.is-current .od-t { color: var(--text); }
    .od-time time { font-size: 12px; color: var(--text-3); }
    @keyframes od-line-x { from { scale: 0 1; } }
    @keyframes od-line-y { from { scale: 1 0; } }
    @media (prefers-reduced-motion: reduce) { .od-time li.is-done:not(:last-child)::after { animation: none; } }
    @media (max-width: 639.98px) {
        .od-time { flex-direction: column; gap: 16px; padding: 20px; }
        .od-time li { grid-template-columns: 44px 1fr; justify-items: start; align-items: center; column-gap: 14px;
            text-align: left; }
        .od-time li time { grid-column: 2; margin-top: -6px; }
        .od-time li:not(:last-child)::after { top: 48px; bottom: -16px; left: 20.5px; right: auto; width: 3px;
            height: auto; transform-origin: center top; }
        .od-time li.is-done:not(:last-child)::after { animation-name: od-line-y; }
    }
    .od-cargo { display: grid; grid-template-columns: auto 1fr 1fr auto; align-items: center; gap: 18px;
        padding: 18px 20px; border-radius: var(--r-xl); }
    .od-cargo-ic { display: grid; place-items: center; width: 46px; height: 46px; border-radius: var(--r-md);
        background: var(--info-soft); color: var(--info); --ic: 22px; }
    .od-cargo > div { display: grid; gap: 2px; }
    .od-k { font-size: 12px; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; color: var(--text-3); }
    .od-track { display: inline-flex; align-items: center; gap: 4px; }
    .od-track b { font-variant-numeric: tabular-nums; letter-spacing: .03em; }
    @media (max-width: 767.98px) {
        .od-cargo { grid-template-columns: auto 1fr 1fr; gap: 12px 14px; }
        .od-cargo > .btn { grid-column: 1 / -1; }
    }
    .od-lines { padding: var(--sp-6); border-radius: var(--r-xl); }
    .od-lines h2 { font-size: var(--fs-xl); margin-bottom: 6px; }
    .od-lines ul { margin: 0; padding: 0; list-style: none; }
    .od-line { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding-block: 14px; border-bottom: 1px solid var(--border); }
    .od-line:last-child { border-bottom: 0; padding-bottom: 0; }
    .od-line .cline-img { width: 72px; }
    .od-line.is-off .cline-img, .od-line.is-off .cline-name { opacity: .55; }
    .od-line-info { display: grid; gap: 3px; justify-items: start; min-width: 0; }
    .od-line-side { display: grid; justify-items: end; gap: 8px; }
    @media (max-width: 639.98px) { .od-line { grid-template-columns: 56px minmax(0, 1fr); } .od-line .cline-img { width: 56px; } .od-line-side { grid-column: 2; justify-items: start; grid-auto-flow: column; align-items: center; justify-content: space-between; } }
    .od-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-5);
        align-items: start; }
    @media (max-width: 899.98px) { .od-grid { grid-template-columns: minmax(0, 1fr); } }
    .od-addr { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .od-addr p, .od-note p { margin-top: 4px; font-size: 14px; line-height: 1.55; color: var(--text-2); }
    .od-addr strong { color: var(--text); }
    @media (max-width: 479.98px) { .od-addr { grid-template-columns: 1fr; } }
    .od-reqs { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
    .od-reqs li { display: grid; gap: 4px; padding-bottom: 14px; border-bottom: 1px solid var(--border);
        font-size: 14px; }
    .od-reqs li:last-child { border-bottom: 0; padding-bottom: 0; }
    .od-answer { display: flex; gap: 8px; padding: 10px 12px; border-radius: var(--r-md); background: var(--surface-2);
        --ic: 16px; }

    /* talep penceresi */
    .rq-steps { display: flex; gap: 6px; margin: 0 0 16px; padding: 0; list-style: none; counter-reset: rq; }
    .rq-steps li { flex: 1; padding-top: 8px; border-top: 3px solid var(--border); font-size: 12px; font-weight: 600; color: var(--text-3); counter-increment: rq; transition: border-color var(--t-med), color var(--t-med); }
    .rq-steps li::before { content: counter(rq) ". "; }
    .rq-steps li[data-done] { border-color: var(--success); color: var(--text-2); }
    .rq-steps li[data-current] { border-color: var(--acc); color: var(--text); }
    .rq-step { display: grid; gap: 12px; }
    .rq-lines { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
    .rq-lines li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px;
        border: 1.5px solid var(--border); border-radius: var(--r-md); }
    .rq-lines li:has(input:checked) { border-color: var(--acc); background: color-mix(in oklab, var(--acc) 5%, var(--surface)); }
    .rq-lines .select { width: auto; }
    .rq-line { display: inline-flex; align-items: center; gap: 10px; }
    .rq-line .cline-img { width: 44px; border-radius: var(--r-sm); }
    .rq-reasons { display: grid; gap: 8px; }
    .rq-reasons .radio { padding: 12px 14px; border: 1.5px solid var(--border); border-radius: var(--r-md); }
    .rq-reasons .radio:has(input:checked) { border-color: var(--acc);
        background: color-mix(in oklab, var(--acc) 5%, var(--surface)); }
    .rq-sum { padding: 12px 14px; border-radius: var(--r-md); background: var(--surface-2); font-size: 14px; }
    .rq-sum ul { margin: 6px 0 0; padding-left: 18px; }

    /* ---- adreslerim: varsayılan adres vurgu halkası alır (ödeme sayfasındaki seçili kartla aynı dil) */
    .addr-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    @media (max-width: 767.98px) { .addr-list { grid-template-columns: 1fr; } }
    .addr { display: grid; gap: 6px; align-content: start; padding: 20px; border-radius: var(--r-lg); }
    .addr.is-default { border-color: var(--acc); box-shadow: 0 0 0 3px var(--acc-ring); }
    .addr-top { display: flex; align-items: center; gap: 8px; }
    .addr-top strong { font: 700 17px/1.25 var(--font-head); letter-spacing: -.02em; }
    .addr p { font-size: 14px; line-height: 1.5; color: var(--text-2); }
    .addr .who { color: var(--text); font-weight: 600; }
    .addr-inv { display: flex; align-items: center; gap: 6px; font-size: 13px !important; color: var(--text-3) !important; --ic: 15px; }
    .addr-acts { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 6px; padding-top: 10px; border-top: 1px solid var(--border); }
    .addr-del:hover { color: var(--danger); background: var(--danger-soft); }
    .addr-list .acard-new { min-height: 200px; border-radius: var(--r-lg); }

    /* ---- kuponlar (bilet) */
    .tickets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    @media (max-width: 899.98px) { .tickets { grid-template-columns: 1fr; } }
    .ticket { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto;
        border: 1.5px solid var(--border); border-radius: var(--r-lg); background: var(--surface); }
    .ticket-main { display: flex; align-items: center; gap: 14px; padding: 20px; min-width: 0; }
    .ticket-main strong { display: block; font: 700 17px/1.3 var(--font-head); letter-spacing: -.02em; }
    .ticket-ic { display: grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: var(--r-md);
        background: var(--acc-soft); color: var(--acc-text); --ic: 21px; }
    .ticket-sub { display: block; margin-top: 4px; font-size: 12px; color: var(--text-3); }
    .ticket-code { display: grid; justify-items: center; align-content: center; gap: 8px; width: 170px; padding: 14px; border-left: 2px dashed var(--border-2); text-align: center; }
    /* bilet kertikleri: kesik çizginin iki ucunda sayfa zemini renginde yarım daireler */
    .ticket-code::before, .ticket-code::after { content: ""; position: absolute; right: calc(170px - 11px); width: 20px;
        height: 10px; background: var(--bg); border: 1.5px solid var(--border); }
    .ticket-code::before { top: -1.5px; border-top: 0; border-radius: 0 0 10px 10px; }
    .ticket-code::after { bottom: -1.5px; border-bottom: 0; border-radius: 10px 10px 0 0; }
    @media (max-width: 479.98px) {
        .ticket { grid-template-columns: 1fr; }
        .ticket-code { width: auto; grid-auto-flow: column; justify-content: space-between; border-left: 0; border-top: 2px dashed var(--border-2); }
        .ticket-code::before, .ticket-code::after { display: none; }
    }
    .ticket-code b { font: 800 17px/1.1 var(--font-head); letter-spacing: .05em; font-variant-numeric: tabular-nums;
        word-break: break-all; }
    .ticket.is-off { opacity: .55; }
    .ticket.is-off .ticket-ic { background: var(--surface-2); color: var(--text-3); }

    /* ---- hediye çekleri: koyu bant kartı (alt bilgideki gibi color-scheme: dark ile token'lar koyu değerini alır) */
    .gcards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    @media (max-width: 899.98px) { .gcards { grid-template-columns: 1fr; } }
    .gcard { display: grid; gap: 14px; padding: 24px; overflow: hidden; position: relative; isolation: isolate;
        border-radius: var(--r-xl); color-scheme: dark; color: var(--text); border-color: var(--band-dark-line);
        background: radial-gradient(90% 130% at 100% 0%, color-mix(in oklab, var(--acc) 34%, transparent),
            transparent 62%),
                var(--band-dark); }
    .gcard-top { display: flex; align-items: center; justify-content: space-between; }
    .gcard-ic { display: grid; place-items: center; width: 46px; height: 46px; border-radius: var(--r-md);
        background: var(--acc); color: var(--acc-ink); --ic: 22px; }
    .gcard-bal { display: flex; align-items: baseline; gap: 8px; }
    .gcard-bal b { font: 800 clamp(30px, 1vw + 24px, 38px)/1 var(--font-head); letter-spacing: -.04em; }
    .gcard-bal span { font-size: 14px; color: var(--text-3); }
    .gcard .bar { height: 8px; }
    .gcard-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
    .gcard-code { display: inline-flex; align-items: center; gap: 4px; }
    .gcard-code b { font-family: var(--font-head); font-weight: 700; letter-spacing: .06em; }
    .gcard.is-off { opacity: .6; }

    /* ---- yorumlar */
    .rv-list { display: grid; gap: 12px; margin: var(--sp-4) 0 0; padding: 0; list-style: none; }
    .rv-item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: center; gap: 14px;
        padding: 14px 16px; border-radius: var(--r-lg); }
    .rv-item .cline-img { width: 72px; }
    .rv-done { align-items: start; grid-template-columns: 72px minmax(0, 1fr); }
    .rv-info { display: grid; gap: 4px; min-width: 0; }
    .rv-info p { font-size: 14px; line-height: 1.55; color: var(--text-2); }
    .rv-meta { display: inline-flex; align-items: center; gap: 10px; font-size: 13px; color: var(--text-3); }
    .rv-coupon { display: inline-flex; align-items: center; gap: 6px; justify-self: start; padding: 4px 10px; border-radius: var(--r-full); background: var(--success-soft); color: var(--success); font-size: 13px; --ic: 15px; }
    @media (max-width: 639.98px) { .rv-item { grid-template-columns: 56px minmax(0, 1fr); } .rv-item .cline-img { width: 56px; } .rv-item > .btn { grid-column: 2; justify-self: start; } }
    .rv-prod { display: flex; align-items: center; gap: 12px; }
    .rv-prod .cline-img { width: 56px; border-radius: var(--r-sm); }
    .star-pick { display: inline-flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; }
    .star-pick input { position: absolute; opacity: 0; pointer-events: none; }
    .star-pick label { font-size: 40px; line-height: 1; color: var(--border-2); cursor: pointer; padding: 2px; transition: color var(--t-fast), transform var(--t-fast) var(--ease); }
    .star-pick label:hover, .star-pick label:hover ~ label, .star-pick input:checked ~ label { color: var(--star); }
    .star-pick label:active { transform: scale(.9); }
    .star-pick input:focus-visible + label { outline: 2px solid var(--acc-text); outline-offset: 2px; border-radius: 6px; }
    .star-hint { display: block; margin-top: 4px; font-size: 13px; color: var(--text-3); min-height: 18px; }

    /* ---- sorular (konuşma) */
    .qa-thread-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
    .qa-thread { display: grid; gap: 10px; padding: 18px 20px; border-radius: var(--r-lg); }
    .qa-thread-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
    .qa-badges { display: flex; gap: 6px; }
    .bubble { position: relative; display: grid; gap: 4px; max-width: min(560px, 88%); padding: 10px 14px; border-radius: 16px; font-size: 14px; line-height: 1.5; }
    .bubble time { font-size: 11px; color: var(--text-3); }
    .bubble-me { justify-self: end; border-bottom-right-radius: 4px; background: var(--acc-soft); color: var(--text); }
    .bubble-shop { justify-self: start; border-bottom-left-radius: 4px; background: var(--surface-2); }
    .bubble-who { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; color: var(--text-2); --ic: 14px; }

    /* ================================================================ yazdırma (sipariş detayı) */
    @media print {
        /* kâğıtta koyu tema ve dolgulu simge görünmez: açık şema, dolgusuz yeşil simge */
        :root { color-scheme: light !important; }
        .od-time li.is-done .od-dot { background: none; color: var(--success); }
        .announce, .hdr, .ftr, .trust, .mnav, .acc-nav, .acc-back, .no-print, .to-top,
                .wa-float, .toasts { display: none !important; }
        .acc { grid-template-columns: 1fr; }
        .card { box-shadow: none !important; break-inside: avoid; }
        body { background: var(--bg); }
    }

    /* ---- favorilerim */
    .fav-grid { margin-top: var(--sp-2); }

    /* ---- yorum fotoğrafları (değerlendirme penceresi ve "Fotoğraflar") */
    .rv-pick { display: flex; flex-wrap: wrap; gap: 8px; }
    .rv-add { display: grid; place-items: center; align-content: center; gap: 4px; width: 84px; height: 84px; border-radius: var(--r-md); border: 1.5px dashed var(--border-2);
        color: var(--text-2); font-size: 12px; font-weight: 550; text-align: center; cursor: pointer; transition: border-color var(--t-fast), color var(--t-fast); --ic: 22px; }
    .rv-add:hover, .rv-add:focus-within { border-color: var(--acc); color: var(--acc-text); }
    .rv-add[data-loading] { opacity: .6; pointer-events: none; }
    .rv-thumb { position: relative; width: 84px; height: 84px; border-radius: var(--r-md); overflow: hidden;
        background: var(--tile); border: 1.5px solid var(--border); }
    .rv-thumb img { width: 100%; height: 100%; object-fit: cover; }
    .rv-thumb-x { position: absolute; top: 4px; right: 4px; display: grid; place-items: center; width: 26px;
        height: 26px; border-radius: 50%; background: rgb(var(--photo-veil-for-light-text) / .62);
        color: var(--photo-text-light); --ic: 14px; }
    .rv-thumb-x:hover { background: var(--danger); }
    .rv-photo-btn { margin-top: 8px; justify-self: start; --ic: 16px; }

    /* ---- özel taleplerim */
    .cr-new { display: flex; justify-content: flex-end; margin-bottom: var(--sp-3); }
    .cr-list { display: grid; gap: var(--sp-3); list-style: none; margin: 0; padding: 0; }
    .cr-item { display: grid; gap: 8px; padding: var(--sp-5); border-radius: var(--r-lg); }
    .cr-item-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
    .cr-item-head time { margin-left: auto; }
    .cr-msg { white-space: pre-line; color: var(--text-2); font-size: 14px; line-height: 21px; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
    .cr-reply { display: grid; gap: 6px; padding: 12px 14px; border-radius: var(--r-md); background: var(--acc-soft); border: 1px solid var(--acc-line); }
    .cr-reply-k { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--acc-text); --ic: 16px; }
    .cr-reply p { white-space: pre-line; font-size: 14px; line-height: 21px; }
    .cr-price b { font-size: 16px; }
}
