/* =========================================================
   YSM CONCEPT — tema
   Renkleri değiştirmek için sadece :root bloğuna dokunman yeter.
   ========================================================= */
:root{
  --mor-koyu:#3B0B36;
  --mor:#7A2185;
  --lila:#EDE1F2;
  --lila-soluk:#F7F0FA;
  --gul:#D4468D;
  --altin:#C39A45;
  --kagit:#FBF7FB;
  --gri:#6E6270;
  --cizgi:#E7DCEA;
  --golge:0 18px 40px -24px rgba(59,11,54,.45);
  --r:14px;
}
*{ -webkit-tap-highlight-color:transparent; }
html{ scroll-behavior:smooth; }
body{
  background:var(--kagit); color:var(--mor-koyu);
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-weight:300; line-height:1.7; overflow-x:hidden;
}
h1,h2,h3,.serif{ font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; letter-spacing:.01em; }
h1{ font-size:clamp(2.6rem,6vw,4.4rem); line-height:1.05; }
h2{ font-size:clamp(2rem,4vw,2.9rem); line-height:1.15; }
h3{ font-size:1.35rem; line-height:1.3; }
p{ max-width:62ch; }
a{ color:inherit; text-decoration:none; transition:color .18s ease; }
a:hover{ color:var(--mor); }
:focus-visible{ outline:2px solid var(--gul); outline-offset:3px; border-radius:4px; }
img{ max-width:100%; display:block; }

.bolum{ padding:5.5rem 0; }
.bolum-sik{ padding:3.5rem 0; }
@media(max-width:767px){ .bolum{ padding:3.5rem 0; } }

.bolum-bas{ display:flex; align-items:flex-end; justify-content:space-between; gap:1.5rem; margin-bottom:2.5rem; }
.bolum-bas h2{ margin:0; }
.bolum-bas p{ margin:.35rem 0 0; color:var(--gri); font-size:.98rem; }
.tumu{ white-space:nowrap; font-size:.9rem; border-bottom:1px solid var(--altin); padding-bottom:2px; color:var(--mor); }

