/* =====================================================
   Gymarket Content System v1.0
   Scope: .gm-content
   RTL | Responsive | Safe for WordPress & WooCommerce
   ===================================================== */

.gm-content{ direction: rtl; text-align: right; }

/* -----------------------------------------------------
   Optional wrapper for wide tables (mobile friendly)
----------------------------------------------------- */
.gm-content .gm-table-wrap{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  border: 1px solid rgba(16,185,129,.20);
  background: #fff;
  box-shadow: 0 10px 28px rgba(2,132,82,.08);
  margin: 16px 0;
}
.gm-content .gm-table-wrap table{ margin: 0; border: 0; box-shadow: none; }

/* -----------------------------------------------------
   Base table style (ALL tables inside gm-content)
----------------------------------------------------- */
.gm-content table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(16,185,129,.20);
  box-shadow: 0 10px 28px rgba(2,132,82,.08);
  margin: 16px 0;
}
.gm-content table thead th{
  font-weight: 700;
  background: linear-gradient(180deg,rgba(240,253,244,.95),#ffffff);
  border-bottom: 1px solid rgba(16,185,129,.20);
}
.gm-content table th,
.gm-content table td{
  padding: 12px 14px;
  vertical-align: top;
  border-bottom: 1px solid rgba(2,6,23,.06);
}
.gm-content table tbody tr:nth-child(even){ background: rgba(2,6,23,.02); }
.gm-content table tbody tr:last-child td,
.gm-content table tbody tr:last-child th{ border-bottom: 0; }

/* -----------------------------------------------------
   Table variants
----------------------------------------------------- */
.gm-content table.gm-compact th,
.gm-content table.gm-compact td{ padding: 10px 12px; }

.gm-content table.gm-icon .gm-cell{ display:inline-flex; align-items:center; gap:10px; }
.gm-content table.gm-icon .gm-ico{
  width:34px;height:34px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
  background: rgba(16,185,129,.10);
  border: 1px solid rgba(16,185,129,.22);
  flex:0 0 auto;
}
.gm-content table.gm-icon .gm-title{ font-weight:700; }
.gm-content table.gm-icon .gm-meta{ display:block; margin-top:6px; opacity:.82; font-size:.92em; }

.gm-content table.gm-compare thead th{ position: sticky; top: 0; z-index: 1; }

/* -----------------------------------------------------
   Cards system
----------------------------------------------------- */
.gm-content .gm-cards{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0;
}
.gm-content .gm-card{
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid rgba(16,185,129,.20);
  box-shadow: 0 10px 28px rgba(2,132,82,.08);
  padding: 14px 14px;
}
.gm-content .gm-card__head{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.gm-content .gm-card__ico{
  width:36px;height:36px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  background: rgba(16,185,129,.10);
  border: 1px solid rgba(16,185,129,.22);
  flex:0 0 auto;
}
.gm-content .gm-card__title{ font-weight: 800; }
.gm-content .gm-card__text{ line-height: 1.9; opacity: .92; }

/* =====================================================
   SAFE ADD-ONS (does NOT touch .gm-nutrition)
===================================================== */

/* Highlight card */
.gm-content .gm-card.gm-highlight{
  background: linear-gradient(180deg, rgba(240,253,244,.95), #ffffff);
  border-color: rgba(16,185,129,.32);
}

/* =====================================================
   LinkWidget — Grid / Strip / Hero
   (works with .gmw / .gmwgrid)
===================================================== */

/* Grid layout wrapper */
.gm-content .gmwgrid{display:grid;gap:12px}
.gm-content .gmwgrid-cols-2{grid-template-columns:repeat(2, minmax(0,1fr))}
.gm-content .gmwgrid-cols-3{grid-template-columns:repeat(3, minmax(0,1fr))}
.gm-content .gmwgrid-cols-4{grid-template-columns:repeat(4, minmax(0,1fr))}
@media (max-width: 900px){
  .gm-content .gmwgrid-cols-4{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 520px){
  .gm-content .gmwgrid{grid-template-columns:1fr !important}
}

/* Strip variant */
.gm-content .gmw.v-strip .gmw-desc{display:none}
.gm-content .gmw.v-strip .gmw-media{width:46px;height:46px;border-radius:12px}
.gm-content .gmw.v-strip .gmw-cta{background:#16a34a;color:#fff}

/* Hero variant */
.gm-content .gmw.v-hero .gmw-media{width:160px;height:160px;border-radius:18px}
.gm-content .gmw.v-hero .gmw-cta{background:#16a34a;color:#fff}
@media (max-width: 640px){
  .gm-content .gmw.v-hero .gmw-media{width:110px;height:110px}
}

/* =====================================================
   FAQ — PREMIUM (Front) — safe under .gm-content
===================================================== */

.gm-content .gm-faq{
  margin: 14px 0;
  border-radius: 18px;
  border: 1px solid rgba(16,185,129,.22);
  background: linear-gradient(180deg, rgba(240,253,244,.70), #ffffff);
  box-shadow: 0 14px 34px rgba(2,132,82,.10);
  overflow: hidden;
}

.gm-content .gm-faq__head{
  padding: 14px 14px 12px;
  border-bottom: 1px solid rgba(16,185,129,.16);
  background: linear-gradient(180deg, rgba(15,23,42,.02), rgba(255,255,255,0));
}

.gm-content .gm-faq__badge{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .2px;
  color: #065f46;
  background: rgba(16,185,129,.12);
  border: 1px solid rgba(16,185,129,.22);
}

.gm-content .gm-faq__title{
  margin: 10px 0 6px;
  font-weight: 950;
  font-size: 16px;
  line-height: 1.6;
}

.gm-content .gm-faq__desc{
  margin: 0;
  opacity: .88;
  line-height: 1.9;
  font-size: 13px;
}

.gm-content .gm-faq__list{
  padding: 10px 10px 12px;
  display: grid;
  gap: 10px;
}

/* each item */
.gm-content .gm-faq-item details{
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 16px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 10px 22px rgba(2,6,23,.06);
  overflow: hidden;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.gm-content .gm-faq-item details:hover{
  transform: translateY(-1px);
  border-color: rgba(16,185,129,.28);
  box-shadow: 0 16px 30px rgba(2,132,82,.10);
}

.gm-content .gm-faq-item summary{
  cursor: pointer;
  list-style: none;
  user-select: none;
  display: grid;
  grid-template-columns: 38px 1fr 34px;
  align-items: center;
  gap: 10px;
  padding: 12px 12px;
  font-weight: 900;
  line-height: 1.7;
}

.gm-content .gm-faq-item summary::-webkit-details-marker{ display: none; }

.gm-content .gm-faq-qicon{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 950;
  color: #064e3b;
  background: rgba(16,185,129,.14);
  border: 1px solid rgba(16,185,129,.22);
}

.gm-content .gm-faq-q{
  min-width: 0;
  font-size: 14px;
}

.gm-content .gm-faq-chevron{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(15,23,42,.80);
  background: rgba(2,6,23,.03);
  border: 1px solid rgba(2,6,23,.06);
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.gm-content .gm-faq-chevron svg{ width: 20px; height: 20px; }

/* open state */
.gm-content .gm-faq-item details[open]{
  border-color: rgba(16,185,129,.30);
  background: linear-gradient(180deg, rgba(240,253,244,.65), rgba(255,255,255,.92));
}

.gm-content .gm-faq-item details[open] summary{
  border-bottom: 1px dashed rgba(16,185,129,.26);
}

.gm-content .gm-faq-item details[open] .gm-faq-chevron{
  transform: rotate(180deg);
  background: rgba(16,185,129,.10);
  border-color: rgba(16,185,129,.20);
}

/* answer */
.gm-content .gm-faq-a{
  padding: 10px 12px 14px;
  line-height: 1.95;
  opacity: .92;
  font-size: 13.5px;
}

/* mobile polish */
@media (max-width: 640px){
  .gm-content .gm-faq__title{ font-size: 15px; }
  .gm-content .gm-faq-item summary{
    grid-template-columns: 36px 1fr 32px;
    padding: 11px 11px;
  }
  .gm-content .gm-faq-q{ font-size: 13.6px; }
}

/* =====================================================
   GM LINK WIDGET — Premium Intent CTA Pack (SAFE)
   Scope: .gm-content .gm-linkpack
===================================================== */
.gm-content .gm-linkpack{ margin: 16px 0; }
.gm-content .gm-linkpack a{ color: inherit; text-decoration: none; }

/* Base card */
.gm-content .gm-linkpack .gmw{
  display:block;
  position:relative;
  overflow:hidden;
  border-radius: 20px;
  border: 1px solid rgba(16,185,129,.20);
  background:
    radial-gradient(1200px 220px at 12% -10%, rgba(16,185,129,.14), transparent 55%),
    radial-gradient(900px 240px at 95% 0%, rgba(59,130,246,.10), transparent 55%),
    #fff;
  box-shadow: 0 12px 34px rgba(2,132,82,.10);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.gm-content .gm-linkpack .gmw:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(2,132,82,.14);
  border-color: rgba(16,185,129,.32);
}

/* Top glow bar (premium) */
.gm-content .gm-linkpack .gmw::before{
  content:"";
  position:absolute; top:0; left:0; right:0; height:5px;
  background: linear-gradient(90deg,#10b981,#22c55e,#06b6d4,#3b82f6);
  opacity:.9;
}
.gm-content .gm-linkpack .gmw::after{
  content:"";
  position:absolute; inset:-2px;
  background: linear-gradient(120deg, rgba(34,197,94,.22), rgba(59,130,246,.14), rgba(16,185,129,.18));
  filter: blur(18px);
  opacity:.55;
  pointer-events:none;
}

/* Layout */
.gm-content .gm-linkpack .gmw-inner{
  position:relative;
  display:flex;
  gap:14px;
  padding: 16px;
}

/* Media */
.gm-content .gm-linkpack .gmw-media{
  width: 70px; height: 70px; flex:0 0 70px;
  border-radius: 18px;
  border: 1px solid rgba(2,6,23,.08);
  overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  background: rgba(2,6,23,.03);
  box-shadow: 0 10px 22px rgba(2,6,23,.06);
}
.gm-content .gm-linkpack .gmw-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.gm-content .gm-linkpack .gmw-ico{ font-size: 22px; }

/* Text */
.gm-content .gm-linkpack .gmw-body{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
}

.gm-content .gm-linkpack .gmw-title{
  margin:0 0 6px;
  font-size: 15.5px;
  font-weight: 950;
  line-height: 1.5;
}
.gm-content .gm-linkpack .gmw-desc{
  margin:0;
  font-size: 13.2px;
  opacity: .90;
  line-height: 1.95;
}

/* Badge */
.gm-content .gm-linkpack .gmw-badge{
  position:absolute; top:12px; left:12px;
  font-size: 11px;
  font-weight: 950;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(16,185,129,.22);
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(6px);
  opacity: .96;
}

/* Chips */
.gm-content .gm-linkpack .gmw-meta{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.gm-content .gm-linkpack .gmw-chip{
  font-size: 11px;
  font-weight: 900;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(2,6,23,.02);
  opacity: .92;
}

/* CTA button */
.gm-content .gm-linkpack .gmw-cta{
  display:inline-flex; align-items:center; gap:10px;
  margin-top: 12px;
  padding: 9px 12px;
  border-radius: 14px;
  border: 1px solid rgba(16,185,129,.26);
  background: rgba(240,253,244,.85);
  font-size: 13px;
  font-weight: 950;
}
.gm-content .gm-linkpack .gmw-cta .gmw-arrow{ display:inline-block; transform: rotate(180deg); opacity:.9; }

/* CTA — stronger + centered */
.gm-content .gm-linkpack .gmw-cta{
  align-self:center;
  text-align:center;
  min-width: 220px;
  justify-content:center;

  background: linear-gradient(
    180deg,
    rgba(240,253,244,.92),
    rgba(255,255,255,.92)
  );
  box-shadow: 0 10px 22px rgba(2,132,82,.10);
  transform: translateZ(0);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.gm-content .gm-linkpack .gmw:hover .gmw-cta{
  transform: translateY(-1px);
  box-shadow: 0 16px 30px rgba(2,132,82,.14);
  border-color: rgba(16,185,129,.32);
}

/* inline / inlinepro variant: استثنا */
.gm-content .gm-linkpack .gmw.v-inline .gmw-cta,
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-cta{
  align-self:auto;
  min-width:auto;
}
	/* =====================================================
   Promo Box (gm_promo) - استایل‌های گرافیکی و متحرک
===================================================== */
.gm-content .gm-promo-box {
  border: 2px solid rgba(16, 185, 129, 0.4);
  border-radius: 16px;
  padding: 24px;
  background: linear-gradient(180deg, rgba(240, 253, 244, 0.95) 0%, #ffffff 100%);
  margin: 24px 0;
  box-shadow: 0 12px 30px rgba(16, 185, 129, 0.08);
  position: relative;
  overflow: hidden;
}

.gm-content .gm-promo-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(16, 185, 129, 0.15);
  padding-bottom: 12px;
}

.gm-content .gm-promo-icon {
  font-size: 32px;
  line-height: 1;
  display: inline-flex;
}

.gm-content .gm-promo-title {
  font-size: 1.25em;
  font-weight: 800;
  color: #064e3b;
  margin: 0;
}

.gm-content .gm-promo-desc {
  font-size: 0.95em;
  line-height: 1.8;
  color: #334155;
  margin-bottom: 20px;
}

.gm-content .gm-promo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 16px;
}

.gm-content .gm-promo-item {
  background: #ffffff;
  border: 1px solid rgba(16, 185, 129, 0.2);
  border-radius: 12px;
  padding: 16px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.gm-content .gm-promo-item-icon {
  font-size: 24px;
  flex-shrink: 0;
  background: rgba(16, 185, 129, 0.1);
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
}

.gm-content .gm-promo-text {
  font-size: 0.9em;
  line-height: 1.7;
  color: #475569;
  margin: 0;
}

.gm-content .gm-promo-text strong {
  display: block;
  color: #0f172a;
  font-size: 1.05em;
  margin-bottom: 4px;
}

/* انیمیشن‌ها */
@keyframes gmPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}
@keyframes gmFloat {
  0% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
  100% { transform: translateY(0); }
}
@keyframes gmShake {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-10deg); }
  75% { transform: rotate(10deg); }
}

.gm-content .gm-anim-pulse { animation: gmPulse 2s infinite ease-in-out; }
.gm-content .gm-anim-float { animation: gmFloat 3s infinite ease-in-out; }
.gm-content .gm-anim-shake { animation: gmShake 2.5s infinite ease-in-out; }

/* Variant: HERO */
.gm-content .gm-linkpack .gmw.v-hero{
  border-color: rgba(16,185,129,.30);
  background:
    radial-gradient(1200px 260px at 10% -10%, rgba(16,185,129,.18), transparent 55%),
    radial-gradient(900px 300px at 95% 0%, rgba(59,130,246,.16), transparent 55%),
    linear-gradient(180deg, rgba(240,253,244,.70), #ffffff);
}
.gm-content .gm-linkpack .gmw.v-hero .gmw-title{ font-size: 16.5px; }
.gm-content .gm-linkpack .gmw.v-hero .gmw-media{ width:78px;height:78px;flex-basis:78px; }
.gm-content .gm-linkpack .gmw.v-hero .gmw-cta{
  background: linear-gradient(90deg, rgba(16,185,129,.18), rgba(59,130,246,.12));
  border-color: rgba(16,185,129,.30);
}

/* Variant: COMPACT */
.gm-content .gm-linkpack .gmw.v-compact .gmw-inner{ padding: 14px; }
.gm-content .gm-linkpack .gmw.v-compact .gmw-media{ width:58px;height:58px;flex-basis:58px; }
.gm-content .gm-linkpack .gmw.v-compact .gmw-title{ font-size: 14.5px; }
.gm-content .gm-linkpack .gmw.v-compact .gmw-desc{ font-size: 12.8px; }

/* Variant: INLINE PRO */
.gm-content .gm-linkpack .gmw.v-inlinepro{ border-radius: 14px; }
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-inner{ align-items:center; padding: 12px 12px; }
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-media{ width:46px;height:46px;flex-basis:46px;border-radius:14px; }
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-desc{ display:none; }
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-meta{ display:none; }
.gm-content .gm-linkpack .gmw.v-inlinepro .gmw-cta{
  margin-top: 0;
  margin-right: auto;
  background: rgba(16,185,129,.10);
}

/* Intent accents */
.gm-content .gm-linkpack.i-buy .gmw::before{ background: linear-gradient(90deg,#22c55e,#10b981,#06b6d4); }
.gm-content .gm-linkpack.i-compare .gmw::before{ background: linear-gradient(90deg,#3b82f6,#06b6d4,#10b981); }
.gm-content .gm-linkpack.i-trust .gmw::before{ background: linear-gradient(90deg,#10b981,#22c55e,#84cc16); }
.gm-content .gm-linkpack.i-support .gmw::before{ background: linear-gradient(90deg,#06b6d4,#3b82f6,#10b981); }

/* Mobile */
@media (max-width: 720px){
  .gm-content .gm-linkpack .gmw-inner{ padding: 14px; }
  .gm-content .gm-linkpack .gmw-media{ width:62px;height:62px;flex-basis:62px; }
}

/* Audio Transcript Card (variant) */
.gm-content .gm-card.gm-audio-tx{
  background: linear-gradient(180deg, rgba(240,253,244,.95), #ffffff);
  border-color: rgba(16,185,129,.30);
  position: relative;
  overflow: hidden;
  box-shadow:
    0 10px 28px rgba(2,132,82,.08),
    0 0 0 1px rgba(16,185,129,.06),
    0 12px 26px rgba(16,185,129,.10);
  padding-top: 16px;
}
.gm-content .gm-card.gm-audio-tx::before{
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 5px;
  background: linear-gradient(90deg,#10b981,#22c55e,#06b6d4);
}
.gm-content .gm-audio-tx__head{ display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.gm-content .gm-card.gm-audio-tx .gm-card__ico{
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(16,185,129,.16));
  box-shadow: 0 10px 22px rgba(2,132,82,.10);
}
.gm-content .gm-audio-tx__meta{ display: block; margin-top: 4px; font-size: .92em; opacity: .82; }
.gm-content .gm-card.gm-audio-tx .gm-card__text{ margin: 0; }
.gm-content .gm-card.gm-audio-tx details{ margin-top: 10px; }
.gm-content .gm-card.gm-audio-tx summary{
  cursor: pointer;
  list-style: none;
  user-select: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid rgba(16,185,129,.22);
  background: rgba(255,255,255,.65);
  font-weight: 700;
}
.gm-content .gm-card.gm-audio-tx summary::-webkit-details-marker{ display: none; }
.gm-content .gm-audio-tx__more{
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed rgba(16,185,129,.26);
  line-height: 1.9;
  opacity: .92;
}

/* -----------------------------------------------------
   Nutrition Facts — Premium (Compact + RTL + Smart Scroll)
----------------------------------------------------- */
.gm-content .gm-nutrition{
  border: 1px solid rgba(2,6,23,.12);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(2,132,82,.08);
  overflow: hidden;
  padding: 0;
  margin: 16px auto;

  width: 100%;
  max-width: 940px;
}

@media (min-width: 1025px){
  .gm-content .gm-nutrition{
    width: 50%;
    max-width: 980px;
  }
}

.gm-content .gm-nutrition .gm-nf-head{
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:12px; padding: 14px 16px;
  background: linear-gradient(180deg, #0b1220, #0f172a);
  color:#fff;
}
.gm-content .gm-nutrition .gm-nf-title{ font-weight: 900; font-size: 17px; line-height: 1.45; }
.gm-content .gm-nutrition .gm-nf-sub{ opacity: .9; font-size: 12px; line-height: 1.75; margin-top: 5px; }

.gm-content .gm-nutrition .gm-nf-scroll{
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.gm-content .gm-nutrition .gm-nf-scroll::-webkit-scrollbar{ height: 0; }

.gm-content .gm-nutrition .gm-nf-scroll.is-ready{ overflow: hidden; }

.gm-content .gm-nutrition .gm-nf-scroller{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;

  padding-bottom: 18px;
  margin-bottom: -18px;

  cursor: grab;
}
.gm-content .gm-nutrition .gm-nf-scroller::-webkit-scrollbar{ height: 0; }
.gm-content .gm-nutrition .gm-nf-scroller.is-dragging{ cursor: grabbing; user-select:none; }
.gm-content .gm-nutrition .gm-nf-scroller.is-dragging *{ user-select:none !important; }

.gm-content .gm-nutrition table.gm-nf-table{
  width: 100%;
  min-width: 460px;
  margin:0;
  border:0;
  box-shadow:none;
  border-radius: 0;
  border-collapse: separate;
  border-spacing: 0;

  table-layout: fixed;
  direction: rtl;
}

.gm-content .gm-nutrition table.gm-nf-table thead th{
  font-weight: 800;
  background: rgba(2,6,23,.04);
  border-bottom: 1px solid rgba(2,6,23,.08);
  padding: 10px 12px;
  white-space: nowrap;
  font-size: 15px;
}
.gm-content .gm-nutrition table.gm-nf-table th,
.gm-content .gm-nutrition table.gm-nf-table td{
  padding: 10px 12px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(2,6,23,.06);
  font-size: 15px;
}
.gm-content .gm-nutrition table.gm-nf-table tbody tr:nth-child(even){ background: rgba(2,6,23,.02); }
.gm-content .gm-nutrition table.gm-nf-table th:nth-child(1),
.gm-content .gm-nutrition table.gm-nf-table td:nth-child(1){ width: 42%; }
.gm-content .gm-nutrition table.gm-nf-table th:nth-child(2),
.gm-content .gm-nutrition table.gm-nf-table td:nth-child(2),
.gm-content .gm-nutrition table.gm-nf-table th:nth-child(3),
.gm-content .gm-nutrition table.gm-nf-table td:nth-child(3){ width: 29%; }

.gm-content .gm-nutrition .gm-nf-label{
  font-weight: 800;
  white-space: normal;
  overflow-wrap: anywhere;
}
.gm-content .gm-nutrition .gm-nf-num{
  text-align: center;
  direction: ltr;
  font-weight: 800;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

@media (max-width: 640px){
  .gm-content .gm-nutrition .gm-nf-head{ flex-direction: column; }

  .gm-content .gm-nutrition table.gm-nf-table{
    table-layout: fixed;
    width: 100%;
    min-width: 100%;
  }

  .gm-content .gm-nutrition table.gm-nf-table thead th:nth-child(1),
  .gm-content .gm-nutrition table.gm-nf-table tbody td:nth-child(1),
  .gm-content .gm-nutrition table.gm-nf-table thead th:nth-child(2),
  .gm-content .gm-nutrition table.gm-nf-table tbody td:nth-child(2),
  .gm-content .gm-nutrition table.gm-nf-table thead th:nth-child(3),
  .gm-content .gm-nutrition table.gm-nf-table tbody td:nth-child(3){
    width: auto !important;
  }
}

.gm-content .gm-nutrition .gm-nf-foot{
  padding: 10px 16px 14px;
  font-size: 11.5px;
  opacity: .75;
  line-height: 1.8;
  text-align: right;
  direction: rtl;
}

/* Hint — ONLY when overflow exists (JS toggles is-on) */
.gm-content .gm-nutrition .gm-scroll-hint{
  position:absolute;
  left:50%;
  bottom:10px;
  transform: translateX(-50%);
  pointer-events:none;
  opacity:0;
  transition: opacity .16s ease;
  z-index: 5;
}
.gm-content .gm-nutrition .gm-scroll-hint.is-on{ opacity:1; }

.gm-content .gm-nutrition .gm-scroll-bubble{
  position: relative;
  display: inline-block;
  background: rgba(15,23,42,.82);
  color:#fff;
  font-size: 12px;
  line-height: 1.7;
  padding: 7px 12px;
  border-radius: 12px;
  white-space: nowrap;
  opacity: .96;
  direction: rtl;
}

.gm-content .gm-nutrition .gm-scroll-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(0);
  width:42px;
  height:42px;
  border-radius:999px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(2,6,23,.14);
  box-shadow: 0 10px 22px rgba(2,6,23,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  color: #0f172a;
  opacity: 0;
  transition: opacity .14s ease;
  will-change: transform, opacity;
}
.gm-content .gm-nutrition .gm-scroll-arrow svg{ width:20px; height:20px; }

.gm-content .gm-nutrition .gm-scroll-arrow.left{  right: calc(100% + 12px); left: auto; }
.gm-content .gm-nutrition .gm-scroll-arrow.right{ left: calc(100% + 12px); right: auto; }

@keyframes gmHintNudge{
  0%,100%{ transform: translateY(-50%) translateX(0); }
  50%{     transform: translateY(-50%) translateX(var(--dx, 0px)); }
}
.gm-content .gm-nutrition .gm-scroll-arrow.left{  --dx: -8px; animation: gmHintNudge 1.15s ease-in-out infinite; }
.gm-content .gm-nutrition .gm-scroll-arrow.right{ --dx:  8px; animation: gmHintNudge 1.15s ease-in-out infinite; }

.gm-content .gm-nutrition .gm-scroll-hint.is-left  .gm-scroll-arrow.left{  opacity: 1; }
.gm-content .gm-nutrition .gm-scroll-hint.is-right .gm-scroll-arrow.right{ opacity: 1; }
.gm-content .gm-nutrition .gm-scroll-hint.is-both  .gm-scroll-arrow.left,
.gm-content .gm-nutrition .gm-scroll-hint.is-both  .gm-scroll-arrow.right{ opacity: 1; }

@keyframes gmHintBlink{
  0%,100%{ opacity: .35; }
  50%{     opacity: 1; }
}
.gm-content .gm-nutrition .gm-scroll-hint.is-pre.is-left  .gm-scroll-arrow.left{
  animation: gmHintNudge 1.15s ease-in-out infinite, gmHintBlink .72s ease-in-out infinite;
}
.gm-content .gm-nutrition .gm-scroll-hint.is-pre.is-right .gm-scroll-arrow.right{
  animation: gmHintNudge 1.15s ease-in-out infinite, gmHintBlink .72s ease-in-out infinite;
}
.gm-content .gm-nutrition .gm-scroll-hint.is-pre.is-both  .gm-scroll-arrow.left,
.gm-content .gm-nutrition .gm-scroll-hint.is-pre.is-both  .gm-scroll-arrow.right{
  animation: gmHintNudge 1.15s ease-in-out infinite, gmHintBlink .72s ease-in-out infinite;
}


/* Nutrition + Amino Acid side-by-side layout */
.gm-content .gm-nf-panels{
  width: 100%;
  max-width: 1180px;
  margin: 16px auto;
  display: grid;
  gap: 16px;
  align-items: start;
}
.gm-content .gm-nf-panels.has-amino{
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.gm-content .gm-nf-panels .gm-nutrition{
  width: 100%;
  max-width: none;
  margin: 0;
}
.gm-content .gm-nutrition.gm-amino-profile .gm-nf-title{
  letter-spacing: 0;
}
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table{
  min-width: 100%;
}
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs{
  table-layout: fixed;
}
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th:nth-child(1),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td:nth-child(1),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th:nth-child(3),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td:nth-child(3){
  width: 34%;
}
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th:nth-child(2),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td:nth-child(2),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th:nth-child(4),
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td:nth-child(4){
  width: 16%;
}
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table th,
.gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table td{
  padding: 9px 8px;
  font-size: 13.5px;
}
.gm-content .gm-nutrition.gm-amino-profile .gm-nf-sub{
  font-size: 11.5px;
}
@media (max-width: 800px){
  .gm-content .gm-nf-panels.has-amino{
    grid-template-columns: 1fr;
  }
  .gm-content .gm-nf-panels{
    gap: 14px;
  }
  .gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th,
  .gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td{
    font-size: 12.5px;
    padding: 8px 6px;
  }
}

/* Responsive rules */
@media (max-width: 1024px){
  .gm-content .gm-cards{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .gm-content table th,
  .gm-content table td{ padding: 9px 8px; }
  .gm-content .gm-cards{ grid-template-columns: 1fr; }
  .gm-content table{ word-break: break-word; }
  .gm-content .gm-nutrition .gm-nf-title{ font-size: 16px; }
  .gm-content .gm-nutrition table.gm-nf-table thead th,
  .gm-content .gm-nutrition table.gm-nf-table td{ font-size: 13.5px; }
  .gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs th,
  .gm-content .gm-nutrition.gm-amino-profile table.gm-nf-table.gm-nf-amino-pairs td{ font-size: 11.5px; padding: 7px 5px; }
}

/* =====================================================
   SCIENCE NOTES — نکات علمی (Front-end)
===================================================== */
.gm-content .gm-science-note {
  position: relative;
  margin: 22px auto;
  padding: 18px 20px;
  max-width: 880px;
  border-radius: 18px;
  border: 1.5px solid transparent;
  font-size: 14.6px;
  line-height: 2;
  font-weight: 600;
  text-align: center;
  box-shadow: 0 18px 40px rgba(0,0,0,.12);
  background: #fff;
}
.gm-content .gm-science-note::before {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 900;
  border-radius: 999px;
  background: #fff;
}
.gm-content .gm-science-note strong { font-weight: 900; }
.gm-content .gm-science-note.is-info { background: linear-gradient(180deg,#eff6ff,#fff); border-color: rgba(59,130,246,.45); color: #1e3a8a; }
.gm-content .gm-science-note.is-info::before { content: "نکته علمی"; border: 1px solid rgba(59,130,246,.45); }
.gm-content .gm-science-note.is-warning { background: linear-gradient(180deg,#fef9c3,#fff); border-color: rgba(234,179,8,.55); color: #854d0e; }
.gm-content .gm-science-note.is-warning::before { content: "هشدار علمی"; border: 1px solid rgba(234,179,8,.55); }
.gm-content .gm-science-note.is-good { background: linear-gradient(180deg,#f0fdf4,#fff); border-color: rgba(34,197,94,.45); color: #065f46; }
.gm-content .gm-science-note.is-good::before { content: "نکته مفید"; border: 1px solid rgba(34,197,94,.45); }
.gm-content .gm-science-note.is-danger { background: linear-gradient(180deg,#fee2e2,#fff); border-color: rgba(220,38,38,.55); color: #7f1d1d; }
.gm-content .gm-science-note.is-danger::before { content: "خطر / منع مصرف"; border: 1px solid rgba(220,38,38,.55); }

/* =====================================================
   Editorial Image Frame — Gymarket artwork-based template
===================================================== */
@font-face{
  font-family:"GM Frame Caption";
  src:url('../fonts/caption-font.woff2') format('woff2');
  font-weight:900;
  font-style:normal;
  font-display:swap;
}
.gm-image-frame{
  --gmif-zoom:1;
  --gmif-offset-x:0;
  --gmif-offset-y:0;
  --gmif-text-scale:1;
  --gmif-fit:1;
  --gmif-title-font:"GM Frame Caption","Morabba","Morabba Bold","Morabba Heavy","Anjoman","Vazirmatn",Tahoma,Arial,sans-serif;
  width:min(100%,1200px);
  margin:24px auto 28px;
  padding:0;
  border:0;
  background:transparent;
}
.gm-image-frame,
.gm-image-frame *{box-sizing:border-box}
.gm-image-frame__stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:2048 / 1229;border-radius:2px;container-type:size;background:#001a2f}
/* All geometry rules use figure.gm-image-frame prefix + !important so generic theme
   rules (e.g. img{width:auto!important;height:auto!important;max-width:100%!important})
   can never move or resize the frame layers — especially on mobile where such rules
   previously let the overlay keep its intrinsic aspect and get right-aligned by the
   RTL over-constrained positioning rule, pushing the photo out of the window. */
figure.gm-image-frame .gm-image-frame__stage .gm-image-frame__media{position:absolute!important;z-index:1;left:12.03%!important;top:13.54%!important;width:75.99%!important;height:71.92%!important;overflow:hidden!important;background:#f2f3f1}
figure.gm-image-frame .gm-image-frame__stage .gm-image-frame__media .gm-image-frame__img{position:absolute!important;left:50%!important;top:50%!important;display:block!important;width:calc(100% * var(--gmif-zoom))!important;height:calc(100% * var(--gmif-zoom))!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;transform:translate(calc(-50% + (var(--gmif-offset-x) * 1%)), calc(-50% + (var(--gmif-offset-y) * 1%)))!important;object-position:center!important;box-shadow:none!important;user-select:none!important;-webkit-user-select:none!important;-webkit-user-drag:none!important;pointer-events:none!important}
figure.gm-image-frame--fit-cover .gm-image-frame__stage .gm-image-frame__media .gm-image-frame__img{object-fit:cover!important}
figure.gm-image-frame--fit-contain .gm-image-frame__stage .gm-image-frame__media .gm-image-frame__img{object-fit:contain!important;background:#f2f3f1!important}
figure.gm-image-frame .gm-image-frame__stage .gm-image-frame__overlay{position:absolute!important;inset:0!important;z-index:2;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-width:0!important;min-height:0!important;object-fit:fill!important;margin:0!important;padding:0!important;border:0!important;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
figure.gm-image-frame .gm-image-frame__stage .gm-image-frame__caption{position:absolute!important;z-index:3;left:25%!important;top:82.67%!important;width:50%!important;height:13.39%!important;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 .5%;margin:0!important;pointer-events:none;user-select:none;-webkit-user-select:none}
.gm-image-frame__caption-text{display:block;width:100%;color:#e32626;font-family:var(--gmif-title-font);font-size:calc(2.6cqw * var(--gmif-text-scale) * var(--gmif-fit,1));line-height:1.2;font-weight:900;letter-spacing:0;overflow-wrap:anywhere}
@supports not (width: 1cqw){
.gm-image-frame__caption-text{font-size:clamp(14px, calc(1.5vw * var(--gmif-text-scale) * var(--gmif-fit,1)), calc(31px * var(--gmif-text-scale) * var(--gmif-fit,1)))}
}
/* Graceful degradation: hide frame entirely if the photo fails; draw a CSS caption plate if the overlay PNG fails. */
.gm-image-frame--broken{display:none}
.gm-image-frame--no-overlay .gm-image-frame__overlay{display:none}
.gm-image-frame--no-overlay .gm-image-frame__caption{background:rgba(230,231,232,.97);border:.55cqw solid #e32626;border-radius:2.2cqw;padding:0 2%}
@media (max-width: 900px){.gm-image-frame{margin:18px auto 24px}}


/* =====================================================
   Featured Image Frame — Gymarket artwork-based template (module 16)
   2048x1152 overlay; hexagon photo window on the left, red title on the right,
   Gymarket logo plate bleeding off the bottom edge.
===================================================== */
.gm-featured-frame{
  --gmff-zoom:1;
  --gmff-offset-x:0;
  --gmff-offset-y:0;
  --gmff-text-scale:1;
  --gmff-title-font:"GM Frame Caption","Morabba","Morabba Bold","Morabba Heavy","Anjoman","Vazirmatn",Tahoma,Arial,sans-serif;
  width:min(100%,1200px);
  margin:24px auto 28px;
  padding:0;
  border:0;
  background:transparent;
}
.gm-featured-frame,
.gm-featured-frame *{box-sizing:border-box}
.gm-featured-frame__stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:2048 / 1152;border-radius:2px;container-type:size;background:#001a2f}
/* All geometry rules use figure.gm-featured-frame prefix + !important so generic theme
   rules can never move or resize the frame layers (same contract as .gm-image-frame). */
figure.gm-featured-frame .gm-featured-frame__stage .gm-featured-frame__media{position:absolute!important;z-index:1;left:3.98%!important;top:6.7%!important;width:43.54%!important;height:93.3%!important;overflow:hidden!important;background:#f2f3f1}
figure.gm-featured-frame .gm-featured-frame__stage .gm-featured-frame__media .gm-featured-frame__img{position:absolute!important;left:50%!important;top:50%!important;display:block!important;width:calc(100% * var(--gmff-zoom))!important;height:calc(100% * var(--gmff-zoom))!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;transform:translate(calc(-50% + (var(--gmff-offset-x) * 1%)), calc(-50% + (var(--gmff-offset-y) * 1%)))!important;object-position:center!important;box-shadow:none!important;user-select:none!important;-webkit-user-select:none!important;-webkit-user-drag:none!important;pointer-events:none!important}
figure.gm-featured-frame--fit-cover .gm-featured-frame__stage .gm-featured-frame__media .gm-featured-frame__img{object-fit:cover!important}
figure.gm-featured-frame--fit-contain .gm-featured-frame__stage .gm-featured-frame__media .gm-featured-frame__img{object-fit:contain!important;background:#f2f3f1!important}
figure.gm-featured-frame .gm-featured-frame__stage .gm-featured-frame__overlay{position:absolute!important;inset:0!important;z-index:2;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-width:0!important;min-height:0!important;object-fit:fill!important;margin:0!important;padding:0!important;border:0!important;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
figure.gm-featured-frame .gm-featured-frame__stage .gm-featured-frame__title{position:absolute!important;z-index:3;left:52.9%!important;top:0!important;width:44.1%!important;height:100%!important;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 .5%;margin:0!important;pointer-events:none;user-select:none;-webkit-user-select:none}
.gm-featured-frame__title-text{display:block;width:100%;color:#e32626;font-family:var(--gmff-title-font);font-size:calc(4.9cqw * var(--gmff-text-scale));line-height:1.35;font-weight:900;letter-spacing:0;overflow-wrap:anywhere;white-space:pre-line}
@supports not (width: 1cqw){
.gm-featured-frame__title-text{font-size:clamp(16px, calc(2.8vw * var(--gmff-text-scale)), calc(58px * var(--gmff-text-scale)))}
}
/* Graceful degradation: hide frame entirely if the photo fails; keep the navy
   canvas + title readable if the overlay PNG fails. */
.gm-featured-frame--broken{display:none}
.gm-featured-frame--no-overlay .gm-featured-frame__overlay{display:none}
.gm-featured-frame--no-overlay .gm-featured-frame__media{border:.55cqw solid #e32626;border-radius:3.2cqw}
@media (max-width: 900px){.gm-featured-frame{margin:18px auto 24px}}


/* Live, escaped WooCommerce specifications; no separate schema or AI request. */
.gmcc-live-specs{margin:1.5em 0;max-width:100%;overflow-x:auto;color:inherit}.gmcc-live-specs table{width:100%;border-collapse:collapse;table-layout:fixed}.gmcc-live-specs caption{text-align:right;font-weight:700;padding:12px;border-bottom:2px solid currentColor}.gmcc-live-specs th,.gmcc-live-specs td{text-align:right;vertical-align:top;padding:12px;border-bottom:1px solid rgba(128,128,128,.25);overflow-wrap:anywhere}.gmcc-live-specs th{width:35%}
