/* ═══════════════════════════════════════════════════════════════
   Ariyen Shop — Checkout (teknikelektrik cx, birebir)
   Tümü .cx altında izole. shop.css ile çakışmaz.
   ═══════════════════════════════════════════════════════════════ */
.cx{
  --ink:#0a0a0a; --ink-2:#1d1d1f; --ink-mute:#6e6e73; --ink-faint:#a1a1a6;
  --bg:#fafafa; --bg-elev:#ffffff; --bg-soft:#f3f3f5; --bg-sunk:#ededf0;
  --line:#e6e6ea; --line-strong:#d2d2d7;
  --accent:var(--gold-2,#9a7b2c);
  --r-sm:8px; --r-md:14px; --r-lg:22px; --r-xl:32px;
  --header-h:56px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --shadow-sm:0 1px 2px rgba(15,15,20,.04),0 1px 1px rgba(15,15,20,.03);
  --shadow-lg:0 30px 60px -20px rgba(15,15,20,.18),0 12px 30px -12px rgba(15,15,20,.10);
  color:var(--ink);
}
:root[data-theme="dark"] .cx{
  --ink:#f5f5f7; --ink-2:#ededef; --ink-mute:#98989d; --ink-faint:#6e6e73;
  --bg:#0a0a0c; --bg-elev:#131317; --bg-soft:#16161b; --bg-sunk:#0f0f12;
  --line:#232328; --line-strong:#2c2c33;
  --shadow-sm:0 1px 2px rgba(0,0,0,.5);
  --shadow-lg:0 30px 60px -20px rgba(0,0,0,.7);
}
.cx *{box-sizing:border-box}
.cx [hidden]{display:none!important}
.cx .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font-size:14.5px;font-weight:500;font-family:inherit;cursor:pointer;border:none;transition:transform .2s var(--ease),background-color .2s,color .2s,box-shadow .2s,filter .2s;white-space:nowrap}
.cx .btn:active{transform:scale(.98)}
.cx .btn--primary{background:var(--ink);color:var(--bg)}
.cx .btn--primary:hover{background:var(--ink-2)}
.cx .btn--ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line-strong)}
.cx .btn--ghost:hover{background:var(--bg-soft)}
.cx .btn .arr{transition:transform .2s var(--ease)}
.cx .btn:hover .arr{transform:translateX(3px)}
/* ── CHECKOUT PAGE ─────────────────────────────────────────────────────────── */
.cx{padding:24px 0 80px}
.cx-top{display:flex;align-items:center;gap:24px;padding:6px 0 28px;flex-wrap:wrap}
.cx-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-mute);text-decoration:none;padding:6px 10px;border-radius:999px;transition:background-color .2s var(--ease),color .2s}
.cx-back:hover{background:var(--bg-soft);color:var(--ink-2)}
.cx-back svg{width:16px;height:16px}
.cx-trust{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-mute)}
.cx-trust svg{width:14px;height:14px;color:var(--accent)}
.cx-stepper{display:inline-flex;align-items:center;gap:10px;margin:0 auto;padding:0;list-style:none}
.cx-step{display:inline-flex;align-items:center;gap:10px;padding:6px 0;color:var(--ink-mute);font-size:13.5px;font-weight:500;position:relative}
.cx-step+.cx-step::before{content:"";display:inline-block;width:36px;height:1px;background:var(--line);margin-right:6px}
.cx-step-dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--bg-soft);border:1.5px solid var(--line);font-size:12px;font-weight:600;color:var(--ink-mute);transition:.25s var(--ease)}
.cx-step.is-active .cx-step-dot{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.cx-step.is-active{color:var(--ink)}
.cx-step.is-done .cx-step-dot{background:var(--accent);border-color:var(--accent);color:#fff;font-size:0}
.cx-step.is-done .cx-step-dot::after{content:"✓";font-size:13px;font-weight:700}
.cx-step.is-done{color:var(--ink-2)}
.cx-mprog{display:none;margin:0 0 18px}
.cx-mprog-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;font-size:13px}
.cx-mprog-row b{font-weight:600;color:var(--ink);font-size:15px;letter-spacing:-.01em}
.cx-mprog-row span{color:var(--ink-mute);font-variant-numeric:tabular-nums}
.cx-mprog-track{height:4px;background:var(--bg-soft);border-radius:999px;overflow:hidden}
.cx-mprog-track i{display:block;height:100%;width:33.33%;background:var(--accent);border-radius:999px;transition:width .35s var(--ease)}
.cx-alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--r-md);font-size:14px;margin-bottom:18px}
.cx-alert--err{background:color-mix(in oklab,#dc2626 12%,var(--bg-elev));color:#dc2626;border:1px solid color-mix(in oklab,#dc2626 30%,transparent)}
.cx-grid{display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:start}
.cx-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;box-shadow:var(--shadow-sm);animation:cxIn .35s var(--ease)}
@keyframes cxIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.cx-card[hidden]{display:none}
.cx-card-head{margin-bottom:24px}
.cx-card-head h2{font-size:22px;letter-spacing:-.02em;margin:0 0 4px}
.cx-card-head p{margin:0;color:var(--ink-mute);font-size:14px}
.cx-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cx-f{display:flex;flex-direction:column;gap:6px;grid-column:1/-1}
.cx-f--half{grid-column:auto}
.cx-f>span{font-size:12px;color:var(--ink-mute);font-weight:500;letter-spacing:-.005em;padding-left:2px}
.cx-f input,.cx-f textarea,.cx-f select{background:var(--bg);border:1.5px solid var(--line);border-radius:var(--r-md);padding:13px 14px;font-size:14.5px;color:var(--ink);font-family:inherit;transition:border-color .15s,background-color .15s,box-shadow .15s;outline:none;width:100%;box-sizing:border-box}
.cx-f input::placeholder,.cx-f textarea::placeholder{color:var(--ink-faint)}
.cx-f input:hover,.cx-f textarea:hover{border-color:var(--line-strong)}
.cx-f input:focus,.cx-f textarea:focus{border-color:var(--ink);background:var(--bg-elev);box-shadow:0 0 0 4px color-mix(in oklab,var(--ink) 8%,transparent)}
.cx-f textarea{resize:vertical;min-height:80px;line-height:1.5}
.cx-f.is-invalid input,.cx-f.is-invalid textarea{border-color:#dc2626;box-shadow:0 0 0 4px color-mix(in oklab,#dc2626 12%,transparent)}
.cx-toggle{margin-top:18px;padding:16px;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);transition:border-color .2s,background-color .2s}
.cx-toggle:has(input:checked){border-style:solid;border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,var(--bg-elev))}
.cx-toggle-row{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none}
.cx-toggle-row input{position:absolute;opacity:0;pointer-events:none}
.cx-switch{flex-shrink:0;width:38px;height:22px;background:var(--bg-sunk,var(--bg-soft));border-radius:999px;position:relative;transition:background-color .2s}
.cx-switch::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .2s var(--ease)}
.cx-toggle-row input:checked+.cx-switch{background:var(--accent)}
.cx-toggle-row input:checked+.cx-switch::after{transform:translateX(16px)}
.cx-toggle-label{display:flex;flex-direction:column;line-height:1.3}
.cx-toggle-label b{font-weight:600;font-size:14.5px;color:var(--ink)}
.cx-toggle-label small{color:var(--ink-mute);font-size:12.5px}
.cx-kfields{margin-top:16px;padding-top:16px;border-top:1px solid color-mix(in oklab,var(--accent) 15%,var(--line));display:grid;grid-template-columns:1fr 1fr;gap:14px;animation:cxIn .25s var(--ease)}
.cx-kfields .cx-f{grid-column:1/-1}
.cx-kfields .cx-f--half{grid-column:auto}
.cx-notice{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--r-md);font-size:13.5px;margin-bottom:18px;border:1px solid transparent}
.cx-notice svg{flex-shrink:0;width:16px;height:16px}
.cx-notice--green{background:color-mix(in oklab,#16a34a 10%,var(--bg-elev));color:#15803d;border-color:color-mix(in oklab,#16a34a 25%,transparent)}
.cx-notice--blue{background:color-mix(in oklab,#3b82f6 8%,var(--bg-elev));color:#1d4ed8;border-color:color-mix(in oklab,#3b82f6 20%,transparent)}
[data-theme="dark"] .cx-notice--green{color:#4ade80}
[data-theme="dark"] .cx-notice--blue{color:#93c5fd}
.cx-notice b{font-weight:600}
.cx-sub{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-mute);margin:8px 0 12px}
.cx-sub:not(:first-of-type){margin-top:24px}
.cx-opts{display:grid;gap:8px}
.cx-opt{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-md);cursor:pointer;background:var(--bg-elev);transition:.18s var(--ease)}
.cx-opt:hover{border-color:var(--line-strong);background:var(--bg-soft)}
.cx-opt input{position:absolute;opacity:0;pointer-events:none}
.cx-opt-tick{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--bg-elev);position:relative;flex-shrink:0;transition:.2s var(--ease)}
.cx-opt-tick::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--accent);transform:scale(0);transition:transform .2s var(--ease)}
.cx-opt.is-on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,var(--bg-elev));box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 12%,transparent)}
.cx-opt.is-on .cx-opt-tick{border-color:var(--accent)}
.cx-opt.is-on .cx-opt-tick::after{transform:scale(1)}
.cx-opt-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.cx-opt-title{font-size:14.5px;font-weight:600;color:var(--ink)}
.cx-opt-sub{font-size:12.5px;color:var(--ink-mute)}
.cx-opt-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;flex-shrink:0}
.cx-opt-meta b{font-size:14.5px;font-weight:600;color:var(--ink)}
.cx-opt-meta small{font-size:11px;color:var(--ink-mute)}
.cx-free{color:#15803d!important}
[data-theme="dark"] .cx-free{color:#4ade80!important}
.cx-fee{color:var(--accent);font-weight:600;font-size:12.5px}
.cx-details{margin-top:14px;border:1.5px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--bg-elev);transition:border-color .15s}
.cx-details[open]{border-color:var(--line-strong)}
.cx-details summary{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;cursor:pointer;font-size:14px;font-weight:500;color:var(--ink-2);list-style:none;user-select:none}
.cx-details summary::-webkit-details-marker{display:none}
.cx-details summary span{display:inline-flex;align-items:center;gap:8px}
.cx-details summary svg{color:var(--ink-mute)}
.cx-details summary em{font-style:normal;font-size:18px;color:var(--ink-mute);font-weight:300;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;transition:transform .2s var(--ease),background-color .15s}
.cx-details[open] summary em{transform:rotate(45deg);background:var(--bg-soft)}
.cx-coupon{display:flex;gap:8px;padding:0 16px 14px}
.cx-coupon input{flex:1;background:var(--bg);border:1.5px solid var(--line);border-radius:var(--r-sm);padding:11px 14px;font-size:14px;color:var(--ink);outline:none;font-family:ui-monospace,"SF Mono",monospace;letter-spacing:.05em}
.cx-coupon input:focus{border-color:var(--ink)}
.cx-coupon .btn{padding:11px 18px;font-size:13.5px}
.cx-coupon-msg{padding:0 16px 12px;font-size:13px}
.cx-coupon-msg.is-ok{color:#15803d}
.cx-coupon-msg.is-err{color:#dc2626}
[data-theme="dark"] .cx-coupon-msg.is-ok{color:#4ade80}
.cx-note{margin:0 16px 14px;width:calc(100% - 32px);box-sizing:border-box;background:var(--bg);border:1.5px solid var(--line);border-radius:var(--r-sm);padding:11px 14px;font-size:14px;color:var(--ink);outline:none;font-family:inherit;resize:vertical;min-height:64px}
.cx-note:focus{border-color:var(--ink)}
.cx-review{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;margin-bottom:20px}
.cx-review-row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--bg-elev)}
.cx-review-row:last-child{border-bottom:0}
.cx-review-label{font-size:12px;color:var(--ink-mute);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.cx-review-value{font-size:14px;color:var(--ink);line-height:1.4;word-break:break-word}
.cx-review-edit{font-size:12.5px;color:var(--accent);font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid transparent;transition:.15s}
.cx-review-edit:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,transparent)}
.cx-consent{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--bg-soft);border-radius:var(--r-md);cursor:pointer;font-size:13.5px;line-height:1.5;color:var(--ink-2);user-select:none;margin-bottom:20px}
.cx-consent input{position:absolute;opacity:0;pointer-events:none}
.cx-check{flex-shrink:0;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--line-strong);background:var(--bg-elev);position:relative;transition:.18s var(--ease);margin-top:1px}
.cx-check::after{content:"";position:absolute;inset:0;border-radius:5px;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat;transform:scale(0);transition:.18s var(--ease)}
.cx-consent input:checked+.cx-check{border-color:var(--accent)}
.cx-consent input:checked+.cx-check::after{transform:scale(1)}
.cx-consent a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.cx-step-actions{margin-top:24px;display:flex;gap:10px;justify-content:flex-end}
.cx-step-actions--split{justify-content:space-between}
.cx-step-actions .btn{padding:13px 24px;font-size:14.5px}
.cx-secure-line{display:inline-flex;align-items:center;gap:6px;justify-content:center;width:100%;color:var(--ink-mute);font-size:12.5px;margin:18px 0 0}
.cx-secure-line svg{color:var(--ink-mute)}
.cx-side{position:sticky;top:calc(var(--header-h)+16px)}
.cx-side-inner{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-sm)}
.cx-side-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
.cx-side-head h3{font-size:16px;letter-spacing:-.01em;margin:0}
.cx-side-count{font-size:12px;color:var(--ink-mute)}
.cx-items{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:12px;max-height:280px;overflow-y:auto;padding-right:4px}
.cx-items::-webkit-scrollbar{width:4px}
.cx-items::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:2px}
.cx-item{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center}
.cx-item-img{position:relative;width:48px;height:48px;border-radius:var(--r-sm);background:var(--bg-soft);overflow:hidden;display:grid;place-items:center;border:1px solid var(--line)}
.cx-item-img img{width:100%;height:100%;object-fit:cover}
.cx-item-img svg{width:24px;height:24px;color:var(--ink-faint)}
.cx-item-qty{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:700;background:var(--ink);color:var(--bg);border-radius:999px;display:grid;place-items:center;border:2px solid var(--bg-elev);line-height:1}
.cx-item-info{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;min-width:0}
.cx-item-name{font-size:13.5px;color:var(--ink-2);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cx-item-price{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap}
.cx-totals{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--line)}
.cx-tr{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;color:var(--ink-mute)}
.cx-tr span:last-child{color:var(--ink-2);font-weight:500}
.cx-tr--disc span:last-child{color:#15803d}
[data-theme="dark"] .cx-tr--disc span:last-child{color:#4ade80}
.cx-tr--disc em{font-style:normal;font-size:11.5px;color:var(--ink-faint);font-weight:400}
.cx-tr--grand{padding-top:10px;border-top:1px solid var(--line);margin-top:4px;align-items:baseline}
.cx-tr--grand b{font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.cx-tr--grand b small{font-size:11px;font-weight:400;color:var(--ink-mute);margin-left:4px}
.cx-tr--grand b#cxSumTotal,.cx-tr--grand b#cxMSumTotal{font-size:22px}
.cx-trustlist{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.cx-trustlist li{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-mute)}
.cx-trustlist svg{color:var(--accent);flex-shrink:0}
.cx-empty{padding:14px;text-align:center;color:var(--ink-mute);font-size:13.5px;background:var(--bg-soft);border-radius:var(--r-md)}
.cx-mbar{display:none}
.cx-mbar-summary{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:10px 14px;background:var(--bg-soft);border-radius:var(--r-md);min-width:0}
.cx-mbar-label{font-size:11px;color:var(--ink-mute);letter-spacing:.04em;text-transform:uppercase}
.cx-mbar-total{font-size:16px;font-weight:700;color:var(--ink);letter-spacing:-.01em;margin-left:6px}
.cx-mbar-summary svg{color:var(--ink-mute);transition:transform .2s var(--ease)}
.cx-mbar-summary[aria-expanded="true"] svg{transform:rotate(180deg)}
.cx-mbar-next{flex:1;justify-content:center;padding:13px 18px}
.cx-sheet{position:fixed;inset:0;z-index:200;pointer-events:none}
.cx-sheet[aria-hidden="false"]{pointer-events:auto}
.cx-sheet-scrim{position:absolute;inset:0;background:rgba(10,10,12,.42);opacity:0;transition:opacity .3s var(--ease);backdrop-filter:blur(4px)}
.cx-sheet[aria-hidden="false"] .cx-sheet-scrim{opacity:1}
.cx-sheet-card{position:absolute;left:0;right:0;bottom:0;max-height:80vh;background:var(--bg-elev);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--shadow-lg);transform:translateY(100%);transition:transform .35s var(--ease);display:flex;flex-direction:column;z-index:1}
.cx-sheet[aria-hidden="false"] .cx-sheet-card{transform:translateY(0)}
.cx-sheet-grab{width:40px;height:4px;border-radius:999px;background:var(--line-strong);margin:10px auto 0}
.cx-sheet-head{display:flex;justify-content:space-between;align-items:center;padding:14px 20px 10px;border-bottom:1px solid var(--line)}
.cx-sheet-head h3{margin:0;font-size:17px;letter-spacing:-.01em}
.cx-sheet-close{width:34px;height:34px;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center;color:var(--ink-2)}
.cx-sheet-close svg{width:16px;height:16px}
.cx-sheet-body{padding:16px 20px 24px;overflow-y:auto;flex:1}
.cx-sheet-body .cx-items{max-height:none;margin-bottom:14px}
@media(max-width:980px){
  .cx-grid{grid-template-columns:1fr}
  .cx-side{display:none}
}
@media(max-width:680px){
  .cx{padding:12px 0 110px}
  .cx-top{padding:0 0 14px;gap:10px}
  .cx-back{padding:6px 8px;font-size:13px}
  .cx-back span{display:none}
  .cx-back svg{width:18px;height:18px}
  .cx-trust{display:none}
  .cx-stepper{display:none}
  .cx-mprog{display:block}
  .cx-card{padding:20px 18px;border-radius:var(--r-md)}
  .cx-card-head h2{font-size:19px}
  .cx-card-head{margin-bottom:18px}
  .cx-fields{grid-template-columns:1fr;gap:12px}
  .cx-f--half{grid-column:1/-1}
  .cx-kfields{grid-template-columns:1fr}
  .cx-kfields .cx-f--half{grid-column:1/-1}
  .cx-opt{padding:13px 14px;gap:10px}
  .cx-opt-title{font-size:14px}
  .cx-review-row{grid-template-columns:1fr;gap:4px;padding:12px 14px;position:relative}
  .cx-review-row .cx-review-edit{position:absolute;top:10px;right:10px}
  .cx-step-actions{display:none}
  .cx-mbar{display:flex;position:fixed;bottom:0;left:0;right:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--bg-elev);border-top:1px solid var(--line);box-shadow:0 -4px 20px rgba(0,0,0,.06);z-index:90;gap:10px}
  [data-theme="dark"] .cx-mbar{box-shadow:0 -4px 20px rgba(0,0,0,.4)}
}
@media(max-width:420px){
  .cx-card{padding:18px 14px}
  .cx-opt{grid-template-columns:auto 1fr;flex-wrap:wrap}
  .cx-opt-meta{grid-column:2;align-items:flex-start;text-align:left}
}


/* teknikelektrik base button reset (scoped, düşük özgüllük — class'ları bozmaz) */
:where(.cx) button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;-webkit-appearance:none;appearance:none}
/* özet görsel rozeti kırpılmasın — köşede temiz dursun */
.cx-item-img{overflow:visible}
.cx-item-img>img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-sm)}
/* özet listesi konteyneri ilk ürünün üst rozetini kesmesin */
.cx-items{padding-top:8px;padding-right:8px}
/* görsel kutuya TAM otursun (69px taşma + scroll fix), rozet görünür kalsın */
.cx-item-img{overflow:visible;position:relative}
.cx-item-img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--r-sm)}
.cx-items{max-height:none;overflow:visible;padding-top:8px;padding-right:2px}

