/* Digi-Shopfa template (Digikala-inspired) */
:root{color-scheme:light;}

/* ---------------------------------------------------------
   OC Yekan Font (project-provided files)
   /assets/fonts/yekan-font/yekan-regular.woff
   /assets/fonts/yekan-font/Yekan.eot
   /assets/fonts/yekan-font/yekan-regular.eot
--------------------------------------------------------- */
@font-face{
  font-family:'OCYekan';
  font-style:normal;
  font-weight:400;
  src:url('/assets/fonts/yekan-font/Yekan.eot');
  src:
    url('/assets/fonts/yekan-font/yekan-regular.eot?#iefix') format('embedded-opentype'),
    url('/assets/fonts/yekan-font/yekan-regular.woff') format('woff');
}
@font-face{
  font-family:'OCYekan';
  font-style:normal;
  font-weight:700;
  src:url('/assets/fonts/yekan-font/Yekan.eot');
  src:
    url('/assets/fonts/yekan-font/yekan-regular.eot?#iefix') format('embedded-opentype'),
    url('/assets/fonts/yekan-font/yekan-regular.woff') format('woff');
}
:root{
  --dg-bg:#ffffff;
  --dg-muted:#6b7280;
  --dg-text:#0f172a;
  --dg-border:#e5e7eb;
  --dg-soft:#f3f4f6;
  --dg-accent:#ef4056; /* Digikala red-ish */
  --dg-accent-2:#19bfd3;
  --dg-radius:14px;
  --dg-shadow:0 12px 30px rgba(2,6,23,.08);
}

*{box-sizing:border-box}
html,body{height:100%;overflow-x:hidden}
body.dg-body{margin:0;overflow-x:hidden;background:var(--dg-bg);color:var(--dg-text);font-family:'OCYekan', IRANYekan, Yekan, Vazirmatn, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;}

/* enforce yekan everywhere (bypass global OCYekan injection by using a unique font-family) */
html, body, button, input, textarea, select, a, div, span, p, li, td, th{font-family:'OCYekan', IRANYekan, Yekan, sans-serif !important;}


a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.dg-container{width:min(1400px, 96vw);margin:0 auto;}