/* ---------- Üst şerit ---------- */
.serit{ background:var(--mor-koyu); color:#F0DDEE; font-size:.8rem; letter-spacing:.04em; }
.serit .container{ display:flex; justify-content:space-between; align-items:center; min-height:38px; gap:1rem; }
.serit a{ color:#F0DDEE; opacity:.85; }
.serit a:hover{ color:#fff; opacity:1; }

/* ---------- Menü ---------- */
.ust{ background:rgba(251,247,251,.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--cizgi); position:sticky; top:0; z-index:1030; }
.marka{ display:flex; align-items:center; gap:.7rem; }
.marka img{ height:54px; width:54px; border-radius:50%; object-fit:cover; border:1px solid var(--cizgi); }
.marka .ad{ font-family:'Cormorant Garamond',serif; font-weight:700; font-size:1.5rem; color:var(--mor); letter-spacing:.06em; line-height:1.1; }
.marka .marka-alt{ font-size:.6rem; letter-spacing:.32em; color:var(--gri); text-transform:uppercase; }
.navbar-nav .nav-link{ font-size:.94rem; color:var(--mor-koyu); padding:.4rem .9rem; position:relative; }
.navbar-nav .nav-link::after{ content:""; position:absolute; left:.9rem; right:.9rem; bottom:.1rem; height:1px; background:var(--altin); transform:scaleX(0); transition:transform .22s ease; }
.navbar-nav .nav-link:hover::after,.navbar-nav .nav-link.aktif::after{ transform:scaleX(1); }
.arac{ display:flex; align-items:center; gap:.3rem; }
.arac button,.arac a.ikon{ background:none; border:0; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; font-size:1.15rem; color:var(--mor-koyu); position:relative; transition:background .18s ease; }
.arac button:hover,.arac a.ikon:hover{ background:var(--lila); }
.rozet{ position:absolute; top:4px; right:3px; min-width:18px; height:18px; border-radius:9px; background:var(--gul); color:#fff; font-size:.63rem; font-weight:500; display:grid; place-items:center; padding:0 4px; }
.rozet[hidden]{ display:none; }

/* ---------- Hero ---------- */
.hero{ position:relative; padding:4.5rem 0 4rem; overflow:hidden; }
.hero::before{ content:""; position:absolute; inset:-30% -20% auto 40%; height:120%;
  background:radial-gradient(closest-side,#E9D4F0 0%,#F3E5F6 45%,transparent 72%); z-index:0; }
.hero::after{ content:""; position:absolute; left:-8%; bottom:-25%; width:38vw; height:38vw;
  background:radial-gradient(closest-side,#F6DCE9 0%,transparent 70%); z-index:0; }
.hero > .container{ position:relative; z-index:1; }
.hero .ust-not{ font-size:.82rem; letter-spacing:.24em; color:var(--mor); margin-bottom:1.4rem; }
.hero h1{ margin-bottom:1.3rem; }
.hero h1 em{ font-style:italic; font-weight:400; }
.hero .aciklama{ font-size:1.08rem; color:#59485B; margin-bottom:2.1rem; }

.btn-ysm{ background:var(--mor); color:#fff; border:0; border-radius:100px; padding:.85rem 2.1rem; font-size:.95rem; font-weight:400; transition:background .2s ease,transform .2s ease; }
.btn-ysm:hover{ background:var(--mor-koyu); color:#fff; transform:translateY(-2px); }
.btn-cizgi{ background:none; border:1px solid var(--cizgi); color:var(--mor-koyu); border-radius:100px; padding:.85rem 1.9rem; font-size:.95rem; }
.btn-cizgi:hover{ border-color:var(--mor); color:var(--mor); }

.kemer{ border-radius:50% 50% var(--r) var(--r) / 26% 26% 4% 4%; overflow:hidden; background:linear-gradient(160deg,#E4C9EE,#F3D7E6 55%,#EFE0F5); }
.hero-gorsel{ position:relative; }
.hero-gorsel .kemer{ aspect-ratio:4/5; box-shadow:var(--golge); }
.hero-gorsel .kemer img{ width:100%; height:100%; object-fit:cover; }
.muhur{ position:absolute; left:-26px; bottom:38px; width:124px; height:124px; border-radius:50%;
  background:#fff; border:1px solid var(--altin); display:grid; place-content:center; text-align:center;
  box-shadow:var(--golge); padding:1rem; }
.muhur .k{ font-family:'Cormorant Garamond',serif; font-size:1.6rem; color:var(--mor); line-height:1; }
.muhur .a{ font-size:.6rem; letter-spacing:.14em; color:var(--gri); margin-top:.3rem; }
@media(max-width:991px){ .muhur{ left:auto; right:12px; bottom:-20px; width:104px; height:104px; } }

/* ---------- Güven şeridi ---------- */
.guven{ border-top:1px solid var(--cizgi); border-bottom:1px solid var(--cizgi); background:#fff; }
.guven .ogeler{ display:grid; grid-template-columns:repeat(4,1fr); }
.guven .oge{ display:flex; gap:.85rem; align-items:flex-start; padding:1.6rem 1.5rem; border-right:1px solid var(--cizgi); }
.guven .oge:last-child{ border-right:0; }
.guven i{ font-size:1.3rem; color:var(--altin); line-height:1.4; }
.guven strong{ font-weight:500; font-size:.95rem; display:block; }
.guven span{ font-size:.83rem; color:var(--gri); }
@media(max-width:991px){ .guven .ogeler{ grid-template-columns:repeat(2,1fr); } .guven .oge:nth-child(2){ border-right:0; } .guven .oge:nth-child(-n+2){ border-bottom:1px solid var(--cizgi); } }
@media(max-width:520px){ .guven .ogeler{ grid-template-columns:1fr; } .guven .oge{ border-right:0; border-bottom:1px solid var(--cizgi); } }

/* ---------- Kategoriler (story) ---------- */
.hikayeler{ position:relative; }
.hikaye-ray{ display:flex; gap:1.6rem; overflow-x:auto; padding:.5rem .25rem 1.5rem; scroll-snap-type:x mandatory; scrollbar-width:none; }
.hikaye-ray::-webkit-scrollbar{ display:none; }
.hikaye{ flex:0 0 auto; width:118px; text-align:center; scroll-snap-align:start; }
.hikaye .cerceve{ display:block; width:118px; height:118px; border-radius:50%; padding:3px;
  background:conic-gradient(from 200deg,var(--gul),var(--mor),#8E6BC8,var(--altin),var(--gul)); }
.hikaye .ic{ display:block; width:100%; height:100%; border-radius:50%; border:3px solid var(--kagit); overflow:hidden; background:var(--lila); }
.hikaye .ic img{ width:100%; height:100%; object-fit:cover; }
.hikaye .ad{ margin-top:.7rem; font-size:.88rem; color:var(--mor-koyu); }
.hikaye .sayi{ font-size:.74rem; color:var(--gri); }
.hikaye:hover .cerceve{ filter:saturate(1.15); }
.ray-btn{ position:absolute; top:44px; width:40px; height:40px; border-radius:50%; border:1px solid var(--cizgi);
  background:#fff; color:var(--mor-koyu); display:grid; place-items:center; z-index:2; box-shadow:0 6px 18px -10px rgba(59,11,54,.5); }
.ray-btn.sol{ left:-14px; } .ray-btn.sag{ right:-14px; }
@media(max-width:991px){ .ray-btn{ display:none; } }
@media(max-width:575px){ .hikaye,.hikaye .cerceve{ width:96px; } .hikaye .cerceve{ height:96px; } }

/* ---------- Ürün kartı ---------- */
.urun{ position:relative; height:100%; }
.urun .medya{ position:relative; aspect-ratio:4/5; margin-bottom:1rem;
  border-radius:50% 50% var(--r) var(--r) / 4% 4% 4% 4%; overflow:hidden; background:var(--lila); }
.urun .medya img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.urun:hover .medya img{ transform:scale(1.04); }
.urun .etiket{ position:absolute; top:14px; left:14px; z-index:2; background:#fff; color:var(--mor);
  font-size:.7rem; letter-spacing:.06em; padding:.3rem .7rem; border-radius:100px; border:1px solid var(--cizgi); }
.urun .etiket.indirim{ background:var(--gul); color:#fff; border-color:var(--gul); }
.urun .koku{ font-size:.78rem; letter-spacing:.08em; color:var(--gri); }
.urun h3{ font-size:1.25rem; margin:.15rem 0 .35rem; }
.urun .fiyat{ display:flex; align-items:baseline; gap:.55rem; font-size:1.02rem; font-weight:500; }
.urun .eski{ text-decoration:line-through; color:#A697A8; font-size:.86rem; font-weight:300; }
.urun .sepet{ margin-top:.85rem; width:100%; background:none; border:1px solid var(--cizgi); border-radius:100px;
  padding:.6rem 1rem; font-size:.88rem; color:var(--mor-koyu); transition:all .2s ease; }
.urun .sepet:hover{ background:var(--mor); border-color:var(--mor); color:#fff; }

/* ---------- Hakkımızda ---------- */
.hakkinda{ background:linear-gradient(180deg,var(--lila-soluk),#fff); }
.logo-daire{ aspect-ratio:1; border-radius:50%; overflow:hidden; border:1px solid var(--altin);
  box-shadow:var(--golge); max-width:440px; margin-inline:auto; }
.logo-daire img{ width:100%; height:100%; object-fit:cover; }
.imza{ font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.5rem; color:var(--mor); margin-top:1.4rem; }
.rakam{ display:flex; gap:2.8rem; margin:2rem 0 2.2rem; flex-wrap:wrap; }
.rakam .k{ font-family:'Cormorant Garamond',serif; font-size:2.3rem; color:var(--mor); line-height:1; }
.rakam .a{ font-size:.84rem; color:var(--gri); }

/* ---------- Blog ---------- */
.yazi .medya{ display:block; aspect-ratio:16/10; border-radius:var(--r); overflow:hidden; margin-bottom:1.1rem; background:var(--lila); }
.yazi .medya img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.yazi:hover .medya img{ transform:scale(1.03); }
.yazi .tarih{ font-size:.78rem; color:var(--gri); }
.yazi h3{ margin:.4rem 0 .5rem; }
.yazi p{ font-size:.94rem; color:var(--gri); }

/* ---------- Bülten ---------- */
.bulten{ background:var(--mor-koyu); color:#F6E9F4; border-radius:26px; padding:3.5rem clamp(1.5rem,5vw,4rem); }
.bulten h2{ color:#fff; }
.bulten p{ color:#E0C9DE; }
.bulten .form-control{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.22); color:#fff; border-radius:100px; padding:.85rem 1.4rem; }
.bulten .form-control::placeholder{ color:#C2A8C1; }
.bulten .form-control:focus{ background:rgba(255,255,255,.14); border-color:var(--altin); box-shadow:none; color:#fff; }
.bulten .btn-ysm{ background:var(--altin); color:var(--mor-koyu); }
.bulten .btn-ysm:hover{ background:#fff; }
.bulten small{ color:#B99AB8; }

/* ---------- Footer ---------- */
.site-alt{ background:#fff; border-top:1px solid var(--cizgi); padding-top:4rem; }
.site-alt h4{ font-size:.92rem; font-weight:500; margin-bottom:1.1rem; }
.site-alt ul{ list-style:none; padding:0; margin:0; }
.site-alt li{ margin-bottom:.55rem; }
.site-alt a{ font-size:.92rem; color:var(--gri); }
.site-alt a:hover{ color:var(--mor); }
.sosyal{ display:flex; gap:.5rem; margin-top:1.2rem; }
.sosyal a{ width:40px; height:40px; border-radius:50%; border:1px solid var(--cizgi); display:grid; place-items:center; color:var(--mor-koyu); }
.sosyal a:hover{ background:var(--mor); border-color:var(--mor); color:#fff; }
.telif{ border-top:1px solid var(--cizgi); margin-top:3rem; padding:1.4rem 0; font-size:.84rem; color:var(--gri); }

/* ---------- Sepet modalı ---------- */
.modal-content{ border:0; border-radius:20px; background:var(--kagit); }
.sepet-bas{ border-bottom:1px solid var(--cizgi); padding:1.4rem 1.6rem; display:flex; align-items:center; justify-content:space-between; }
.sepet-bas h2{ font-size:1.7rem; margin:0; }
.sepet-govde{ padding:1.2rem 1.6rem; max-height:min(52vh,440px); overflow-y:auto; }
.sepet-alt{ border-top:1px solid var(--cizgi); padding:1.3rem 1.6rem 1.6rem; }
.satir{ display:flex; gap:1rem; padding:.9rem 0; border-bottom:1px solid var(--cizgi); }
.satir:last-child{ border-bottom:0; }
.satir .gorsel{ width:76px; height:92px; flex:0 0 auto; border-radius:10px; overflow:hidden; background:var(--lila); }
.satir .gorsel img{ width:100%; height:100%; object-fit:cover; }
.satir .bilgi{ flex:1; min-width:0; }
.satir .ad{ font-family:'Cormorant Garamond',serif; font-size:1.15rem; }
.satir .not{ font-size:.78rem; color:var(--gri); }
.satir .birim{ font-size:.85rem; color:var(--gri); }
.adet{ display:inline-flex; align-items:center; border:1px solid var(--cizgi); border-radius:100px; overflow:hidden; margin-top:.4rem; background:#fff; }
.adet button{ width:32px; height:32px; border:0; background:none; color:var(--mor-koyu); font-size:1rem; line-height:1; }
.adet button:hover{ background:var(--lila); }
.adet span{ min-width:26px; text-align:center; font-size:.9rem; }
.satir .sag{ text-align:right; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-end; }
.satir .tutar{ font-weight:500; white-space:nowrap; }
.satir .sil{ border:0; background:none; color:var(--gri); font-size:.82rem; padding:0; }
.satir .sil:hover{ color:var(--gul); }
.kargo-bar{ height:5px; border-radius:100px; background:var(--cizgi); overflow:hidden; margin:.5rem 0 1.1rem; }
.kargo-bar i{ display:block; height:100%; background:linear-gradient(90deg,var(--mor),var(--gul)); border-radius:100px; transition:width .35s ease; }
.ozet{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:1rem; }
.ozet .t{ font-family:'Cormorant Garamond',serif; font-size:1.9rem; }
.bos{ text-align:center; padding:2.5rem 1rem; }
.bos i{ font-size:2.4rem; color:var(--altin); }
.bos p{ margin:.8rem auto 1.2rem; color:var(--gri); max-width:34ch; }

/* Sepete eklendi bildirimi */
.bildirim{ position:fixed; left:50%; bottom:26px; transform:translate(-50%,140%); z-index:1090;
  background:var(--mor-koyu); color:#fff; padding:.75rem 1.4rem; border-radius:100px; font-size:.9rem;
  box-shadow:var(--golge); transition:transform .35s cubic-bezier(.2,.7,.3,1); }
.bildirim.gorun{ transform:translate(-50%,0); }

@media(prefers-reduced-motion:no-preference){
  .ac{ opacity:0; transform:translateY(14px); animation:ac .7s cubic-bezier(.2,.7,.3,1) forwards; }
  .ac.g2{ animation-delay:.08s } .ac.g3{ animation-delay:.16s } .ac.g4{ animation-delay:.24s }
  @keyframes ac{ to{ opacity:1; transform:none; } }
}

/* Alt sayfalarda kullanılan ek durum renkleri (mevcut :root paletine ek) */
:root{
  --basari:#2F8555;
  --basari-soluk:#EAF6EE;
  --hata:#C23D5B;
  --hata-soluk:#FBEAEE;
  --uyari-soluk:#FBF3E4;
}

/* ---------- Müşteri paneli menüsü (sidebar.php) ---------- */
.yan-menu{ background:#fff; border:1px solid var(--cizgi); border-radius:var(--r); padding:1.4rem; }
.yan-menu-kart{ display:flex; align-items:center; gap:.85rem; padding-bottom:1.2rem; margin-bottom:1.2rem; border-bottom:1px solid var(--cizgi); }
.yan-menu-avatar{ width:48px; height:48px; border-radius:50%; background:var(--lila); color:var(--mor); display:grid; place-items:center; font-size:1.3rem; flex:0 0 auto; }
.yan-menu-ad{ font-family:'Cormorant Garamond',serif; font-size:1.15rem; }
.yan-menu-eposta{ font-size:.8rem; color:var(--gri); }
.yan-menu-liste{ list-style:none; margin:0; padding:0; }
.yan-menu-liste li{ margin-bottom:.2rem; }
.yan-menu-liste a,.yan-menu-liste button{ display:flex; align-items:center; gap:.7rem; padding:.65rem .7rem; border-radius:10px; font-size:.92rem; color:var(--mor-koyu); }
.yan-menu-liste button{ cursor:pointer; }
.yan-menu-liste a:hover,.yan-menu-liste button:hover{ background:var(--lila-soluk); color:var(--mor); }
.yan-menu-liste a.aktif{ background:var(--lila); color:var(--mor); font-weight:500; }
.yan-menu-liste i{ font-size:1.05rem; color:var(--altin); width:1.2em; text-align:center; }
@media(max-width:991px){
  .yan-menu{ padding:1rem; }
  .yan-menu-kart{ display:none; }
  .yan-menu-liste{ display:flex; gap:.4rem; overflow-x:auto; padding-bottom:.2rem; scrollbar-width:none; }
  .yan-menu-liste::-webkit-scrollbar{ display:none; }
  .yan-menu-liste li{ margin-bottom:0; flex:0 0 auto; }
  .yan-menu-liste a,.yan-menu-liste button{ white-space:nowrap; }
}

/* ---------- İç sayfa başlığı ---------- */
.ic-bas{ background:var(--lila-soluk); border-bottom:1px solid var(--cizgi); padding:2rem 0 2.2rem; }
.ic-bas .yol{ margin-bottom:.6rem; }
.ic-bas h1{ margin:0; }
.ic-bas p{ margin:.5rem 0 0; color:var(--gri); }

/* ---------- Breadcrumb ---------- */
.yol{ font-size:.82rem; color:var(--gri); }
.yol a{ color:var(--gri); }
.yol a:hover{ color:var(--mor); }

/* ---------- Ürün filtresi ---------- */
.filtre{ background:#fff; border:1px solid var(--cizgi); border-radius:var(--r); padding:1.5rem; }
.filtre h3{ font-size:1rem; margin-bottom:.9rem; }
.filtre .grup{ padding-bottom:1.3rem; margin-bottom:1.3rem; border-bottom:1px solid var(--cizgi); }
.filtre .grup:last-child{ border-bottom:0; margin-bottom:0; padding-bottom:0; }
.filtre .form-check{ margin-bottom:.5rem; font-size:.9rem; }
.filtre .form-check-input:checked{ background-color:var(--mor); border-color:var(--mor); }

/* ---------- Sayfalama ---------- */
.sayfalama{ display:flex; justify-content:center; gap:.4rem; margin-top:3rem; list-style:none; padding:0; }
.sayfalama a,.sayfalama span{ width:38px; height:38px; border-radius:50%; display:grid; place-items:center; font-size:.88rem; color:var(--mor-koyu); border:1px solid transparent; }
.sayfalama a:hover{ border-color:var(--cizgi); }
.sayfalama .aktif{ background:var(--mor); color:#fff; }

/* ---------- Boş durum ---------- */
.bos-durum{ text-align:center; padding:4rem 1rem; }
.bos-durum i{ font-size:2.6rem; color:var(--altin); }
.bos-durum h2{ margin:1rem 0 .5rem; }
.bos-durum p{ color:var(--gri); max-width:44ch; margin-inline:auto; }

/* ---------- Ürün yorumu ---------- */
.yorum{ padding:1.3rem 0; border-bottom:1px solid var(--cizgi); }
.yorum:last-child{ border-bottom:0; }
.yorum .yildiz{ color:var(--altin); font-size:.85rem; }
.yorum .ad{ font-weight:500; font-size:.92rem; }
.yorum .tarih{ font-size:.78rem; color:var(--gri); }
.yorum p{ margin:.5rem 0 0; font-size:.92rem; }

/* ---------- Ödeme adım göstergesi ---------- */
.adim{ display:flex; align-items:center; gap:.5rem; list-style:none; padding:0; margin:0 0 2.5rem; flex-wrap:wrap; }
.adim li{ display:flex; align-items:center; gap:.6rem; font-size:.88rem; color:var(--gri); white-space:nowrap; }
.adim li .no{ width:28px; height:28px; border-radius:50%; border:1px solid var(--cizgi); display:grid; place-items:center; font-size:.8rem; color:var(--mor-koyu); flex:0 0 auto; background:#fff; }
.adim li.tamam .no{ background:var(--altin); border-color:var(--altin); color:#fff; }
.adim li.aktif{ color:var(--mor-koyu); font-weight:500; }
.adim li.aktif .no{ background:var(--mor); border-color:var(--mor); color:#fff; }
.adim .cizgi{ flex:1 1 24px; height:1px; background:var(--cizgi); min-width:16px; }

/* ---------- İçerik kutusu ---------- */
.kutu{ background:#fff; border:1px solid var(--cizgi); border-radius:var(--r); padding:1.4rem 1.6rem; }
.kutu h2,.kutu h3{ font-size:1.05rem; margin-bottom:.8rem; }

/* ---------- Sipariş durumu rozeti ---------- */
.durum{ display:inline-flex; align-items:center; gap:.4rem; font-size:.78rem; padding:.35rem .8rem; border-radius:100px; }
.durum::before{ content:""; width:7px; height:7px; border-radius:50%; background:currentColor; }
.durum.hazirlaniyor{ background:var(--lila-soluk); color:var(--mor); }
.durum.kargoda{ background:var(--uyari-soluk); color:var(--altin); }
.durum.teslim{ background:var(--basari-soluk); color:var(--basari); }
.durum.iptal{ background:var(--hata-soluk); color:var(--hata); }

/* ---------- Form alanı ---------- */
.form-alan{ margin-bottom:1.2rem; }
.form-alan label{ display:block; font-size:.85rem; margin-bottom:.4rem; color:var(--mor-koyu); }
.form-alan .form-control,.form-alan .form-select{ border:1px solid var(--cizgi); border-radius:12px; padding:.7rem 1rem; font-size:.92rem; }
.form-alan .form-control:focus,.form-alan .form-select:focus{ border-color:var(--mor); box-shadow:0 0 0 3px rgba(122,33,133,.12); }
.form-alan .yardim{ font-size:.78rem; color:var(--gri); margin-top:.35rem; }

/* ---------- Sade tablo ---------- */
.tablo-kaydir{ overflow-x:auto; }
.tablo{ width:100%; border-collapse:collapse; }
.tablo th{ text-align:left; font-size:.8rem; font-weight:500; color:var(--gri); padding:.7rem 1rem; border-bottom:1px solid var(--cizgi); white-space:nowrap; }
.tablo td{ padding:1rem; border-bottom:1px solid var(--cizgi); font-size:.9rem; vertical-align:middle; }
@media(max-width:767px){
  .tablo thead{ display:none; }
  .tablo, .tablo tbody, .tablo tr, .tablo td{ display:block; width:100%; }
  .tablo tr{ border:1px solid var(--cizgi); border-radius:var(--r); margin-bottom:1rem; padding:.3rem 1rem; }
  .tablo td{ border-bottom:0; padding:.5rem 0; display:flex; justify-content:space-between; align-items:center; gap:1rem; }
  .tablo td::before{ content:attr(data-th); font-size:.78rem; color:var(--gri); }
}

/* ---------- Sipariş zaman çizelgesi ---------- */
.zaman-cizelgesi{ list-style:none; padding:0; margin:0; }
.zaman-cizelgesi li{ position:relative; padding-left:2.2rem; padding-bottom:1.8rem; }
.zaman-cizelgesi li:last-child{ padding-bottom:0; }
.zaman-cizelgesi li::before{ content:""; position:absolute; left:0; top:2px; width:14px; height:14px; border-radius:50%; background:#fff; border:2px solid var(--cizgi); }
.zaman-cizelgesi li::after{ content:""; position:absolute; left:6px; top:16px; bottom:0; width:1px; background:var(--cizgi); }
.zaman-cizelgesi li:last-child::after{ display:none; }
.zaman-cizelgesi li.tamam::before{ background:var(--altin); border-color:var(--altin); }
.zaman-cizelgesi li.aktif::before{ background:var(--mor); border-color:var(--mor); }
.zaman-cizelgesi .baslik{ font-weight:500; }
.zaman-cizelgesi .tarih{ font-size:.8rem; color:var(--gri); }

/* ---------- Hediye kutusu oluşturucu ---------- */
.urun-sec{ display:block; width:100%; border:2px solid transparent; border-radius:var(--r); padding:.4rem; background:none; text-align:left; transition:border-color .15s ease; }
.urun-sec .medya{ position:relative; aspect-ratio:4/5; margin-bottom:.6rem; border-radius:50% 50% var(--r) var(--r) / 4% 4% 4% 4%; overflow:hidden; background:var(--lila); }
.urun-sec .medya img{ width:100%; height:100%; object-fit:cover; }
.urun-sec .secili-isaret{ position:absolute; top:8px; right:8px; width:24px; height:24px; border-radius:50%; background:var(--mor); color:#fff; display:none; place-items:center; font-size:.75rem; }
.urun-sec.secili{ border-color:var(--mor); }
.urun-sec.secili .secili-isaret{ display:grid; }
.renk-sec{ display:flex; gap:.7rem; flex-wrap:wrap; }
.renk-sec button{ width:36px; height:36px; border-radius:50%; border:2px solid transparent; padding:0; cursor:pointer; }
.renk-sec button.secili{ border-color:var(--mor-koyu); box-shadow:0 0 0 2px #fff inset; }

/* ---------- SSS accordion ---------- */
.sss .accordion-item{ background:transparent; border:0; border-bottom:1px solid var(--cizgi); border-radius:0; }
.sss .accordion-button{ background:transparent; font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:600; color:var(--mor-koyu); padding:1.2rem 0; box-shadow:none; }
.sss .accordion-button:not(.collapsed){ color:var(--mor); background:transparent; }
.sss .accordion-body{ padding:0 0 1.4rem; color:var(--gri); font-size:.94rem; }