/* ── Fiyat kilidi banner ── */
.cx-lock{display:flex;align-items:center;gap:10px;border-radius:var(--r-md);padding:11px 15px;margin:0 0 18px;font-size:13.5px;font-weight:500;border:1px solid var(--line);background:var(--bg-elev)}
.cx-lock-ic{display:inline-flex;flex:none}.cx-lock-ic svg{width:19px;height:19px}
.cx-lock-txt{flex:1;min-width:0}.cx-lock-txt b{font-variant-numeric:tabular-nums}
.cx-lock[data-state="locked"]{background:color-mix(in oklab,var(--ok,#2c9358) 12%,var(--bg-elev));border-color:color-mix(in oklab,var(--ok,#2c9358) 35%,var(--line));color:var(--ink-2)}
.cx-lock[data-state="locked"] .cx-lock-ic{color:var(--ok,#2c9358)}
.cx-lock[data-state="expired"]{background:color-mix(in oklab,#e0a800 14%,var(--bg-elev));border-color:color-mix(in oklab,#e0a800 45%,var(--line));color:var(--ink-2)}
.cx-lock[data-state="expired"] .cx-lock-ic{color:#c58a00}
.cx-lock[data-state="loading"]{color:var(--ink-mute)}
.cx-lock-btn{flex:none;font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:999px;background:var(--ink);color:var(--bg);border:0;cursor:pointer}
.cx-lock-btn:hover{filter:brightness(1.1)}
/* onayla butonu kilitsizken pasif */
.cx-submit.is-disabled{opacity:.45;pointer-events:none;filter:grayscale(.3)}
/* ── Özet ürün satırı: 3 kolon + alt satır (gram/adet netliği) ── */
.cx-item{grid-template-columns:48px 1fr auto;align-items:center}
.cx-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.cx-item-name{font-size:13px;font-weight:600;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cx-item-sub{font-size:11.5px;color:var(--ink-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cx-item-price{font-size:13.5px;font-weight:700;white-space:nowrap;text-align:right}
.cx-item-qty.is-gram{background:var(--gold-2,#9a7b2c)}
.cx{padding:0 0 20px}

/* ═══════════ SEPET (teknikelektrik cart-page, birebir) ═══════════ */
.cart-page{
  --ink:#0a0a0a; --ink-2:#1d1d1f; --ink-mute:#6e6e73; --ink-faint:#a1a1a6;
  --bg:#fafafa; --bg-elev:#ffffff; --bg-card:#ffffff; --bg-soft:#f3f3f5; --bg-sunk:#ededf0;
  --line:#e6e6ea; --line-strong:#d2d2d7;
  --accent:var(--gold-2,#9a7b2c); --accent-soft:var(--gold-soft,rgba(212,175,55,.14));
  --r-sm:8px; --r-md:14px; --r-lg:22px; --header-h:56px;
  --ease:cubic-bezier(.2,.7,.2,1);
  color:var(--ink);
}
:root[data-theme="dark"] .cart-page{
  --ink:#f5f5f7; --ink-2:#ededef; --ink-mute:#98989d; --ink-faint:#6e6e73;
  --bg:#0a0a0c; --bg-elev:#131317; --bg-card:#131317; --bg-soft:#16161b;
  --line:#232328; --line-strong:#2c2c33; --accent-soft:#2a1a13;
}
.cart-page *{box-sizing:border-box}
:where(.cart-page) button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;-webkit-appearance:none;appearance:none}
.cart-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font-size:14.5px;font-weight:500;font-family:inherit;cursor:pointer;border:none;transition:.2s var(--ease);white-space:nowrap;text-decoration:none}
.cart-page .btn--primary{background:var(--ink);color:var(--bg)}
.cart-page .btn--primary:hover{background:var(--ink-2)}
.cart-page .btn--ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line-strong)}
.cart-page .btn--ghost:hover{background:var(--bg-soft)}
.cart-page .btn--block{width:100%;justify-content:center;margin-top:8px;display:flex}
.cart-page{padding:40px 0 80px}

.cart-page-head{display:flex;align-items:baseline;gap:12px;margin-bottom:32px}
.cart-page-head h1{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin:0}
.cart-page-count{font-size:.85rem;color:var(--ink-mute);background:var(--bg-soft);padding:2px 10px;border-radius:999px}

.cart-page-layout{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start}

/* product list */
.cart-page-items{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}

.cp-item{display:flex;gap:16px;padding:18px 20px;background:var(--bg-card);transition:opacity .28s,transform .28s,background .15s}
.cp-item:hover{background:var(--bg-soft)}
.cp-item--removing{opacity:0;transform:translateX(12px);pointer-events:none}

.cp-img{flex-shrink:0;width:80px;height:80px;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--bg-soft);display:flex;align-items:center;justify-content:center;text-decoration:none}
.cp-img img{width:100%;height:100%;object-fit:cover}
.cp-img svg{width:36px;height:36px;color:var(--ink-faint)}

.cp-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}

.cp-top{display:flex;align-items:flex-start;gap:8px}
.cp-name{flex:1;min-width:0;font-size:.9rem;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-name:hover{color:var(--accent)}

.cp-price-wrap{display:flex;align-items:center;gap:8px}
.cp-old-price{font-size:.78rem;color:var(--ink-mute);text-decoration:line-through}
.cp-unit-price{font-size:.85rem;color:var(--ink-2);font-weight:500}

.cp-foot{display:flex;align-items:center;gap:12px;margin-top:auto}

.cp-qty{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;overflow:hidden;transition:border-color .12s}
.cp-qty:focus-within{border-color:var(--accent)}
.cp-qty-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;line-height:1;color:var(--ink-2);background:none;border:none;cursor:pointer;transition:background .12s,color .12s,opacity .12s;user-select:none;-webkit-tap-highlight-color:transparent}
.cp-qty-btn:hover:not(:disabled){background:var(--bg-soft);color:var(--accent)}
.cp-qty-btn:active:not(:disabled){background:var(--accent-soft)}
.cp-qty-btn:disabled,.cp-qty-btn--loading{opacity:.35;cursor:not-allowed;pointer-events:none}
.cp-qty-val{min-width:32px;text-align:center;font-size:.9rem;font-weight:700;color:var(--ink)}

.cp-subtotal{font-size:.95rem;font-weight:700;color:var(--ink);margin-left:auto;white-space:nowrap}

.cp-remove{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--ink-mute);border-radius:8px;transition:background .12s,color .12s;flex-shrink:0;-webkit-tap-highlight-color:transparent}
.cp-remove:hover{background:#fee2e2;color:#dc2626}
.cp-remove svg{width:15px;height:15px}

/* summary (desktop) */
.cart-page-summary{position:sticky;top:calc(var(--header-h) + 20px)}
.cps-block{background:var(--bg-card);border:1px solid var(--line);border-radius:14px;padding:24px}
.cps-block h3{font-size:1rem;font-weight:700;margin:0 0 18px}

.cps-rows{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.cps-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--ink-2)}
.cps-row span:last-child,.cps-row b{color:var(--ink);font-weight:500}
.cps-row--total{border-top:1px solid var(--line);padding-top:12px;margin-top:4px}
.cps-row--total span{font-size:.9rem;font-weight:600;color:var(--ink)}
.cps-row--total b{font-size:1.15rem;font-weight:700;color:var(--ink)}

.btn--block{width:100%;justify-content:center;margin-top:8px;text-align:center;display:flex}

/* mobile sticky bar */
.cp-mob-bar{display:none}

/* empty state */
.cart-page-empty{text-align:center;padding:80px 20px;color:var(--ink-mute)}
.cart-page-empty svg{width:72px;height:72px;margin:0 auto 20px;display:block;color:var(--ink-faint)}
.cart-page-empty p{font-size:1.1rem;font-weight:600;color:var(--ink);margin:0 0 6px}
.cart-page-empty span{font-size:.9rem;color:var(--ink-mute);display:block;margin-bottom:24px}

@media(max-width:860px){
  .cart-page{padding:20px 0 100px}
  .cart-page-head{margin-bottom:16px}
  .cart-page-head h1{font-size:1.25rem}

  /* hide desktop summary, show mobile sticky bar */
  .cart-page-layout{grid-template-columns:1fr;gap:0}
  .cart-page-summary{display:none}

  /* mobile items: full-width cards with subtle shadow */
  .cart-page-items{border-radius:0;border-left:none;border-right:none;gap:0;background:transparent}
  .cp-item{
    display:grid;
    grid-template-columns:88px 1fr;
    gap:14px;
    padding:16px;
    border-bottom:1px solid var(--line);
    background:var(--bg-card);
  }
  .cp-item:last-child{border-bottom:none}
  .cp-item:hover{background:var(--bg-card)}

  .cp-img{width:88px;height:88px;border-radius:12px}

  .cp-body{gap:5px}

  .cp-top{gap:6px}
  .cp-name{
    font-size:.875rem;
    white-space:normal;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .cp-remove{width:28px;height:28px;margin-top:-2px}
  .cp-remove svg{width:13px;height:13px}

  .cp-price-wrap{gap:6px}
  .cp-unit-price{font-size:.8rem}
  .cp-old-price{font-size:.72rem}

  .cp-foot{gap:10px;margin-top:6px}
  .cp-qty-btn{width:36px;height:36px;font-size:1.2rem}
  .cp-qty-val{min-width:30px;font-size:.9rem}
  .cp-subtotal{font-size:.9rem}

  /* content padding so nothing hides behind bar */
  .cart-page{padding-bottom:110px}

  /* mobile sticky bottom bar */
  .cp-mob-bar{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    position:fixed;bottom:0;left:0;right:0;z-index:200;
    background:var(--bg-elev);
    border-top:2px solid var(--line);
    padding:10px 16px;
    padding-bottom:calc(10px + env(safe-area-inset-bottom, 0px));
    box-shadow:0 -6px 32px rgba(0,0,0,.12);
  }
  .cp-mob-bar-total{display:flex;flex-direction:column;gap:1px}
  .cp-mob-bar-total span{font-size:.68rem;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em}
  .cp-mob-bar-total b{font-size:1.1rem;font-weight:700;color:var(--ink)}
  .cp-mob-bar .btn{flex-shrink:0;white-space:nowrap;padding:0 22px;height:46px}
}
.cp-hint{display:block;font-size:11.5px;color:var(--accent);font-weight:600;margin-top:3px}
.cp-unit-price small{font-size:11px;color:var(--ink-mute);font-weight:500}
/* ARIYEN-COUPONFIX: yeni kupon HTML (row + msg alt alta) */
.cx-coupon{display:block;padding:0 16px 14px}
.cx-coupon-row{display:flex;gap:8px}
.cx-coupon-row input{flex:1;min-width:0;background:var(--bg);border:1.5px solid var(--line);border-radius:var(--r-sm);padding:11px 14px;font-size:14px;color:var(--ink);outline:none;font-family:ui-monospace,monospace;letter-spacing:.05em;text-transform:uppercase}
.cx-coupon-row input:focus{border-color:var(--ink)}
.cx-coupon-row button{flex:none;font-family:inherit;font-size:13.5px;font-weight:600;padding:11px 18px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap}
.cx-coupon-row button:hover{border-color:var(--ink)}
.cx-coupon-msg{padding:7px 2px 0;font-size:13px;margin:0}
.cx-coupon-msg.ok{color:#15803d}
.cx-coupon-msg.err{color:#dc2626}