/* Header */
.dg-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--dg-border)}
.dg-topbar{display:flex;align-items:center;gap:14px;padding:10px 0}
.dg-logo{display:flex;align-items:center;gap:10px;min-width:190px}
.dg-logo-mark{width:34px;height:34px;border-radius:10px;background:var(--dg-accent);display:inline-block}
.dg-logo-title{font-weight:900;letter-spacing:-.3px}
.dg-search{flex:1;display:flex;align-items:center;background:var(--dg-soft);border:1px solid transparent;border-radius:999px;padding:10px 14px;gap:10px;min-height:42px}
.dg-search input{border:none;outline:none;background:transparent;flex:1;font-size:14px}
.dg-search .dg-ico{width:18px;height:18px;opacity:.55}
.dg-actions{display:flex;align-items:center;gap:10px}
.dg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--dg-border);background:#fff;border-radius:10px;height:40px;padding:0 12px;font-weight:700;cursor:pointer}
.dg-btn:hover{border-color:#cbd5e1}
.dg-icon-btn{width:40px;padding:0}
.dg-cart-badge{position:absolute;top:-6px;right:-6px;background:var(--dg-accent);color:#fff;border-radius:999px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;padding:0 5px;line-height:1}

.dg-navrow{display:flex;align-items:center;gap:18px;padding:8px 0 10px 0}
.dg-mega-wrap{position:relative}
.dg-mega-btn{display:flex;align-items:center;gap:10px;font-weight:900}
.dg-mega-btn .dg-bars{width:18px;height:18px;display:inline-grid;gap:3px}
.dg-mega-btn .dg-bars span{height:2px;background:#111827;border-radius:99px;display:block}
.dg-navlinks{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.dg-navlinks a{color:#334155;font-weight:800;font-size:13px;opacity:.95;position:relative;padding:6px 2px;border-radius:10px}
.dg-navlinks a:hover{color:#0f172a}
/* thick underline hover effect */
.dg-navlinks a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:0;background:var(--dg-accent);border-radius:999px;opacity:0;transform:scaleX(.4);transform-origin:center;transition:opacity .18s ease, height .18s ease, transform .18s ease}
.dg-navlinks a:hover::after{opacity:1;height:4px;transform:scaleX(1)}
.dg-city{margin-right:auto;display:flex;align-items:center;gap:8px;color:#475569;font-weight:700;font-size:13px}

/* Mega menu */
.dg-mega{display:none;position:absolute;top:44px;right:0;width:min(1100px, 92vw);background:#fff;border:1px solid var(--dg-border);border-radius:18px;box-shadow:var(--dg-shadow);overflow:hidden}
.dg-mega.open{display:flex}
.dg-mega-side{width:260px;background:#f8fafc;border-left:1px solid var(--dg-border);max-height:70vh;overflow:auto}
.dg-mega-side a{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;font-weight:800;color:#0f172a;border-bottom:1px solid rgba(226,232,240,.8)}
.dg-mega-side a.active{background:#fff;color:var(--dg-accent)}
.dg-mega-main{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 14px 18px 14px;max-height:70vh;overflow:auto}
.dg-mega-col{border:1px solid rgba(226,232,240,.8);border-radius:14px;padding:12px;background:#fff}
.dg-mega-col h4{margin:0 0 10px 0;font-size:13px;font-weight:900;color:#111827}
.dg-mega-col a{display:block;padding:6px 0;color:#475569;font-weight:700;font-size:13px}
.dg-mega-col a:hover{color:#0f172a}

/* Home sections */
.dg-section{margin:18px 0}
.dg-card{background:#fff;border:1px solid var(--dg-border);border-radius:var(--dg-radius);box-shadow:0 6px 18px rgba(2,6,23,.05)}

.dg-stories{display:flex;gap:14px;align-items:flex-start;overflow:auto;padding:12px 8px;cursor:grab;user-select:none;-webkit-user-select:none}
.dg-stories:active{cursor:grabbing}

/* hide horizontal scrollbar (but keep scroll behavior) */
.dg-stories, .dg-prods-track{scrollbar-width:none;-ms-overflow-style:none}
.dg-stories::-webkit-scrollbar, .dg-prods-track::-webkit-scrollbar{display:none;height:0;width:0}
.dg-story{border:none;background:transparent;cursor:pointer;min-width:110px;display:flex;flex-direction:column;gap:8px;align-items:center;padding:0}
.dg-story .ring{width:83px;height:83px;border-radius:999px;padding:4px;background:conic-gradient(from 180deg,var(--dg-accent),#f97316,#e11d48,var(--dg-accent))}
.dg-story img{width:100%;height:100%;border-radius:999px;object-fit:cover;background:#e2e8f0;border:none}
.dg-story span{font-size:12px;color:#334155;font-weight:700;max-width:110px;text-align:center;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* while dragging, disable pointer events on children so drag works anywhere */
.dg-prods-track.dg-dragging a{pointer-events:none}
.dg-stories.dg-dragging .dg-story{pointer-events:auto}

/* Fullscreen story viewer */
.dg-story-view{position:fixed;inset:0;background:#0b1220;display:none;z-index:2147483500}
.dg-story-view.open{display:block}
.dg-story-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.dg-story-stage img{max-width:min(520px,100%);max-height:100%;width:100%;height:100%;object-fit:contain}
.dg-story-stage video{max-width:min(520px,100%);max-height:100%;width:100%;height:100%;object-fit:contain;background:#000;}
.dg-story-link{display:block;position:absolute;bottom:22px;right:14px;left:14px;max-width:520px;margin:0 auto;text-align:center;background:rgba(255,255,255,.14);color:#fff;text-decoration:none;padding:10px 14px;border-radius:14px;font-weight:800;backdrop-filter:blur(8px)}
.dg-story-link:hover{background:rgba(255,255,255,.22);color:#fff}
.dg-story-title{position:absolute;top:14px;right:14px;left:14px;color:#fff;font-weight:900;text-shadow:0 2px 12px rgba(0,0,0,.35);font-size:14px}
.dg-story-close{position:absolute;top:14px;left:14px;width:44px;height:44px;border-radius:14px;border:none;background:rgba(255,255,255,.14);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.dg-story-progress{position:absolute;top:0;right:0;left:0;height:3px;background:rgba(255,255,255,.18)}
.dg-story-progress span{display:block;height:100%;width:0;background:#fff}
.dg-story-nav{position:absolute;top:0;bottom:0;width:25%;border:none;background:transparent;color:#fff;font-size:48px;opacity:0;cursor:pointer}
.dg-story-nav.prev{right:0}
.dg-story-nav.next{left:0}
.dg-story-view:hover .dg-story-nav{opacity:.08}

.dg-hero{position:relative;border-radius:18px;overflow:hidden;min-height:340px}
.dg-hero-track{display:flex;transition:transform .45s ease}
.dg-hero-slide{display:block;min-width:100%;height:360px;position:relative;background:#111827}
.dg-hero-slide img{width:100%;height:100%;object-fit:cover;opacity:.92}
.dg-hero-slide .cap{position:absolute;inset:auto 18px 18px 18px;background:rgba(255,255,255,.88);backdrop-filter:blur(6px);border-radius:14px;padding:10px 12px;max-width:min(520px,90%)}
.dg-hero-slide .cap h3{margin:0 0 4px 0;font-size:16px;font-weight:900}
.dg-hero-slide .cap p{margin:0;color:#475569;font-size:13px;font-weight:600}
.dg-hero-dots{position:absolute;left:14px;bottom:14px;display:flex;gap:6px}
.dg-hero-dots button{width:8px;height:8px;border-radius:999px;border:none;background:rgba(255,255,255,.55);cursor:pointer}
.dg-hero-dots button.active{width:18px;background:#fff}

.dg-icons{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:12px;padding:14px}
.dg-icon{display:flex;flex-direction:column;align-items:center;gap:10px}
.dg-icon .ic{width:58px;height:58px;border-radius:999px;background:var(--dg-soft);border:1px solid var(--dg-border);display:grid;place-items:center;overflow:hidden}
.dg-icon img{width:100%;height:100%;object-fit:cover}
.dg-icon span{font-size:12px;font-weight:800;color:#0f172a;text-align:center;line-height:1.2}

.dg-products-row{display:grid;grid-template-columns: 280px 1fr;gap:14px;align-items:stretch}
.dg-offer-side{background:linear-gradient(135deg, #ef4056, #d32a42);color:#fff;border-radius:18px;padding:16px 14px;display:flex;flex-direction:column;justify-content:space-between}
.dg-offer-side h3{margin:0;font-size:18px;font-weight:900;line-height:1.2}
.dg-timer{display:flex;gap:6px;align-items:center;font-weight:900}
.dg-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);padding:6px 8px;border-radius:10px;min-width:38px;text-align:center}
.dg-offer-side a{color:#fff;opacity:.9;font-weight:800}

.dg-prods{border-radius:18px;overflow:hidden;border:1px solid var(--dg-border)}
.dg-prods-head{display:flex;align-items:center;justify-content:space-between;padding:12px 12px;background:#fff;border-bottom:1px solid var(--dg-border)}
.dg-prods-head h3{margin:0;font-size:15px;font-weight:900}
.dg-prods-track{display:flex;gap:0;overflow:auto;scroll-snap-type:x mandatory;background:#fff;cursor:grab;user-select:none;-webkit-user-select:none}
.dg-prods-track:active{cursor:grabbing}
.dg-prod{width:220px;flex:0 0 auto;scroll-snap-align:start;border-left:1px solid var(--dg-border);padding:12px}
.dg-prod:first-child{border-left:none}
.dg-prod .thumb{height:150px;border-radius:14px;background:#f8fafc;border:1px solid rgba(226,232,240,.85);display:grid;place-items:center;overflow:hidden}
.dg-prod .thumb img{width:100%;height:100%;object-fit:cover}
.dg-prod .title{margin:10px 0 6px 0;font-size:13px;font-weight:800;color:#0f172a;line-height:1.35;height:36px;overflow:hidden}
.dg-prod .meta{display:flex;align-items:center;justify-content:space-between;gap:8px}
.dg-prod .price{font-weight:900}
.dg-prod .discount{background:var(--dg-accent);color:#fff;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900}
.dg-prod .old{color:#94a3b8;text-decoration:line-through;font-weight:800;font-size:12px;margin-top:6px}

.dg-cats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dg-cat-card{border:1px solid var(--dg-border);border-radius:18px;overflow:hidden;background:#fff;min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}
.dg-cat-card .t{font-weight:900}
.dg-cat-card .s{color:#64748b;font-weight:700;font-size:13px;margin-top:6px}
.dg-cat-card .pic{width:96px;height:96px;border-radius:18px;background:#f8fafc;border:1px solid rgba(226,232,240,.85);overflow:hidden;flex:0 0 auto}
.dg-cat-card .pic img{width:100%;height:100%;object-fit:cover}

/* Footer */
.dg-footer{margin-top:24px;border-top:1px solid var(--dg-border);background:#fff}
.dg-footer .row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 0}
.dg-footer h4{margin:0 0 10px 0;font-size:14px;font-weight:900}
.dg-footer a{display:block;color:#475569;font-weight:700;font-size:13px;padding:5px 0}
.dg-footer a:hover{color:#0f172a}
.dg-footnote{padding:12px 0;color:#64748b;font-size:12px;border-top:1px solid rgba(226,232,240,.85)}

/* Responsive */
@media (max-width:1100px){
  .dg-icons{grid-template-columns:repeat(6,minmax(0,1fr))}
  .dg-products-row{grid-template-columns:1fr}
  .dg-offer-side{min-height:120px}
}
@media (max-width:720px){
  .dg-logo{min-width:auto}
  .dg-navrow{gap:10px}
  .dg-navlinks{display:none}
  .dg-icons{grid-template-columns:repeat(4,minmax(0,1fr))}
  .dg-hero-slide{height:260px}
  .dg-hero{min-height:260px}
}

/* =========================================================
   City Picker (Digi) — v19
========================================================= */
.dg-city-btn{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;cursor:pointer;color:#334155;font-weight:800;font-size:13px;padding:6px 10px;border-radius:999px}
.dg-city-btn:hover{background:rgba(2,6,23,.04)}
.dg-city-btn .dot{width:8px;height:8px;border-radius:999px;background:var(--dg-accent-2);display:inline-block}

.dg-city-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center}
.dg-city-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.35)}
.dg-city-panel{position:relative;width:min(560px,92vw);max-height:min(72vh,680px);background:#fff;border-radius:16px;box-shadow:0 20px 70px rgba(2,6,23,.22);padding:16px 16px 10px 16px;overflow:hidden}
.dg-city-x{position:absolute;top:10px;left:10px;border:0;background:rgba(2,6,23,.06);width:34px;height:34px;border-radius:10px;cursor:pointer;font-size:20px;line-height:34px}
.dg-city-title{margin:0 0 12px 0;text-align:center;font-size:18px;font-weight:900}
.dg-city-search{display:flex;align-items:center;gap:10px;background:#f1f5f9;border-radius:12px;padding:10px 12px}
.dg-city-search .ico{width:20px;height:20px;color:#64748b;flex:0 0 auto}
.dg-city-search input{border:0;background:transparent;outline:none;width:100%;font-size:14px;font-weight:700;color:#0f172a}
.dg-city-help{margin:10px 2px 12px 2px;color:#475569;font-size:12px;font-weight:700;line-height:1.8}

.dg-city-popular{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.dg-city-chip{border:1px solid rgba(148,163,184,.6);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;cursor:pointer}
.dg-city-chip:hover{border-color:rgba(15,23,42,.25)}

.dg-city-list{border-top:1px solid rgba(226,232,240,.9);margin-top:10px;padding-top:10px;max-height:calc(min(72vh,680px) - 220px);overflow:auto}
.dg-city-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 6px;border-radius:10px;cursor:pointer}
.dg-city-row:hover{background:rgba(2,6,23,.04)}
.dg-city-row .name{font-weight:900;font-size:14px;color:#0f172a}
.dg-city-row .prov{font-weight:700;font-size:12px;color:#64748b}
.dg-city-row .arr{opacity:.55;font-weight:900}


/* =========================================================
   v21 – Layout hardening (full-width header/menu/hero + city modal)
   ========================================================= */

/* Header/menu should span full viewport width */
.dg-header{width:100vw;}
.dg-header .dg-container{max-width:none;width:100%;padding-left:15px;padding-right:15px;}
.dg-navrow{width:100%;}
.dg-navlinks{flex-wrap:wrap;gap:18px;}
.dg-navlinks a{margin:0;}

/* Hero slider full width even if placed inside .dg-container */
.dg-hero{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-radius:0;}
.dg-hero.dg-card{border-radius:0;}

/* City modal must NOT show by default */
.dg-city-modal{display:flex;}
.dg-city-modal[hidden]{display:none !important;}
