/* Serisan Promosyon · mağaza sayfaları (sepet, ödeme, hesap, sipariş) ve yönetim; page.html ve admin/index.html bağlar — commerce.css’ten ayrıldı (01.10.2026, performans). Değişkenler ve ortak temel commerce.css’te. */
/* ═════════ Mağaza sayfaları (sepet, ödeme, hesap, sipariş) ═════════ */
.shop{min-height:100dvh;display:flex;flex-direction:column}
.shop .foot{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
.s-local{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px var(--gut);background:#fff7e6;border-bottom:1px solid #f6d58b;color:#6b4a00;font-size:13px;font-weight:650;text-align:center}
.s-local::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--warn);flex:none}
.s-wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:clamp(16px,3vw,34px) var(--gut) clamp(40px,6vw,72px);flex:1;min-height:60vh}
.s-wrap>p:only-child{color:var(--muted)}
.s-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:clamp(16px,2.5vw,26px)}
.s-title h1{font-size:clamp(1.7rem,1.1rem + 2.4vw,2.6rem);font-weight:850;overflow-wrap:anywhere}
.s-title p{margin:8px 0 0;color:var(--muted);font-size:15px}
.s-title>.s-actions{flex:none}

/* Adım çubuğu */
.s-stepbar{display:flex;align-items:center;gap:8px;margin:0 0 clamp(16px,2.6vw,26px);padding:6px;border-radius:18px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none}
.s-stepbar::-webkit-scrollbar{display:none}
.s-step{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:0 14px 0 6px;border-radius:13px;color:var(--muted);font-weight:700;font-size:14px;white-space:nowrap}
.s-step i{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--surface-2);font:800 13px var(--font);font-style:normal}
.s-step i svg.lucide{width:16px;height:16px;stroke-width:2.6}
.s-step.done{color:var(--text)}
.s-step.done i{background:color-mix(in oklab,var(--ok) 14%,white);color:var(--ok)}
.s-step.current{background:var(--brand-soft);color:var(--ink)}
.s-step.current i{background:var(--grad);color:#fff}
.s-stepbar>svg.lucide{width:16px;height:16px;color:color-mix(in oklab,var(--muted) 60%,white);flex:none}
a.s-step:hover{color:var(--text)}

/* İki sütun */
.s-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(18px,2.6vw,32px);align-items:start}
.s-layout>*{min-width:0}
.s-summary{position:sticky;top:calc(var(--top-h) + 18px);padding:20px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.s-summary>h2{font-size:18px;font-weight:800;margin-bottom:12px}
.s-summary>.s-btn{width:100%;margin-top:12px}
.s-summary>.s-btn.primary{min-height:56px;font-size:16px}
.s-summary .s-section{padding:16px 0;border-bottom:1px solid var(--line)}
.s-summary .s-section:last-of-type{border-bottom:0}
.s-summary h3{font-size:14px;font-weight:800;margin-bottom:6px}
.s-sum-items{display:grid;gap:10px;margin:0 0 14px;padding:0 0 14px;border-bottom:1px solid var(--line);list-style:none}
.s-sum-items li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13.5px}
.s-sum-items img{width:48px;height:48px;border-radius:12px;background:#fff;border:1px solid var(--line);object-fit:contain;padding:3px}
.s-sum-items b{display:block;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.s-sum-items small{font-size:12.5px}
.s-sum-items strong{font-size:13.5px;white-space:nowrap}
.s-trust{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.s-trust li{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);font-weight:550;line-height:1.45}
.s-trust svg.lucide{width:17px;height:17px;flex:none;color:var(--ok);margin-top:1px}

/* Tutarlar */
.s-totals{margin:0}
.s-totals>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0;font-size:14.5px;color:var(--muted);font-weight:550}
.s-totals dt{min-width:0}
.s-totals dd{margin:0;color:var(--text);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.s-totals .positive,.s-totals .positive dd{color:var(--ok)}
.s-totals .total{margin-top:10px;padding-top:14px;border-top:1px dashed color-mix(in oklab,var(--text) 18%,transparent);color:var(--text);font-weight:800;font-size:16px;align-items:center}
.s-totals .total dd{font-size:clamp(1.4rem,1rem + 1vw,1.75rem);font-weight:850;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Sepet kalemi */
.s-cart{display:grid;gap:14px}
.s-cart-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;padding:16px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.s-cart-item>a{align-self:start}
.s-product-img{width:112px;height:112px;border-radius:16px;background:#fff;border:1px solid var(--line);object-fit:contain;padding:6px;transition:transform .5s var(--ease)}
@media (hover:hover){.s-cart-item>a:hover .s-product-img{transform:scale(1.04)}}
.s-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.s-item-head h3{font-size:16.5px;font-weight:750;line-height:1.3;letter-spacing:-.01em}
.s-item-head h3 a:hover{color:var(--ink)}
.s-item-head small{font-size:13px}
.s-item-config{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 12px}
.s-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:10px;background:var(--surface-2);color:var(--text);font-size:13px;font-weight:650}
.s-chip svg.lucide{width:14px;height:14px;color:var(--ink)}
.s-item-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.s-item-bar strong{font-size:20px;font-weight:850;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.s-item-bar small{display:block;text-align:right;font-size:12px;font-weight:600}
.s-step-qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);overflow:hidden}
.s-step-qty button{width:42px;height:44px;border:0;background:transparent;font-size:20px;font-weight:600;cursor:pointer;transition:background .2s}
.s-step-qty button:hover{background:color-mix(in oklab,var(--text) 6%,transparent)}
.shop .s-step-qty input{width:78px;min-height:44px!important;height:44px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font:750 16px var(--font)!important;-moz-appearance:textfield}
.s-step-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
/* Adet kuralı (02.10.2026): en az adette "−" pasif, kutunun altında kısa not ("100 adet ve katları") */
.s-step-qty button:disabled{color:var(--muted);opacity:.4;cursor:not-allowed;background:transparent}
.s-qty-w{display:grid;gap:4px;justify-items:start}
.s-item-bar .s-qty-w small.s-qty-note{text-align:left;font-size:11.5px;font-weight:650;color:var(--muted);padding-left:4px}
.s-art{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:14px}
.s-art .seg span{font-size:13.5px}
.s-art-files{display:grid;gap:8px}
.s-art-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:-4px}
.s-art-h>span:first-child{font-size:13px;font-weight:700;color:var(--muted)}
.s-art-st{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:750;white-space:nowrap}
.s-art-st svg.lucide{width:14px;height:14px;stroke-width:2.4}
.s-art-st.ok{background:color-mix(in oklab,var(--ok) 12%,white);color:#0a7a45}
.s-art-st.wait{background:#fff3d9;color:#8a5a00}
.s-art-tip{display:flex;gap:10px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:13px;font-weight:550;line-height:1.45}
.s-art-tip b{color:var(--text);font-weight:750}
.s-art-tip svg.lucide{width:17px;height:17px;flex:none;margin-top:1px;color:var(--ink)}
.s-art-wait .s-art-tip{background:#fff7e6;color:#6b4a00}
.s-art-wait .s-art-tip b{color:#5a3e00}
.s-art-wait .s-art-tip svg.lucide{color:var(--warn)}
.s-art label small{font-weight:550;font-size:12px}

/* Dosya yükleme alanı */
.s-drop{position:relative;display:flex!important;align-items:center;gap:14px!important;padding:14px 16px;border-radius:16px;border:1.5px dashed color-mix(in oklab,var(--brand) 35%,var(--line));background:color-mix(in oklab,var(--brand) 3%,white);color:var(--text)!important;cursor:pointer;transition:border-color .2s,background .2s}
.s-drop:hover,.s-drop:focus-within{border-color:var(--brand);background:color-mix(in oklab,var(--brand) 6%,white)}
.s-drop>svg.lucide{width:40px;height:40px;padding:9px;border-radius:12px;background:var(--grad);color:#fff;flex:none}
.s-drop span{display:grid;gap:2px;min-width:0}
.s-drop b{font-size:14.5px;font-weight:750}
.s-drop small{font-size:12.5px;font-weight:550}
.s-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.s-drop.off{border-style:solid;border-color:var(--line);background:var(--surface-2);cursor:default}
.s-drop.off>svg.lucide{background:color-mix(in oklab,var(--muted) 40%,white)}
.s-drop.off .s-btn{margin-left:auto;flex:none}
.s-upload{display:grid;gap:8px}
.s-file{display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:56px;padding:8px 12px 8px 8px;border-radius:14px;border:1px solid var(--line);background:var(--surface);text-align:left;color:var(--text);transition:border-color .2s,background .2s}
.s-file>svg.lucide:first-child{width:40px;height:40px;padding:10px;border-radius:11px;background:var(--surface-2);color:var(--ink);flex:none}
.s-file>svg.lucide:last-child{width:18px;height:18px;color:var(--muted)}
.s-file span{flex:1;min-width:0;font-size:14px;font-weight:650;overflow-wrap:anywhere;line-height:1.3}
.s-file small{display:block;font-size:12px;font-weight:500}
.s-file+.s-file{margin-top:8px}
@media (hover:hover){.s-file:hover{border-color:color-mix(in oklab,var(--brand) 30%,var(--line));background:color-mix(in oklab,var(--brand) 3%,white)}}

/* Boş durum */
.s-empty{display:grid;justify-items:center;gap:6px;padding:clamp(40px,8vw,80px) 20px;text-align:center;border-radius:var(--r);border:1px dashed var(--line);background:linear-gradient(180deg,color-mix(in oklab,var(--brand) 4%,white),#fff 70%)}
.s-empty>svg.lucide{width:64px;height:64px;padding:16px;margin-bottom:8px;border-radius:20px;background:var(--grad);color:#fff;box-shadow:0 14px 30px -14px color-mix(in oklab,var(--brand) 80%,transparent)}
.s-empty h2,.s-empty h3{font-size:clamp(1.2rem,1rem + .8vw,1.5rem);font-weight:800}
.s-empty p{color:var(--muted);margin:0 0 8px}
.s-empty .s-btn{margin-top:6px}

/* Giriş / kayıt */
.s-auth{width:min(520px,100%);margin:clamp(4px,2vw,20px) auto 0;padding:clamp(20px,3vw,30px);border-radius:26px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg)}
.s-auth-h{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.s-auth-h>svg.lucide{width:48px;height:48px;padding:12px;border-radius:15px;background:var(--grad);color:#fff;flex:none}
.s-auth-h h2{font-size:21px;font-weight:800}
.s-auth-h p{margin:3px 0 0;color:var(--muted);font-size:14px}
.s-auth .seg{margin-bottom:18px}
.s-auth form>.s-fields{grid-template-columns:1fr}
.s-auth .s-fields .s-fields{grid-template-columns:1fr;gap:14px}
.s-auth .s-btn[type=submit]{width:100%;min-height:54px;margin-top:20px;font-size:16px}
.s-auth-foot,.shop .s-auth-foot{margin:16px 0 0;text-align:center;color:var(--muted);font-size:13.5px;line-height:1.5}
.s-tabs{display:flex;gap:4px;padding:4px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);margin-bottom:18px}
.s-tabs button{flex:1;min-height:44px;border:0;border-radius:12px;background:transparent;font-weight:700;font-size:14px;color:var(--muted);transition:background .25s,color .2s,box-shadow .25s}
.s-tabs button.active{background:#fff;color:var(--text);box-shadow:0 1px 2px rgba(22,3,15,.08),0 6px 14px -8px rgba(22,3,15,.3)}

/* Ödeme formu bölümleri */
.s-card{padding:clamp(16px,2.4vw,24px);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.s-card+.s-card{margin-top:14px}
.s-card-h{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.s-card-h>i{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:11px;background:var(--brand-soft);color:var(--ink);font:850 14px var(--font);font-style:normal}
.s-card-h h2{font-size:18px;font-weight:800}
.s-card-h p{margin:2px 0 0;font-size:13.5px;color:var(--muted)}
.s-card-h>.s-badge{margin-left:auto}
.s-section{padding:18px 0;border-bottom:1px solid var(--line)}
.s-section:first-child{padding-top:0}
.s-section:last-child{border-bottom:0;padding-bottom:0}
.s-section>h2{font-size:18px;font-weight:800;margin-bottom:14px}
.s-section>h3{font-size:15px;font-weight:800;margin-bottom:10px}
.s-radio{position:relative;display:flex!important;align-items:center;gap:14px!important;min-height:72px;padding:14px 16px;border-radius:16px;border:1.5px solid var(--line);background:var(--surface);color:var(--text)!important;font-size:15px!important;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .25s}
.s-radio+.s-radio{margin-top:10px}
.s-radio input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--brand)}
.s-radio>svg.lucide{width:40px;height:40px;padding:10px;border-radius:12px;background:var(--surface-2);color:var(--muted);flex:none;transition:background .25s,color .25s}
.s-radio span{display:grid;gap:2px;font-weight:750}
.s-radio small{font-size:13px;font-weight:550}
.s-radio:has(input:checked){border-color:var(--brand);background:color-mix(in oklab,var(--brand) 4%,white);box-shadow:0 10px 24px -16px color-mix(in oklab,var(--brand) 90%,transparent)}
.s-radio:has(input:checked)>svg.lucide{background:var(--grad);color:#fff}
.s-radio:has(input:disabled){opacity:.55;cursor:not-allowed}
.s-bank{display:grid;gap:4px;padding:14px 16px;border-radius:16px;background:var(--surface-2);margin-bottom:12px}
.s-bank b{font-size:17px;letter-spacing:.02em;overflow-wrap:anywhere}

/* Hesap */
.s-account-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(16px,2.4vw,28px);align-items:start}
.s-account-grid>section{min-width:0}
.s-hello{display:flex;align-items:center;gap:14px}
.s-avatar{display:grid;place-items:center;width:56px;height:56px;flex:none;border-radius:18px;background:var(--grad);color:#fff;font:850 20px var(--font);box-shadow:0 12px 26px -12px color-mix(in oklab,var(--brand) 85%,transparent)}
.s-orders{display:grid;gap:10px}
.s-order-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:14px;align-items:center;padding:16px 18px;border-radius:18px;background:var(--surface);border:1px solid var(--line);box-shadow:0 1px 2px rgba(22,3,15,.04);transition:transform .4s var(--spring),box-shadow .3s,border-color .3s}
.s-order-row strong{display:block;font-weight:800}
.s-order-row small{display:block;margin-top:4px;font-size:13px}
.s-order-row>div:last-child{display:flex;align-items:center;gap:10px}
.s-order-row>div:last-child svg.lucide{color:var(--muted)}
@media (hover:hover){.s-order-row:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:color-mix(in oklab,var(--brand) 25%,var(--line))}}
.s-addr{display:grid;gap:8px}
.s-addr p{margin:0;padding:12px 14px;border-radius:14px;background:var(--surface-2);font-size:14px;line-height:1.5}

/* Sipariş ilerleme */
.s-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0 0 clamp(16px,2.5vw,26px);padding:18px clamp(12px,2vw,22px);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);counter-reset:st}
.s-progress>div{position:relative;display:grid;justify-items:center;gap:8px;text-align:center;font-size:13px;font-weight:700;color:var(--muted);min-width:0}
.s-progress>div::before{counter-increment:st;content:counter(st);position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--surface-2);font:800 13px var(--font);color:var(--muted);box-shadow:0 0 0 5px #fff}
.s-progress>div::after{content:'';position:absolute;top:16px;left:calc(-50% + 17px);right:calc(50% + 17px);height:3px;border-radius:3px;background:var(--surface-2)}
.s-progress>div:first-child::after{display:none}
.s-progress .done{color:var(--text)}
.s-progress .done::before{content:'✓';background:var(--ok);color:#fff}
.s-progress .done::after,.s-progress .current::after{background:var(--ok)}
.s-progress .current{color:var(--ink)}
.s-progress .current::before{background:var(--grad);color:#fff;box-shadow:0 0 0 5px #fff,0 0 0 9px var(--brand-soft)}
.s-progress span{overflow-wrap:anywhere;line-height:1.25}
.s-progress.off{opacity:.55;filter:grayscale(1)}

/* Prova kartı */
.s-proof{padding:16px;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
.s-proof+.s-proof{margin-top:10px}
.s-proof.preview{border:1.5px solid color-mix(in oklab,var(--brand) 40%,var(--line));background:color-mix(in oklab,var(--brand) 3%,white);box-shadow:0 12px 28px -18px color-mix(in oklab,var(--brand) 80%,transparent)}
.s-proof-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.s-proof-top strong{font-weight:800}
.s-proof p{margin:8px 0;font-size:14px}
.s-proof .s-actions{margin-top:14px}
.s-proof .s-actions .s-btn{flex:1 1 180px}

/* Zaman çizelgesi */
.s-timeline{margin:0;padding:0;list-style:none}
.s-timeline li{position:relative;padding:0 0 18px 26px;font-size:14px;font-weight:600;overflow-wrap:anywhere}
.s-timeline li::before{content:'';position:absolute;left:4px;top:5px;width:11px;height:11px;border-radius:50%;background:#fff;border:2.5px solid var(--brand)}
.s-timeline li::after{content:'';position:absolute;left:9px;top:20px;bottom:0;width:2px;border-radius:2px;background:var(--surface-2)}
.s-timeline li:last-child{padding-bottom:0}
.s-timeline li:last-child::after{display:none}
.s-timeline li:not(:first-child)::before{border-color:color-mix(in oklab,var(--muted) 45%,white)}
.s-timeline small{display:block;margin-top:3px;font-size:12.5px;font-weight:500}

/* Tablo */
.s-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.s-table{width:100%;border-collapse:collapse;font-size:14px}
.s-table th{padding:12px 14px;border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--surface-2) 55%,white);color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;text-align:left;white-space:nowrap}
.s-table td{padding:14px;border-bottom:1px solid var(--line);vertical-align:middle}
.s-table tbody tr:last-child td{border-bottom:0}
.s-table td small{display:block;margin-top:2px;font-size:12.5px}
.s-table td .s-actions{flex-wrap:nowrap;gap:12px}
.s-mini-image{width:48px;height:48px;flex:none;border-radius:12px;background:#fff;border:1px solid var(--line);object-fit:contain;padding:3px}
@media (hover:hover){.s-table tbody tr{transition:background .15s}.s-table tbody tr:hover{background:color-mix(in oklab,var(--surface-2) 40%,white)}}

/* Kalem listesi (sipariş sayfası) */
.s-lines{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.s-lines li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px 10px 10px;border-radius:16px;background:var(--surface-2)}
.s-lines img{width:56px;height:56px;border-radius:12px;background:#fff;object-fit:contain;padding:4px}
.s-lines b{display:block;font-weight:750;font-size:14.5px;line-height:1.3}
.s-lines small{display:block;font-size:12.5px;margin-top:2px}
.s-lines strong{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.s-lines strong small{font-weight:600}

/* Duyarlı düzen */
@media (max-width:1060px){
  .s-layout{grid-template-columns:minmax(0,1fr) 330px}
  .s-account-grid{grid-template-columns:1fr}
}
@media (max-width:860px){
  .s-layout{grid-template-columns:minmax(0,1fr)}
  .s-summary{position:static}
}
@media (max-width:640px){
  .s-title{flex-direction:column;align-items:stretch;gap:12px}
  .s-title>.s-actions{justify-content:flex-start}
  .s-fields{grid-template-columns:1fr}
  .s-fields>.full{grid-column:auto}
  .s-cart-item{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:12px}
  .s-product-img{width:76px;height:76px;border-radius:13px}
  .s-item-head h3{font-size:15px}
  .s-art{margin-left:-88px}
  .s-order-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px}
  .s-order-row>div:nth-child(2){grid-column:1;grid-row:2}
  .s-order-row>div:last-child{grid-column:2;grid-row:1/3}
  .s-progress{padding:14px 8px}
  .s-progress>div{font-size:11px;gap:6px}
  .s-progress>div::before{width:28px;height:28px;font-size:12px}
  .s-progress>div::after{top:13px;left:calc(-50% + 14px);right:calc(50% + 14px)}
  .s-proof-top{flex-direction:column}
  .s-step{padding:0 10px 0 5px;font-size:13px}
  .s-step:not(.current) b{display:none}
  .s-lines li{grid-template-columns:48px minmax(0,1fr);}
  .s-lines img{width:48px;height:48px}
  .s-lines strong{grid-column:2;text-align:left}
}
.s-group{display:grid;gap:7px;min-width:0}
.s-group>span{font-size:13px;font-weight:700;color:var(--muted)}
.s-card-h>i svg.lucide{width:18px;height:18px;stroke-width:2.1}
.s-auth-foot .s-btn{min-height:auto;padding:4px 2px;border:0;background:none;box-shadow:none;color:var(--ink);font-size:13.5px;font-weight:750}
.s-auth-foot .s-btn:hover{transform:none;text-decoration:underline}

/* ── Giriş, misafir ve doğrulama kodu ── */
.s-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0;border:0;background:none;color:var(--ink);font:750 14px var(--font);cursor:pointer}
.s-link svg.lucide{width:16px;height:16px}
.s-link:hover{text-decoration:underline}
.s-link:disabled{color:var(--muted);cursor:default;text-decoration:none}
.s-auth-links{display:flex;justify-content:flex-end;margin-top:-6px}
.s-or{display:flex;align-items:center;gap:12px;margin:18px 0 12px;color:var(--muted);font-size:13px;font-weight:650}
.s-or::before,.s-or::after{content:'';flex:1;height:1px;background:var(--line)}
.s-wide{width:100%}
.s-auth .s-tabs{margin-bottom:18px}
.s-chan span{gap:8px}
.s-chan span svg.lucide{width:18px;height:18px}
.s-chan span small{font-size:11px;font-weight:600;color:var(--muted)}
.s-chan label:has(input[value=whatsapp]:checked) span{color:#0f7a3a}
.s-verify .s-auth-h>svg.lucide{animation:s-pop .6s var(--spring)}
@keyframes s-pop{from{transform:scale(.4);opacity:0}}
.s-verify form{display:grid;gap:12px}
.s-verify form .s-btn[type=submit]{margin-top:6px}
.s-otp-l{gap:8px!important}
.shop .s-otp{min-height:68px!important;text-align:center;font:800 32px/1 ui-monospace,SFMono-Regular,Consolas,monospace!important;letter-spacing:.5em;padding:10px 0 10px .5em!important;border-radius:18px!important;background:#fff!important;border:2px solid var(--line)!important}
.shop .s-otp:focus{border-color:var(--brand)!important;box-shadow:0 0 0 5px var(--brand-soft)!important}
.shop .s-otp::placeholder{color:color-mix(in oklab,var(--muted) 35%,white);letter-spacing:.5em}
.s-verify-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.s-devcode{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:12px 14px;border-radius:14px;background:#fff7e6;border:1px dashed #e8b64c;color:#6b4a00;font-size:13px;font-weight:650}
.s-devcode b{font:800 20px ui-monospace,Consolas,monospace;letter-spacing:.2em;color:var(--text)}
.s-devcode .s-btn{margin-left:auto}
.s-upgrade{border:1.5px solid color-mix(in oklab,var(--brand) 30%,var(--line));background:linear-gradient(180deg,color-mix(in oklab,var(--brand) 5%,white),#fff 70%)}
.s-upgrade+.s-card{margin-top:14px}
.s-devcode span{flex:1;min-width:140px}
@media (max-width:420px){.s-tabs button{font-size:13px;padding:0 6px;white-space:nowrap}}

/* Google ile devam et */
.s-google{width:100%;min-height:52px;gap:12px;background:#fff;color:#1f1f1f;border-color:#dadce0;font-weight:650;box-shadow:0 1px 2px rgba(60,64,67,.12)}
.s-google .s-g{width:20px;height:20px;flex:none}
@media (hover:hover){.s-google:hover{background:#f8f9fa;border-color:#c6c9ce;box-shadow:0 1px 3px rgba(60,64,67,.2)}}
.s-google:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.s-google[aria-busy=true]{opacity:.7;pointer-events:none}
.s-g-note{margin:8px 0 0;text-align:center;color:var(--muted);font-size:12.5px}
.s-auth .s-google+.s-g-note+.s-or{margin-top:14px}
.s-g-chip{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.s-g-chip .s-g{width:14px;height:14px}

/* Yasal bağlantılar */
.s-legal,.shop .s-legal{margin:24px auto 0;max-width:42ch;color:var(--muted);font-size:12.5px;line-height:1.65;text-align:center;text-wrap:balance}
.s-legal+.s-or{margin-top:22px}
.s-legal a,.s-check a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}

/* Sepet: mini sepetten gelen bağlantı (#line-…) ve trase bağlantısı */
.s-cart-item{scroll-margin-top:calc(var(--top-h) + 24px)}
.s-cart-item.s-hl{animation:s-hl 2.4s var(--ease)}
@keyframes s-hl{0%,30%{box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 55%,white),var(--shadow)}}
.s-trase{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:650;color:var(--muted)}
.s-trase .s-tr{min-height:36px;font-size:13px}
@media (prefers-reduced-motion:reduce){.s-cart-item.s-hl{animation:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 55%,white),var(--shadow)}}
#shop-main{min-height:calc(100svh - var(--top-h,64px))} /* footer yüklemede aşağı itilmesin (CLS) */

/* Kampanya setleri (02.10.2026): özet satırındaki set adları, sepette "uygulandı" bandı ve eksik ürün ipucu */
.s-totals dt small{display:block;margin-top:1px;font-size:12px;font-weight:600;line-height:1.35;white-space:normal;color:color-mix(in oklab,var(--ok) 70%,var(--muted))}
.s-camp,.s-hint{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;padding:11px 13px;border-radius:14px;font-size:13.5px;font-weight:600;line-height:1.45}
.s-camp{background:color-mix(in oklab,var(--ok) 8%,white);border:1px solid color-mix(in oklab,var(--ok) 26%,white);color:#0d5a37}
.s-hint{background:color-mix(in oklab,var(--brand) 5%,white);border:1px dashed color-mix(in oklab,var(--brand) 32%,white);color:color-mix(in oklab,var(--ink) 70%,var(--text))}
.shop .s-camp svg.lucide,.shop .s-hint svg.lucide{width:19px;height:19px;flex:none;margin-top:1px}
.s-camp svg.lucide{color:var(--ok)}.s-hint svg.lucide{color:var(--brand)}
.s-camp b,.s-hint b{font-weight:800}
.s-camp a,.s-hint a{color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.s-hints{display:grid}

/* ── 02.10.2026: şifre göster/gizle, kurumsal kutucuğu, "Bizi nereden tanıyorsunuz?" anketi ── */
.s-pw{position:relative;display:block}
.s-pw input{width:100%;padding-right:52px!important}
.s-eye{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:12px;background:none;color:var(--muted);cursor:pointer}
.s-eye:hover{background:var(--surface-2);color:var(--text)}
.s-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.s-eye[aria-pressed=true]{color:var(--ink)}
.s-hint{font-weight:600;color:var(--muted);font-size:12px}
.s-b2b{grid-column:1/-1}
.s-b2b span{display:grid;gap:2px}
.s-b2b small{font-weight:550;color:var(--muted);font-size:12.5px}
.s-switch{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-size:13.5px;vertical-align:middle}
.s-switch svg.lucide{width:16px;height:16px}
.s-src-h{display:flex;gap:14px;align-items:flex-start}
.s-src-i{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:14px;background:var(--grad);color:#fff}
.s-src-i svg.lucide{width:22px;height:22px}
.s-src-h p{margin-top:4px;font-size:14px}
.s-src-l{display:grid;gap:8px;margin-top:6px}
.s-dialog .s-src-o{display:flex!important;align-items:center;gap:12px;min-height:56px;padding:10px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text)!important;cursor:pointer;font-size:15px;transition:border-color .2s,background .2s,transform .3s var(--spring)}
.s-src-o input{position:absolute;opacity:0;pointer-events:none}
.s-src-o::before{content:'';flex:none;width:20px;height:20px;border-radius:50%;border:2px solid color-mix(in oklab,var(--text) 25%,transparent);transition:border .2s,background .2s}
.s-src-o span{display:grid;gap:1px}
.s-src-o b{font-weight:750}
.s-src-o small{font-size:12.5px;color:var(--muted);font-weight:550}
.s-src-o:has(input:checked){border-color:var(--brand);background:color-mix(in oklab,var(--brand) 5%,white)}
.s-src-o:has(input:checked)::before{border:6px solid var(--brand)}
.s-src-o:has(input:focus-visible){outline:3px solid color-mix(in oklab,var(--brand) 70%,white);outline-offset:2px}
.s-src-o:active{transform:scale(.98)}
@media (hover:hover){.s-src-o:hover{border-color:color-mix(in oklab,var(--brand) 40%,var(--line))}}
.s-src .s-actions{margin-top:2px}

/* Yönetim → Müşteriler anket özeti (admin/index.html bu dosyayı da yükler) */
/* Müşteriler: "Bizi nereden tanıyorsunuz?" özeti (02.10.2026) */
.o-src{margin-bottom:18px}
.o-src-l{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.o-src-l li{display:grid;grid-template-columns:minmax(150px,260px) 1fr auto auto;align-items:center;gap:12px;font-size:14px}
.o-src-l li span{font-weight:650}
.o-src-l li i{display:block;height:10px;border-radius:99px;background:var(--surface-2,#f1ebee);position:relative;overflow:hidden}
.o-src-l li i::after{content:'';position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,#FF2F8E,#A8084D)}
.o-src-l li b{font-variant-numeric:tabular-nums}
.o-src-l li small{color:var(--muted,#6d5864);min-width:110px}
@media (max-width:700px){.o-src-l li{grid-template-columns:1fr auto;}.o-src-l li i{grid-column:1/-1;order:3}.o-src-l li small{grid-column:1/-1}}
/* Matbu satırı (02.10.2026): adet paketi seçimi */
.s-pk select{min-height:44px;padding:0 38px 0 14px;border:1px solid var(--line);border-radius:14px;background-color:var(--surface-2);font:inherit;font-weight:700;font-size:15px;color:var(--text);cursor:pointer}
/* İsme özel baskı (sepet satırı, 02.10.2026): anahtar, isim listesi, sayaç, dosya */
.s-nm{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.s-nm-t{display:flex!important;align-items:flex-start;gap:10px!important;cursor:pointer;font-weight:500}
.s-nm-t input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--brand)}
.s-nm-t span{display:grid;gap:2px}
.s-nm-t b{font-size:15px;font-weight:800;color:var(--text)}
.s-nm-t small{font-size:12.5px;color:var(--muted);font-weight:550}
.s-nm-l{display:grid!important;gap:6px}
.s-nm-l>span{font-size:14px;font-weight:750}
.s-nm-l>span small{font-weight:550;color:var(--muted)}
.shop .s-nm textarea{min-height:128px;font:500 14px/1.55 var(--font);font-variant-numeric:tabular-nums}
.s-nm-st{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700}
.s-nm-st svg{width:16px;height:16px;flex:none}
.s-nm-st.ok{color:var(--ok)}
.s-nm-st.wait{color:#8a6100}
.s-nm-st.bad{color:var(--bad)}
.s-nm-lock{display:flex;gap:8px;margin:0;font-size:13px;color:var(--muted);line-height:1.45}
.s-nm-lock svg{width:16px;height:16px;flex:none;margin-top:2px}
.s-nm-lock a{color:var(--ink);font-weight:700}
.s-drop.compact{padding:10px 14px}
.s-nm-copy{justify-self:start}
.s-chip-soft{background:transparent;border:1px dashed var(--line);color:var(--muted)}

/* Baskı önizleme özeti (04.10.2026): sepet satırında küçük görsel + yerleşim */
.s-oz{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:8px 12px 8px 8px;border-radius:14px;border:1px solid color-mix(in oklab,var(--brand) 22%,var(--line));background:color-mix(in oklab,var(--brand) 4%,var(--surface))}
.s-oz img,.s-oz-i{width:56px;height:56px;border-radius:10px;border:1px solid var(--line);background:#fff;object-fit:cover;flex:none}
.s-oz-i{display:grid;place-items:center;color:var(--brand)}
.s-oz-i svg{width:22px;height:22px}
.s-oz-t{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.s-oz-t b{font-size:13.5px;font-weight:750}
.s-oz-t small{font-size:13px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1.35}
.s-oz-e{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:13px;font-weight:650;color:var(--ink);white-space:nowrap;flex:none}
.s-oz-e svg{width:14px;height:14px}
@media (max-width:520px){.s-oz-e{padding:0 9px;font-size:0;gap:0}.s-oz-e svg{width:16px;height:16px}}
/* 04.10.2026: tasarım seçenekleri (logo / marka adı / slogan / telefon / web) — yön sayısı kadar seçim */
.s-opts{display:grid;gap:8px}
.s-opts-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.s-opts-h>span{font-size:13px;font-weight:700;color:var(--muted)}
.s-opts-h>small{font-size:12.5px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.s-opts-h>small.full{color:#0a7a45}
.s-opt{display:grid;gap:10px;padding:12px 14px;border:1.5px solid var(--line);border-radius:14px;background:#fff;transition:border-color .15s,background .15s}
.s-opt.on{border-color:var(--brand);background:color-mix(in oklab,var(--brand) 3%,white)}
.s-opt.dis{background:var(--surface-2);opacity:.6}
.s-opt-l{display:flex!important;align-items:center;gap:10px!important;cursor:pointer;margin:0}
.s-opt.dis .s-opt-l{cursor:not-allowed}
.s-opt-l input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--brand)}
.s-opt-l span{font-size:14.5px;font-weight:750;color:var(--text)}
.s-oz-t .s-oz-n{font-weight:550;font-size:12.5px;color:var(--ink)}
/* Stüdyo kipi (04.10.2026): sepette onaylı tasarım kutusu (yükleme / seçenek alanı yok) */
.s-studio .s-oz{margin:0;border-color:color-mix(in oklab,var(--ok) 34%,var(--line));background:color-mix(in oklab,var(--ok) 5%,var(--surface));align-items:center}
.s-studio .s-oz img,.s-studio .s-oz-i{width:72px;height:72px}
.s-studio-ok{display:flex;align-items:center;gap:7px;color:#0a7a45;font-size:14px!important}
.s-studio-ok svg{width:17px;height:17px;flex:none}
.s-studio-a{display:flex;flex-direction:column;gap:6px;flex:none}
.s-oz-x{cursor:pointer;color:var(--muted);font-family:inherit}
.s-studio-n{display:flex;gap:8px;align-items:flex-start;margin:10px 2px 0;font-size:13px;font-weight:550;color:var(--muted);line-height:1.45}
.s-studio-n svg{width:15px;height:15px;flex:none;margin-top:2px}
@media (max-width:520px){.s-studio .s-oz{flex-wrap:wrap}.s-studio .s-oz img,.s-studio .s-oz-i{width:56px;height:56px}.s-studio-a{flex-direction:row;width:100%;justify-content:flex-end}.s-studio .s-oz-e{font-size:13px;padding:0 12px;gap:6px}.s-studio .s-oz-e svg{width:14px;height:14px}}

/* İndirim kodu + hatırlatma e-postası izni (04.10.2026) */
.s-coupon{margin:12px 0 14px;font-size:14px}
.s-coupon summary{display:inline-flex;align-items:center;gap:7px;min-height:40px;cursor:pointer;color:var(--ink);font-weight:700;list-style:none}
.s-coupon summary::-webkit-details-marker{display:none}
.s-coupon summary svg,.s-coupon.on svg{width:18px;height:18px;flex:none}
.s-coupon-f{display:flex;gap:8px;margin-top:6px}
.s-coupon-f input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--field);color:var(--text);font:650 16px var(--font);letter-spacing:.04em;text-transform:uppercase}
.s-coupon-f input::placeholder{text-transform:none;letter-spacing:0;font-weight:500}
.s-coupon-f .s-btn{min-height:44px}
.s-coupon-e{margin:8px 0 0;color:var(--bad);font-size:13px;font-weight:600}
.s-coupon.on{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:12px;background:color-mix(in oklab,var(--ok) 10%,transparent);color:var(--ok);font-weight:600}
.s-coupon.on span{flex:1;min-width:0}
.s-mkt small{display:block;margin-top:2px;font-size:12.5px;font-weight:500;color:var(--muted)}


/* İndirim kodu + hatırlatma e-postası izni (04.10.2026) */
.s-coupon{margin:12px 0 14px;font-size:14px}
.s-coupon summary{display:inline-flex;align-items:center;gap:7px;min-height:40px;cursor:pointer;color:var(--ink);font-weight:700;list-style:none}
.s-coupon summary::-webkit-details-marker{display:none}
.s-coupon summary svg,.s-coupon.on svg{width:18px;height:18px;flex:none}
.s-coupon-f{display:flex;gap:8px;margin-top:6px}
.s-coupon-f input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--field);color:var(--text);font:650 16px var(--font);letter-spacing:.04em;text-transform:uppercase}
.s-coupon-f input::placeholder{text-transform:none;letter-spacing:0;font-weight:500}
.s-coupon-f .s-btn{min-height:44px}
.s-coupon-e{margin:8px 0 0;color:var(--bad);font-size:13px;font-weight:600}
.s-coupon.on{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:12px;background:color-mix(in oklab,var(--ok) 10%,transparent);color:var(--ok);font-weight:600}
.s-coupon.on span{flex:1;min-width:0}
.s-mkt small{display:block;margin-top:2px;font-size:12.5px;font-weight:500;color:var(--muted)}
