:root{
  --bg:#f6f5f2;
  --card:#ffffff;
  --text:#111827;
  --muted:#6b7280;
  --brand:#d97706; /* amber */
  --brand2:#111827; /* dark */
  --line:rgba(17,24,39,0.10);
  --radius:16px;
  --shadow:0 10px 24px rgba(17,24,39,.08);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
a{color:inherit;text-decoration:none}
.container{
  max-width:1200px;
  margin:0 auto;
  padding:16px;
}
.topbar{
  position:sticky;top:0;z-index:20;
  background:rgba(243,240,234,.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.topbar-inner{
  display:flex;align-items:center;gap:12px;
}
.brand{
  display:flex;align-items:center;gap:10px;
  font-weight:600;
  letter-spacing:.2px;
}
.brand-badge{
  width:36px;height:36px;border-radius:12px;
  background:linear-gradient(135deg,var(--brand),#f97316);
  display:grid;place-items:center;
  color:#fff;font-weight:700;
}
.search{
  flex:1;display:flex;gap:8px;
}
.search input{
  width:100%;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  outline:none;
  background:#fff;
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:8px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
  cursor:pointer;
}
.btn.primary{
  background:var(--brand2);
  border-color:transparent;
  color:#fff;
  font-weight:600;
}
.btn.danger{
  background:#ef4444;border-color:#ef4444;color:#fff;
}
.btn.small{padding:8px 10px;border-radius:12px;font-size:14px}
.grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
@media (max-width: 980px){.grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width: 720px){.grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 430px){.grid{grid-template-columns:repeat(1,1fr)}}
.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.imgwrap{display:block;background:#fff}
.card .thumb{
  aspect-ratio:4/3;
  background:#fff;
  display:block;
  width:100%;
  object-fit:contain;
}
.card-body{padding:12px}
.card-title{font-weight:600;margin:0 0 6px 0;line-height:1.2}
.card-meta{font-size:13px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.badge{
  display:inline-flex;align-items:center;
  padding:4px 10px;border-radius:999px;
  border:1px solid var(--line);
  background:rgba(245,158,11,.12);
  color:#92400e;
  font-weight:600;
  font-size:12px;
}

/* Order status badges */
.badge.status{
  background: rgba(17,24,39,.06);
  color:#111827;
  border-color: rgba(17,24,39,.12);
  font-weight:800;
  letter-spacing:.15px;
}
.badge.status::before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.55;margin-right:6px;}
.badge.status.s-pending{background:rgba(59,130,246,.12);color:rgba(37,99,235,1);border-color:rgba(59,130,246,.22);}
.badge.status.s-awaiting{background:rgba(245,158,11,.14);color:rgba(180,83,9,1);border-color:rgba(245,158,11,.25);}
.badge.status.s-cod{background:rgba(168,85,247,.12);color:rgba(126,34,206,1);border-color:rgba(168,85,247,.22);}
.badge.status.s-paid{background:rgba(16,185,129,.14);color:rgba(5,150,105,1);border-color:rgba(16,185,129,.24);}
.badge.status.s-processing{background:rgba(99,102,241,.12);color:rgba(67,56,202,1);border-color:rgba(99,102,241,.22);}
.badge.status.s-shipped{background:rgba(14,165,233,.12);color:rgba(2,132,199,1);border-color:rgba(14,165,233,.22);}
.badge.status.s-delivered, .badge.status.s-completed{background:rgba(34,197,94,.14);color:rgba(22,163,74,1);border-color:rgba(34,197,94,.24);}
.badge.status.s-refunded{background:rgba(236,72,153,.12);color:rgba(190,24,93,1);border-color:rgba(236,72,153,.22);}
.badge.status.s-failed{background:rgba(239,68,68,.12);color:rgba(220,38,38,1);border-color:rgba(239,68,68,.22);}
.badge.status.s-cancelled{background:rgba(148,163,184,.16);color:rgba(71,85,105,1);border-color:rgba(148,163,184,.30);}
.badge.status.s-unknown{background:rgba(148,163,184,.16);color:rgba(71,85,105,1);border-color:rgba(148,163,184,.30);}

/* Ödeme yöntemi badge */
.badge.method{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(17,24,39,.10);font-weight:800;font-size:12px;line-height:1;white-space:nowrap}
.badge.method::before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.55}
.badge.method.pm-card{background:rgba(59,130,246,.12);color:rgba(37,99,235,1);border-color:rgba(59,130,246,.22)}
.badge.method.pm-bank{background:rgba(245,158,11,.14);color:rgba(180,83,9,1);border-color:rgba(245,158,11,.25)}
.badge.method.pm-cod{background:rgba(168,85,247,.12);color:rgba(126,34,206,1);border-color:rgba(168,85,247,.22)}
.badge.method.pm-unknown{background:rgba(148,163,184,.16);color:rgba(71,85,105,1);border-color:rgba(148,163,184,.30)}

.price{display:flex;align-items:baseline;gap:8px;margin-top:10px}
.price .new{font-weight:700;font-size:18px}
.p-name{font-weight:600;line-height:1.2;margin:0 0 6px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-name a{display:block}
.p-desc{font-size:13px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}
.variants{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.variant-btn{cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;font-size:13px;font-weight:700;line-height:1}
.variant-btn.active{background:rgba(245,158,11,.18);border-color:rgba(245,158,11,.55)}
.addcart{margin-top:10px}
.price .old{color:var(--muted);text-decoration:line-through;font-size:13px}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:8px 0 12px}
.section-title h2{margin:0;font-size:18px}
.hero{
  border-radius:22px;
  padding:18px;
  background:linear-gradient(135deg,rgba(245,158,11,.18),rgba(249,115,22,.12));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.hero h1{margin:0 0 6px 0;font-size:22px}
.hero p{margin:0;color:var(--muted)}

.flex{display:flex;gap:14px;align-items:flex-start}
.flex .grow{flex:1}
@media (max-width: 820px){.flex{flex-direction:column}}

.form{
  display:grid;
  gap:10px;
}
.input, textarea, select{
  width:100%;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  outline:none;
  background:#fff;
}
textarea{min-height:110px;resize:vertical}
.muted{color:var(--muted)}

.flash{padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:#fff;margin:10px 0}
.flash.success{border-color:rgba(16,185,129,.35);background:rgba(16,185,129,.08)}
.flash.error{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.06)}

.bottom-nav{
  position:fixed;left:0;right:0;bottom:0;z-index:30;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  border-top:1px solid var(--line);
}
.bottom-nav .inner{
  max-width:1100px;margin:0 auto;
  display:flex;justify-content:space-around;
  padding:10px 12px;
}
.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--muted)}
.nav-item svg{width:22px;height:22px}
.nav-item.active{color:var(--brand2)}
.nav-item.active svg{color:var(--brand)}

.footer-pad{height:76px}

.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid var(--line);padding:10px;text-align:left;font-size:14px}

.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gallery img{width:100%;border-radius:14px;border:1px solid var(--line);object-fit:cover}
@media (max-width:720px){.gallery{grid-template-columns:repeat(2,1fr)}}

.piece-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px;
}
.piece-card{
  border:1px dashed rgba(17,24,39,.22);
  border-radius:16px;
  padding:12px;
  background:rgba(255,255,255,.6);
  text-align:center;
  font-weight:600;
}

.admin-wrap{max-width:1200px;margin:0 auto;padding:16px}
.admin-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.admin-top h1{margin:0}
.admin-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:14px;margin-top:12px}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Admin header: renkli ikonlar (Font Awesome) */
.topbar .admin-actions .btn i{color:var(--ic, var(--brand2))}


/* --- KirpiPoster UI extras (PDF benzeri görünüm) --- */
.wrap{max-width:1200px;margin:0 auto;padding:12px 16px;}
.logo{display:flex;align-items:center;gap:10px;}
.logo-badge,.logo-badge{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),#f97316);color:#fff;font-weight:700;}
.logo-title{font-weight:700;line-height:1.1}
.logo-sub{font-size:12px;color:var(--muted)}
.top-actions{display:flex;gap:8px;align-items:center}

.badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.badge.alt{background:rgba(17,24,39,.08);color:#111827}
.title{font-weight:700;margin:6px 0 4px 0;line-height:1.2}
.price .now{font-weight:700;font-size:18px}
.price.big .now{font-size:26px}
.price .old{color:var(--muted);text-decoration:line-through;font-size:13px}
.small{font-size:12px}
.divider{height:1px;background:var(--line);margin:12px 0}
.section{margin-top:16px}
.section-head h2{margin:0 0 4px 0}
.section-head p{margin:0;color:var(--muted)}

.hero-inner{display:grid;gap:12px}
.tag{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:#92400e}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.set-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}
@media (max-width:820px){.set-grid{grid-template-columns:1fr}}
.set-card{display:block;border:1px solid var(--line);border-radius:18px;padding:12px;background:rgba(255,255,255,.8)}
.set-title{font-weight:700}
.set-sub{font-size:12px;color:var(--muted)}
.set-mock{height:44px;border-radius:14px;border:1px dashed rgba(17,24,39,.22);margin-top:8px;background:rgba(245,158,11,.08)}

.cat-panel{position:fixed;top:0;left:0;bottom:0;width:320px;max-width:92vw;background:#fff;border-right:1px solid var(--line);box-shadow:var(--shadow);transform:translateX(-110%);transition:.22s ease;z-index:40;}
.cat-panel.open{transform:translateX(0)}
.cat-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid var(--line)}
.cat-panel-title{font-weight:700}
.cat-panel-body{padding:12px;overflow:auto;height:calc(100% - 60px)}
.cat-tree{list-style:none;margin:0;padding:0}
.cat-tree li{padding:6px 0}
.cat-tree a{display:inline-flex;padding:8px 10px;border-radius:12px;border:1px solid rgba(17,24,39,.08);background:rgba(17,24,39,.03)}
.cat-tree ul{margin-left:14px;margin-top:6px}

.flash.ok{border-color:rgba(16,185,129,.35);background:rgba(16,185,129,.08)}
.flash.err{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.06)}

.bottom-nav a{flex:1;padding:10px 8px;display:flex;flex-direction:column;align-items:center;gap:4px}
.bottom-nav .ico{font-size:18px}
.bottom-nav .lbl{font-size:11px;color:var(--muted)}

.product{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:820px){.product{grid-template-columns:1fr}}
.product-gallery .main{width:100%;border-radius:18px;border:1px solid var(--line);object-fit:cover;aspect-ratio:4/3;background:#ddd}
.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.thumb img{width:72px;height:72px;border-radius:14px;border:1px solid var(--line);object-fit:cover}
.box{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.86);padding:12px;margin-top:10px}
.box-title{font-weight:700;margin-bottom:10px}
.row{display:grid;gap:6px;margin-bottom:10px}
.row label{font-size:12px;color:var(--muted);font-weight:700}
.row input,
.row textarea,
.row select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:14px;outline:none;background:#fff;font:inherit}
.row textarea{resize:vertical}
.row input:focus,
.row textarea:focus,
.row select:focus{box-shadow:0 0 0 3px rgba(245,158,11,.18);border-color:rgba(245,158,11,.6)}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (max-width:720px){.grid2{grid-template-columns:1fr}}
.radio{display:flex;gap:10px;align-items:center;margin:6px 0}

.checkout{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
@media (max-width:860px){.checkout{grid-template-columns:1fr}}
.sum-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:10px 0}
.summary-total{font-weight:700;font-size:20px}

.review{border:1px solid rgba(17,24,39,.08);border-radius:16px;padding:10px;background:#fff;margin:10px 0}
.review-top{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.stars{color:#f59e0b}

/* print */
@media print{
  .topbar,.bottom-nav,.btn{display:none !important}
  .container{max-width:none}
}

/* Home slider */
.home-slider{position:relative;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;box-shadow:var(--shadow);height:260px;margin-bottom:8px}
@media (max-width:920px){.home-slider{height:220px}}
@media (max-width:620px){.home-slider{height:170px;border-radius:18px}}
.hs-track{position:relative;width:100%;height:100%}
.hs-slide{position:absolute;inset:0;opacity:0;pointer-events:none;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92)}
.hs-slide img{width:100%;height:100%;object-fit:contain;display:block}
.home-slider[data-fit="cover"] .hs-slide img{object-fit:cover}
.home-slider[data-fit="fill"] .hs-slide img{object-fit:fill}

.hs-slide.is-active{opacity:1;pointer-events:auto}
.hs-caption{position:absolute;left:14px;bottom:14px;background:rgba(17,24,39,.72);color:#fff;padding:8px 10px;border-radius:14px;font-weight:600;font-size:12.5px;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.hs-nav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:999px;border:1px solid rgba(17,24,39,.15);background:rgba(255,255,255,.86);box-shadow:0 6px 18px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;cursor:pointer;opacity:.0;transition:.18s ease;user-select:none}
.home-slider:hover .hs-nav{opacity:1}
.hs-prev{left:12px}
.hs-next{right:12px}

.hs-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:8px;justify-content:center;align-items:center}
.hs-dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(17,24,39,.25);background:rgba(255,255,255,.78);cursor:pointer;transition:.18s ease}
.hs-dot.active{transform:scale(1.15);background:rgba(245,158,11,.95);border-color:rgba(245,158,11,.95)}

@keyframes hsFade{from{opacity:0}to{opacity:1}}
@keyframes hsSlide{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}
@keyframes hsZoom{from{opacity:0;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}

.hs-slide.fx-fade{animation:hsFade .45s ease both}
.hs-slide.fx-slide{animation:hsSlide .5s cubic-bezier(.2,.8,.2,1) both}
.hs-slide.fx-zoom{animation:hsZoom .5s cubic-bezier(.2,.8,.2,1) both}

/* --- Site header (zengin, işlevsel) --- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(243,240,234,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.top-strip{background:rgba(17,24,39,.06);border-bottom:1px solid rgba(17,24,39,.08)}
.top-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0}
.social{display:flex;gap:8px;align-items:center}
.soc{width:30px;height:30px;border-radius:12px;border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.75);display:grid;place-items:center}
.soc svg{width:16px;height:16px;fill:rgba(17,24,39,.86)}
.top-links{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tlink{font-size:12px;color:rgba(17,24,39,.78);padding:6px 10px;border-radius:999px;border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.65)}
.header-main{display:flex;align-items:center;gap:12px;padding:12px 0}
.burger{width:42px;height:42px;border-radius:14px;border:1px solid rgba(17,24,39,.12);background:rgba(255,255,255,.8);display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.burger span{width:18px;height:2px;background:rgba(17,24,39,.72);border-radius:999px}
.logo{display:flex;align-items:center;gap:10px;font-weight:600}
.logo-text{font-weight:600}
.logo-img{height:38px;width:auto;border-radius:12px;border:1px solid rgba(17,24,39,.10);background:#fff}
.search-wide{flex:1;display:flex;gap:8px;align-items:center}
.search-wide input{flex:1;padding:12px 14px;border:1px solid var(--line);border-radius:14px;outline:none;background:#fff}
.header-actions{display:flex;gap:10px;align-items:center}
.hact{display:flex;gap:8px;align-items:center;padding:10px 12px;border:1px solid rgba(17,24,39,.12);border-radius:14px;background:rgba(255,255,255,.75);position:relative}
.hact .badge{position:absolute;right:-6px;top:-6px;background:rgba(245,158,11,.95);border-color:rgba(245,158,11,.95);color:#111827}
.nav-wrap{border-top:1px solid rgba(17,24,39,.08);background:rgba(255,255,255,.55)}
.nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:10px 0}
.nav-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:rgba(17,24,39,.82);padding:8px 10px;border-radius:12px}
.nav-link:hover{background:rgba(245,158,11,.14)}
.nav-dd{position:relative}
.mega{position:absolute;left:0;top:100%;min-width:520px;max-width:860px;background:#fff;border:1px solid rgba(17,24,39,.12);border-radius:18px;box-shadow:var(--shadow);padding:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.16s ease;z-index:60}
.nav-dd:hover .mega{opacity:1;transform:translateY(0);pointer-events:auto}
.mega-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mega-title{display:block;font-weight:600;margin-bottom:6px}
.mega ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mega a{font-size:13px;color:rgba(17,24,39,.80)}
.mega a:hover{color:rgba(245,158,11,.95)}
.mega-sub{margin-top:6px;padding-left:12px;border-left:1px dashed rgba(17,24,39,.18)}

@media (max-width: 920px){
  .burger{display:flex}
  .search-wide{display:none}
  .mega{display:none}
}

/* --- Home sections --- */
.home-grid{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}
@media (min-width: 1220px){.home-grid{grid-template-columns:repeat(5,1fr)}}
@media (max-width: 980px){.home-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width: 720px){.home-grid{grid-template-columns:repeat(2,1fr)}}

.product-card .imgwrap{position:relative}
.pc-badges{position:absolute;left:10px;right:10px;top:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;pointer-events:none}
.pc-left,.pc-right{display:flex;flex-wrap:wrap;gap:8px}
.pc-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border-radius:999px;font-weight:650;font-size:11px;letter-spacing:.2px;border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.86);box-shadow:0 10px 22px rgba(0,0,0,.08);backdrop-filter:blur(6px)}
.pc-badge i{font-size:11px}
.pc-new{background:linear-gradient(135deg, rgba(34,197,94,.95), rgba(20,184,166,.95));border-color:rgba(34,197,94,.15);color:#fff}
.pc-best{background:linear-gradient(135deg, rgba(168,85,247,.95), rgba(236,72,153,.95));border-color:rgba(168,85,247,.15);color:#fff}
.pc-sale{background:linear-gradient(135deg, rgba(239,68,68,.95), rgba(249,115,22,.95));border-color:rgba(239,68,68,.15);color:#fff}
.price.is-campaign .new{color:rgba(239,68,68,.95)}
.price.is-campaign .old{display:block;margin-bottom:2px}

.review-strip{margin:10px 0 4px}
.review-strip-inner{max-width:1200px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width: 980px){.review-strip-inner{grid-template-columns:1fr}}
.review-pill{background:rgba(255,255,255,.86);border:1px solid rgba(17,24,39,.10);border-radius:18px;padding:12px;box-shadow:var(--shadow)}
.rp-head{display:flex;gap:10px;align-items:center}
.rp-avatar{width:40px;height:40px;border-radius:14px;border:1px solid rgba(17,24,39,.12);background:rgba(17,24,39,.04);display:grid;place-items:center;overflow:hidden}
.rp-avatar img{width:100%;height:100%;object-fit:cover}
.rp-meta{display:flex;flex-direction:column;gap:2px}
.rp-stars{line-height:1}
.rp-star{font-size:12px;color:rgba(17,24,39,.22)}
.rp-star.on{color:rgba(245,158,11,.95)}
.rp-name{font-weight:600;font-size:12.5px}
.rp-text{font-size:13px;color:rgba(17,24,39,.72);margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:34px}

/* --- Home product review ticker (borsa şeridi) --- */
.review-strip.is-ticker{margin:10px 0 4px}
.review-strip.is-ticker .review-strip-inner{max-width:1200px;margin:0 auto;padding:0 16px;display:block}
.review-strip.is-ticker .rt-wrap{position:relative;overflow:hidden;height:44px;border-radius:999px;border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.86);box-shadow:var(--shadow);display:flex;align-items:center}
.review-strip.is-ticker .rt-label{flex:0 0 auto;height:100%;display:flex;align-items:center;gap:8px;padding:0 14px;font-weight:800;font-size:12px;letter-spacing:.3px;color:rgba(17,24,39,.70);border-right:1px solid rgba(17,24,39,.10);white-space:nowrap}
.review-strip.is-ticker .rt-label i{font-size:14px}
.review-strip.is-ticker .rt-viewport{position:relative;flex:1;overflow:hidden;height:100%}
.review-strip.is-ticker .rt-viewport:before,.review-strip.is-ticker .rt-viewport:after{content:"";position:absolute;top:0;width:28px;height:100%;z-index:2;pointer-events:none}
.review-strip.is-ticker .rt-viewport:before{left:0;background:linear-gradient(90deg, rgba(255,255,255,.86), rgba(255,255,255,0))}
.review-strip.is-ticker .rt-viewport:after{right:0;background:linear-gradient(270deg, rgba(255,255,255,.86), rgba(255,255,255,0))}
.review-strip.is-ticker .rt-track{display:flex;align-items:center;gap:18px;height:100%;white-space:nowrap;will-change:transform;animation:rt-marquee 38s linear infinite}
.review-strip.is-ticker:hover .rt-track{animation-play-state:paused}
.review-strip.is-ticker .rt-group{display:flex;align-items:center;gap:18px;padding-left:18px}
.review-strip.is-ticker .rt-item{display:inline-flex;align-items:center;gap:10px;color:rgba(17,24,39,.76);text-decoration:none;font-size:13px;cursor:default}
.review-strip.is-ticker .rt-item:hover{text-decoration:none}
.review-strip.is-ticker .rt-stars{font-size:12px;letter-spacing:.5px;color:rgba(245,158,11,.95);flex:0 0 auto}
.review-strip.is-ticker .rt-name{font-weight:800;font-size:12.5px}
.review-strip.is-ticker .rt-text{opacity:.9;max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.review-strip.is-ticker .rt-product{opacity:.65;font-size:12px}
@keyframes rt-marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media (max-width: 720px){.review-strip.is-ticker .rt-text{max-width:260px}}

/* --- Best sellers carousel --- */
.carousel{position:relative}
.carousel-track{
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:4px 44px 8px 4px;
  -webkit-overflow-scrolling:touch;
  border-radius:18px;
  scrollbar-width:none; /* Firefox - hide bar */
}
.carousel-track::-webkit-scrollbar{height:0}
.carousel-track iframe{display:none !important}
.carousel-item{flex:0 0 260px;scroll-snap-align:start}
@media (max-width: 720px){.carousel-item{flex-basis:240px}}
.car-nav{position:absolute;top:45%;transform:translateY(-50%);width:40px;height:40px;border-radius:999px;border:1px solid rgba(17,24,39,.12);background:rgba(255,255,255,.90);box-shadow:0 10px 25px rgba(0,0,0,.10);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;cursor:pointer;z-index:5}
.car-prev{left:4px}
.car-next{right:4px}
.car-nav:disabled{opacity:.35;cursor:not-allowed}
.carousel.no-scroll .car-nav{display:none}
.carousel.no-scroll .carousel-track{padding-right:4px}

/* --- Admin switch --- */
.tog{position:relative;display:inline-block;width:42px;height:24px;vertical-align:middle}
.tog input{opacity:0;width:0;height:0}
.tog span{position:absolute;inset:0;cursor:pointer;background:rgba(17,24,39,.18);border-radius:999px;transition:.2s ease}
.tog span:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:999px;transition:.2s ease;box-shadow:0 6px 16px rgba(0,0,0,.16)}
.tog input:checked + span{background:rgba(245,158,11,.95)}
.tog input:checked + span:before{transform:translateX(18px)}

/* Admin ürün anahtarları: flag'e göre renk */
.tog[data-flag="show_home"] input:checked + span{background:rgba(59,130,246,.95)}  /* mavi */
.tog[data-flag="is_new"] input:checked + span{background:rgba(34,197,94,.95)}     /* yeşil */
.tog[data-flag="is_campaign"] input:checked + span{background:rgba(239,68,68,.95)}/* kırmızı */
.tog[data-flag="is_best"] input:checked + span{background:rgba(168,85,247,.95)}  /* mor */

.tog input:focus + span{outline:2px solid rgba(99,102,241,.35); outline-offset:2px}


/* --- Product card alignment improvements --- */
.variants{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
@media (max-width: 420px){
  .variants{grid-template-columns:repeat(2, minmax(0,1fr))}
}
.variant-btn{
  width:100%;
  text-align:center;
  font-weight:600;
  border-radius:12px;
}
.addcart .btn{width:100%;}

/* --- Home section heading --- */
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:8px 0 12px}
.section-head h2{margin:0;font-size:20px;letter-spacing:.1px;font-weight:700}
.section-head p{margin:0;color:rgba(17,24,39,.65);font-size:13px}

/* --- Mobile bottom nav visibility --- */
@media (min-width: 861px){
  .bottom-nav{display:none;}
  .footer-pad{display:none;height:0;}
}
@media (max-width: 860px){
  .footer-pad{height:76px;}
}

/* --- Site footer --- */
.site-footer{
  margin-top:22px;
  background:rgba(255,255,255,.72);
  border-top:1px solid rgba(17,24,39,.10);
}
.footer-inner{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.2fr;
  gap:18px;
  padding:22px 16px;
}
@media (max-width: 980px){
  .footer-inner{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .footer-inner{grid-template-columns:1fr}
}
.f-logo{display:flex;align-items:center;gap:10px}
.f-logo img{height:34px;width:auto;border-radius:10px;border:1px solid rgba(17,24,39,.10);background:#fff}
.f-logo-badge{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),rgba(17,24,39,.92));color:#fff;font-weight:700}
.f-logo-text{font-weight:700}
.f-title{font-weight:600;margin:0 0 10px 0;color:rgba(17,24,39,.85)}
.f-link{display:flex;align-items:center;gap:8px;padding:6px 0;color:rgba(17,24,39,.72);font-size:13px}
.f-link:hover{color:rgba(217,119,6,.95)}
.f-muted{font-size:13px;color:rgba(17,24,39,.68);line-height:1.5;margin-top:10px}
.f-social{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.fs{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.75);color:rgba(17,24,39,.70)}
.fs svg{width:18px;height:18px;fill:currentColor}
.fs:hover{border-color:rgba(217,119,6,.35);color:rgba(17,24,39,.85)}
.footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 16px;
  border-top:1px solid rgba(17,24,39,.10);
}
@media (max-width: 720px){
  .footer-bottom{flex-direction:column;align-items:flex-start}
}
.f-copy{font-size:12px;color:rgba(17,24,39,.62)}
.f-mini{display:flex;gap:8px;flex-wrap:wrap}
.pill{font-size:12px;color:rgba(17,24,39,.70);border:1px solid rgba(17,24,39,.10);background:rgba(255,255,255,.75);padding:6px 10px;border-radius:999px}

/* --- Header mobile simplification --- */
@media (max-width: 720px){
  .top-links{display:none;}
  .logo-text{display:none;}
  .header-actions .hact span:not(.hicon):not(.badge){display:none;}
  .header-actions{gap:8px;}
  .hact{padding:10px 10px;}
}

/* --- Fix: product card add-to-cart button bottom align --- */
.home-grid{align-items:stretch}
.product-card{height:100%;display:flex;flex-direction:column}
.product-card .card-body{display:flex;flex-direction:column;flex:1}
.product-card .variant-scope{display:flex;flex-direction:column;flex:1;margin-top:auto}
.product-card .pc-bottom{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.product-card .addcart{margin-top:0;padding-top:0}
.product-card .price{margin-top:0}

/* --- Fix: best sellers carousel arrows + safety --- */
.carousel .car-nav{z-index:5}
.carousel-track{scroll-behavior:smooth}
#en-cok-satanlar iframe{display:none !important}

/* --- Carousel UX --- */
.carousel-track{cursor:grab}
.carousel-track.is-dragging{cursor:grabbing}


/* Mobile bottom nav visibility */
.bottom-nav{display:none}
.footer-pad{height:0}
@media (max-width: 900px){
  .bottom-nav{display:block}
  .footer-pad{height:76px}
}

/* Section ribbon */
.section-head.section-ribbon{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 12px;
  margin:0 0 12px 0;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(90deg, rgba(17,24,39,.04), rgba(255,255,255,0));
}
.section-head.section-ribbon .sr-left{
  display:flex;
  align-items:center;
  gap:10px;
}
.section-head.section-ribbon .sr-ico{
  width:34px;height:34px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  box-shadow:0 10px 18px rgba(0,0,0,.10);
}
.section-head.section-ribbon h2{
  margin:0;
  font-weight:650;
  letter-spacing:-.2px;
  font-size:18px;
}
.ribbon-new .sr-ico{background:linear-gradient(135deg, #14b8a6, #22c55e);}
.ribbon-campaign .sr-ico{background:linear-gradient(135deg, #ef4444, #f97316);}
.ribbon-best .sr-ico{background:linear-gradient(135deg, #a855f7, #ec4899);}
@media (max-width: 520px){
  .section-head.section-ribbon{padding:10px 10px;border-radius:16px}
  .section-head.section-ribbon .sr-ico{width:32px;height:32px;border-radius:13px}
  .section-head.section-ribbon h2{font-size:16px}
}

/* Admin dropdown */
.adm-dd{position:relative;display:inline-flex;align-items:center}
.adm-dd .btn{gap:8px}
.adm-dd-menu{
  position:absolute;
  /* Small visual separation BUT keep hover stable (see ::before bridge) */
  top:calc(100% + 8px);
  right:0;
  min-width:220px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:8px;
  box-shadow:0 20px 40px rgba(0,0,0,.10);
  display:none;
  z-index:50;
}
.adm-dd-menu::before{
  /* Invisible hover-bridge to prevent menu from disappearing due to the gap */
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-8px;
  height:8px;
}
.adm-dd:hover .adm-dd-menu,
.adm-dd:focus-within .adm-dd-menu{display:block}
.adm-dd-menu a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  color:var(--text);
  text-decoration:none;
  white-space:nowrap;
  font-size:13px;
}
.adm-dd-menu a:hover{background:rgba(17,24,39,.06)}
.adm-dd-menu i{width:18px;text-align:center;color:var(--ic, var(--brand2))}
.adm-dd .dd-caret{font-size:12px;opacity:.65}

/* Admin tabs */
.tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0 14px 0;
}
.tab{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border:1px solid var(--line);
  background:#fff;
  border-radius:14px;
  text-decoration:none;
  color:var(--text);
  font-weight:650;
}
.tab i{color:var(--brand2)}
.tab.active{
  border-color:rgba(14,165,233,.35);
  box-shadow:0 10px 24px rgba(14,165,233,.12);
}


/* ============================
   Pages + Catalogs
   ============================ */
.page-card{
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.page-title{
  margin: 0 0 10px 0;
  font-size: 26px;
  line-height: 1.2;
}
.page-content{
  color: var(--text);
  line-height: 1.7;
}
.page-content img{ max-width:100%; height:auto; border-radius: 12px; }
.page-content a{ color: var(--primary, #0ea5e9); }

.page-gallery{
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
.page-gallery h3{
  margin: 0 0 10px 0;
  font-size: 18px;
}
.page-gallery-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.page-gallery-item{
  display:block;
  border-radius: 14px;
  overflow:hidden;
  border: 1px solid var(--line);
  background: #fff;
}
.page-gallery-item img{
  width:100%;
  height:120px;
  object-fit:cover;
  display:block;
}
@media (max-width: 900px){
  .page-gallery-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px){
  .page-gallery-grid{ grid-template-columns: 1fr; }
  .page-gallery-item img{ height:170px; }
}

/* ============================
   Catalogs (multi-PDF)
   ============================ */
.catalog-section{margin-top:14px}
.catalog-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px 0}
.catalog-h{margin:0;font-size:18px;line-height:1.2}
.catalog-sub{font-size:12px}

.pdf-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px,1fr));gap:12px}
.pdf-card{
  border:1px solid rgba(0, 229, 255, .55);
  border-radius:18px;
  background:#fff;
  box-shadow: 0 0 0 1px rgba(0, 229, 255, .22), 0 10px 26px rgba(2, 6, 23, .08);
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.pdf-preview{position:relative;aspect-ratio: 4/5;background:transparent;overflow:hidden}
/* PDF plugin scrollbars/borders: hide by overscanning inside clipped container */
.pdf-preview object{
  width:calc(100% + 18px);
  height:calc(100% + 18px);
  margin:-9px;
  display:block;
  pointer-events:none;
  background:#fff;
  border:0;
  outline:0
}
.pdf-open-overlay{position:absolute;inset:0;display:block}
.pdf-meta{padding:12px;display:flex;flex-direction:column;gap:10px}
.pdf-title{font-weight:800;font-size:13px;line-height:1.25;min-height:34px}
.pdf-actions{display:flex;gap:10px;flex-wrap:wrap}
.pdf-actions .btn{padding:10px 12px;font-size:13px}

@media (max-width: 520px){
  .pdf-grid{grid-template-columns:1fr}
  .catalog-h{font-size:17px}
}

/* ============================
   Contact
   ============================ */
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 14px 0}
.page-head h1{margin:0;font-size:22px;line-height:1.15}
.page-head .muted{color:var(--muted);font-size:13px}
.contact-grid{display:grid;grid-template-columns: 1.2fr .8fr;gap:14px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:14px}
.contact-title{display:flex;align-items:center;gap:10px;margin:0 0 10px 0;font-size:15px}
.contact-title i{width:30px;height:30px;border-radius:12px;display:grid;place-items:center;background:rgba(245,158,11,.14);color:rgba(180,83,9,1)}
.contact-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.contact-item{display:flex;gap:10px;align-items:flex-start}
.contact-item .ci-ic{width:28px;height:28px;border-radius:12px;display:grid;place-items:center;background:rgba(17,24,39,.06);color:rgba(17,24,39,.70)}
.contact-item .ci-body{flex:1}
.contact-item .ci-label{font-size:12px;color:var(--muted);font-weight:700;margin:0}
.contact-item .ci-val{margin:2px 0 0 0;font-size:14px;font-weight:650}

.social-grid{display:flex;gap:10px;flex-wrap:wrap}
.social-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font-weight:750;font-size:13px}
.social-pill i{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:rgba(17,24,39,.06)}
.social-pill.s-ig i{background:rgba(236,72,153,.14);color:rgba(190,24,93,1)}
.social-pill.s-fb i{background:rgba(59,130,246,.14);color:rgba(37,99,235,1)}
.social-pill.s-yt i{background:rgba(239,68,68,.14);color:rgba(220,38,38,1)}
.social-pill.s-wa i{background:rgba(16,185,129,.14);color:rgba(5,150,105,1)}

.map-embed{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.map-embed iframe{width:100%;height:340px;border:0;display:block}

@media (max-width: 900px){
  .contact-grid{grid-template-columns: 1fr}
  .map-embed iframe{height:320px}
}

/* ============================
   Admin - Pages thumbnails
   ============================ */
.thumb-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.thumb-item{
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 10px;
  background: rgba(255,255,255,.03);
}
.thumb-item img{
  width:100%;
  height:110px;
  object-fit:cover;
  border-radius: 10px;
  display:block;
}

/* ============================
   Admin - Menu definitions
   ============================ */
.menu-list{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.menu-item{
  display:flex;
  gap:10px;
  padding:10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background: rgba(255,255,255,.03);
}
.menu-item.dragging{
  opacity:.65;
}
.menu-handle{
  width:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius: 10px;
  border: 1px dashed rgba(255,255,255,.15);
  background: rgba(0,0,0,.12);
  cursor: grab;
  color: rgba(255,255,255,.7);
}
.menu-body{
  flex:1;
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.menu-row{
  flex:1;
  display:grid;
  grid-template-columns: 1.2fr 180px 1.4fr auto auto auto;
  gap:8px;
  align-items:center;
}
.mi-title, .mi-url, .mi-page{
  width:100%;
}
.mi-check{
  display:flex;
  gap:6px;
  align-items:center;
  margin:0;
  font-size: 12px;
  color: rgba(255,255,255,.75);
  white-space:nowrap;
}
.mi-check span{
  display:inline-block;
}
@media (max-width: 1100px){
  .menu-row{
    grid-template-columns: 1fr 160px 1fr;
    grid-auto-rows: auto;
  }
  .mi-check{ justify-content:flex-start; }
}

/* =====================
   Cart & Checkout UI
   ===================== */
.page-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin: 14px 0 18px 0;
}
.page-head h1{ margin:0; font-size: 22px; }

.cart-layout{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:16px;
}
@media (max-width: 980px){
  .cart-layout{ grid-template-columns: 1fr; }
}

.cart-items{ display:flex; flex-direction:column; gap:10px; }
.cart-item{
  display:grid;
  grid-template-columns: 70px 1fr 140px;
  gap:12px;
  padding:12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background: rgba(255,255,255,.03);
}
@media (max-width: 640px){
  .cart-item{ grid-template-columns: 70px 1fr; }
  .ci-price{ grid-column: 2 / -1; justify-content:flex-start; }
}
.cart-item .thumb{
  width:70px; height:70px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.20);
}
.cart-item .thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

.ci-title{
  display:inline-block;
  font-weight:700;
  color: var(--text);
  text-decoration:none;
}
.ci-title:hover{ text-decoration:underline; }

.ci-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:6px;
}
.ci-meta .badge{
  font-size: 12px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.88);
}
.ci-meta .meta{
  font-size: 12px;
  color: rgba(255,255,255,.72);
}

.ci-actions{
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:10px;
  flex-wrap:wrap;
}
.ci-actions .qty{
  width:72px;
  padding:8px 10px;
}
.ci-actions .btn{ padding:8px 10px; }

.ci-price{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
  white-space:nowrap;
}
.ci-price .unit{ font-size: 12px; color: rgba(255,255,255,.65); }
.ci-price .line{ font-size: 16px; font-weight:800; }

.cart-summary .sum-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 0;
}
.cart-summary .sum-row.total{
  font-size: 16px;
  font-weight:800;
}
.cart-summary .btn.primary{ width:100%; justify-content:center; margin-top: 10px; }

/* Checkout */
.checkout-layout{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:16px;
  align-items:start;
}
@media (max-width: 980px){
  .checkout-layout{ grid-template-columns: 1fr; }
}

.checkout-form .actions-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.addr-summary{
  padding:10px 12px;
  border-radius:12px;
  border:1px dashed rgba(255,255,255,.14);
  background: rgba(255,255,255,.03);
}
.addr-summary .addr-row{ margin: 3px 0; }
.manual-address.hidden{ display:none; }

.pay-methods{ display:flex; flex-direction:column; gap:10px; }
.pm{
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.pm input{ transform: translateY(1px); }

.contract-line{ display:flex; align-items:flex-start; gap:10px; }
.linklike{
  border:0;
  background:transparent;
  padding:0;
  color: var(--brand2);
  font-weight:700;
  cursor:pointer;
}
.linklike:hover{ text-decoration:underline; }

.checkout-submit{
  width:100%;
  padding: 14px 14px;
  font-size: 16px;
  font-weight: 800;
}

.checkout-summary h3{ margin-top:0; }
.summary-items{ display:flex; flex-direction:column; gap:10px; }
.summary-item{
  display:grid;
  grid-template-columns: 44px 1fr auto;
  gap:10px;
  align-items:center;
}
.thumb-sm{
  width:44px;
  height:44px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  object-fit:cover;
  background: rgba(0,0,0,.20);
}
.si-title{ font-weight:700; }
.si-total{ font-weight:800; white-space:nowrap; }

.checkout-summary .sum-row{
  display:flex;
  justify-content:space-between;
  padding:8px 0;
}
.checkout-summary .sum-row.total{ font-weight:900; font-size: 16px; }

/* Modal (simple) */
.modal{ display:none; position:fixed; inset:0; z-index: 9999; }
.modal.open{ display:block; }
.modal-backdrop{ position:absolute; inset:0; background: rgba(0,0,0,.65); }
.modal-dialog{
  position:relative;
  width:min(860px, calc(100% - 24px));
  max-height: calc(100% - 24px);
  margin: 12px auto;
  border-radius: 16px;
  overflow:hidden;
  background: rgba(20,22,28,.98);
  border:1px solid rgba(255,255,255,.10);
  box-shadow: 0 20px 60px rgba(0,0,0,.55);
  /* Ensure content is readable on dark modal background */
  color: rgba(255,255,255,.92);
}
.modal-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.modal-title{ font-weight:900; }
.modal-close{
  width:36px;
  height:36px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
  font-size: 20px;
  cursor:pointer;
}
.modal-body{
  padding:14px;
  overflow:auto;
  max-height: calc(100vh - 120px);
  /* Plain text (no HTML tags) should still be readable */
  color: rgba(255,255,255,.88);
}
.modal-body h1,.modal-body h2,.modal-body h3,.modal-body h4{ margin: 14px 0 8px; }
.modal-body p, .modal-body li{ color: rgba(255,255,255,.88); line-height: 1.6; }

.contract-content{ line-height: 1.7; word-break: break-word; }
.contract-content.is-plain{ white-space: pre-wrap; }

/* --- Cart: polished layout (stable + responsive) --- */
.cart-grid{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}
@media (max-width:900px){.cart-grid{grid-template-columns:1fr}}

.cart-prod{display:flex;gap:12px;align-items:center}
.cart-thumb img{width:54px;height:54px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#fff}
.cart-title a{font-weight:800;color:var(--text);text-decoration:none}
.cart-title a:hover{text-decoration:underline}
.cart-meta{margin-top:3px;font-size:12px;color:var(--muted)}

.qty.qty-sm{max-width:84px}

.cart-actions{display:flex;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}

.cart-summary h3{margin:0 0 10px}
.cart-summary .sum-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0}
.cart-summary .sum-row.total{font-weight:900;font-size:18px;padding-top:10px}
.cart-summary .btn{width:100%;margin-top:12px}


/* Menu icons */
.nav-link i{font-size:.95em;opacity:.85}
.f-link i{font-size:.95em;opacity:.85}

