/* Main stylesheet */
:root{
  --bg:#ffffff;
  --text:#111F35;
  --muted:rgba(17,31,53,.72);
  --border:rgba(17,31,53,.12);
  --shadow:0 10px 25px rgba(0,0,0,.06);
  --radius:18px;

  /* Brand palette */
  --accent:#F63049;    /* primary */
  --accent2:#D02752;   /* hover / emphasis */
  --accent3:#8A244B;   /* secondary accent */
  --navy:#111F35;      /* dark base */

  /* Gradient token */
  --g-primary: linear-gradient(135deg, #F63049 0%, #D02752 45%, #8A244B 100%);

  --container:1100px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Vazirmatn", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.9;
  font-size:16px;
}
img{max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none;transition:.15s}
a:hover{color:var(--accent2);text-decoration:underline}

.container{max-width:var(--container);margin:0 auto;padding:0 18px}
.site{min-height:auto;display:flex;flex-direction:column}
.site-main{flex:1}

.content-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:18px;
  padding:18px 0;
}
@media(min-width: 992px){
  .content-grid{grid-template-columns: 1fr 340px;}
}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  position:relative;
  background:linear-gradient(135deg,
    rgba(255,255,255,.96) 0%,
    rgba(255,255,255,.90) 55%,
    rgba(246,48,73,.06) 100%);
  border-bottom:1px solid rgba(17,31,53,.12);
  box-shadow:0 10px 24px rgba(17,31,53,.08);
}
.site-header::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at right top, rgba(246,48,73,.14), transparent 55%);
  pointer-events:none;
}
.header-inner{
  min-height:64px;
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 0;gap:14px
}
.brand{display:flex;align-items:center;gap:12px}
.brand-title{font-weight:900;color:var(--text);text-decoration:none}
.brand-title:hover{text-decoration:none;color:var(--accent)}

/* Logo sizing (max cap) */
.custom-logo, .brand img{
  max-height:64px;
  width:auto;
  height:auto;
  display:block;
}
@media (max-width: 900px){
  .custom-logo, .brand img{ max-height:56px; }
}

.nav-toggle{
  display:none;
  border:1px solid var(--border);
  background:#fff;
  padding:8px 10px;
  border-radius:12px;
  cursor:pointer;
  font-weight:800;
}

/* Nav */
.nav a{
  padding:10px 12px;
  border-radius:10px;
  font-weight:650;
  font-size:14.5px;
  color:var(--text);
  display:inline-flex;
  align-items:center;
  gap:6px;
  text-decoration:none;
}
.nav a:hover{
  background:rgba(246,48,73,.08);
  text-decoration:none;
  color:var(--accent);
}
.current-menu-item > a,
.current-menu-ancestor > a{
  background: rgba(246,48,73,.12);
  color: var(--accent2);
}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;align-items:center}
.nav li{position:relative}
.nav .sub-menu{
  position:absolute;right:0;top:calc(100% + 10px);
  background:#fff;border:1px solid rgba(17,31,53,.12);
  border-radius:14px;
  box-shadow:0 18px 45px rgba(0,0,0,.10);
  padding:8px;
  display:none;
  min-width:240px;
}
.nav li:hover>.sub-menu{display:block}
.nav .sub-menu a{display:block;border-radius:10px;padding:10px 10px;font-weight:600}
.nav .sub-menu a:hover{background:rgba(246,48,73,.08)}

/* Mobile nav */
@media(max-width: 900px){
  .header-inner{position:relative}
  .nav-toggle{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius:14px;
    background:#fff;
    transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
  }
  .nav-toggle:active{transform:scale(.98)}
  .nav-toggle .burger{
    width:18px;height:12px;position:relative;display:inline-block;
  }
  .nav-toggle .burger::before,
  .nav-toggle .burger::after,
  .nav-toggle .burger span{
    content:"";
    position:absolute;left:0;right:0;
    height:2px;border-radius:999px;
    background:var(--text);
    transition:transform .18s ease, top .18s ease, opacity .18s ease;
  }
  .nav-toggle .burger::before{top:0}
  .nav-toggle .burger span{top:5px}
  .nav-toggle .burger::after{top:10px}

  /* Panel */
  .nav{
    display:block;
    position:absolute;
    right:0;left:0;
    top:calc(100% + 10px);
    background:#fff;
    border:1px solid rgba(17,31,53,.12);
    border-radius:16px;
    box-shadow:0 22px 55px rgba(0,0,0,.10);
    padding:10px;
    transform:translateY(-6px);
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease;
  }
  .nav.is-open{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
  }

  .nav ul{flex-direction:column;align-items:stretch;gap:4px}
  .nav a{
    width:100%;
    justify-content:space-between;
    padding:12px 12px;
    border-radius:12px;
    font-size:15px;
  }

  /* Submenu styling (always expanded on mobile, but visually grouped) */
  .nav .sub-menu{
    position:static;
    display:block;
    box-shadow:none;
    border:0;
    padding:6px 0 0;
    margin:0 0 0 0;
    margin-right:10px; /* RTL indent */
    border-right:2px solid rgba(246,48,73,.25);
  }
  .nav .sub-menu a{
    padding:10px 12px;
    font-weight:600;
    font-size:14px;
    background:rgba(17,31,53,.02);
  }

  /* When open, animate burger to X */
  .nav-toggle[aria-expanded="true"] .burger::before{top:5px;transform:rotate(45deg)}
  .nav-toggle[aria-expanded="true"] .burger span{opacity:0}
  .nav-toggle[aria-expanded="true"] .burger::after{top:5px;transform:rotate(-45deg)}
}


/* Cards */
.card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:18px;
}
.post-card{margin:0 0 14px}
.entry-title{margin:0 0 10px;line-height:1.35}
.entry-title a{color:var(--text);text-decoration:none}
.entry-title a:hover{color:var(--accent);text-decoration:none}
.meta{font-size:13px;color:rgba(17,24,39,.60);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.excerpt{margin:0 0 14px;color:rgba(17,24,39,.92)}
.readmore{font-weight:900;text-decoration:none !important}

/* Widgets */
.widget{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;margin-bottom:16px}
.widget-title{margin:0 0 10px;font-size:16px}

/* Footer */
.site-footer{
  border-top:1px solid var(--border);
  padding:20px 0;
  color:rgba(17,24,39,.60);
  font-size:14px;
  margin-top:20px;
}
.footer-inner{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}

/* Buttons */
.ts-btn, button, input[type="submit"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:12px;
  font-weight:950;
  text-decoration:none !important;
  border:1px solid transparent;
  cursor:pointer;
  transition:.15s;
}
.ts-btn--primary, input[type="submit"]{
  background:var(--accent);
  color:#fff !important;
  box-shadow:0 10px 18px rgba(246,48,73,.18);
}
.ts-btn--primary:hover{ background:var(--accent2); transform:translateY(-1px); }
.ts-btn--secondary{ background:#111827; color:#fff !important; }
.ts-btn--secondary:hover{ opacity:.92; }
.ts-btn--ghost{
  background:#fff;
  border-color: var(--border);
  color: var(--text) !important;
}
.ts-btn--ghost:hover{ background: rgba(246,48,73,.05); border-color: rgba(246,48,73,.25); }

/* Forms (base) */
input[type="text"], input[type="email"], input[type="search"], input[type="url"], textarea, select{
  width:100%;
  border:1px solid var(--border);
  border-radius:12px;
  padding:10px 12px;
  background:#fff;
  outline:none;
  transition:.15s;
}
input:focus, textarea:focus, select:focus{
  border-color:rgba(246,48,73,.55);
  box-shadow:0 0 0 4px rgba(246,48,73,.12);
}

/* ===== Landing Hero ===== */
.ts-landing-hero{
  padding: 28px 0 18px;
  background: var(--g-primary);
  border-bottom: 1px solid var(--border);
}
.ts-landing-hero .ts-h1,
.ts-landing-hero .ts-lead,
.ts-landing-hero .ts-trust-item,
.ts-landing-hero a{color:#fff;}
.ts-landing-hero .ts-mini-card{background:rgba(255,255,255,.92); color:var(--text);}
.ts-hero-wrap{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 14px;
  align-items: stretch;
}
.ts-h1{
  margin:0 0 10px;
  font-size: 30px;
  line-height: 1.25;
  letter-spacing: -.2px;
}
.ts-lead{
  margin:0 0 14px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.9;
}
.ts-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;}
.ts-trust{display:flex;gap:10px;flex-wrap:wrap;}
.ts-trust-item{
  padding:8px 10px;
  border:1px solid rgba(17,24,39,.10);
  border-radius:999px;
  background:#fff;
  font-weight:900;
  font-size:13px;
}
.ts-mini-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px;
}
.ts-mini-kv{
  display:flex;
  justify-content:space-between;
  padding:10px 0;
  border-bottom:1px dashed rgba(17,24,39,.12);
}
.ts-mini-kv:last-child{border-bottom:0;}
.ts-mini-kv span{color: rgba(17,24,39,.68); font-weight:800;}
.ts-mini-kv b{font-weight:950;}
.ts-note{ margin:10px 0 0; color: rgba(17,24,39,.55); font-size: 13px; line-height:1.7; }
.ts-full{ width:100%; }

.ts-landing-section{padding: 22px 0;}
.ts-section-head h2{margin:0 0 6px; font-size:22px; line-height:1.35;}
.ts-section-head p{margin:0 0 14px; color: var(--muted);}

.ts-service-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}
.ts-service-card{
  display:flex;
  gap:12px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(17,24,39,.10);
  background:#fff;
  text-decoration:none !important;
  color:inherit;
  transition:.15s ease;
}
.ts-service-card:hover{
  transform: translateY(-2px);
  box-shadow:0 14px 30px rgba(0,0,0,.08);
  border-color: rgba(246,48,73,.25);
}
.ts-service-card__icon{
  width:44px;height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background: rgba(246,48,73,.10);
  flex:0 0 auto;
  font-size:20px;
}
.ts-service-card__title{margin:0 0 6px;font-size:18px;line-height:1.35}
.ts-service-card__text{margin:0 0 10px;line-height:1.8;color:var(--muted)}
.ts-service-card__cta{font-weight:950;color:var(--accent)}

/* Value */
.ts-value-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ts-value-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px;
}
.ts-ic{
  width:44px;height:44px;
  border-radius:14px;
  display:grid;place-items:center;
  background: rgba(246,48,73,.10);
  margin-bottom: 10px;
  font-size:20px;
}
.ts-value-card h3{margin:0 0 6px;font-size:16px;}
.ts-value-card p{margin:0;color:var(--muted);}

/* Stats */
.ts-stats{ padding-top: 8px; padding-bottom: 8px; }
.ts-stats-wrap{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  border:1px solid var(--border);
  border-radius: 18px;
  background:#fff;
  box-shadow: var(--shadow);
  padding: 14px;
}
.ts-stat{
  padding: 10px 10px;
  border-radius: 14px;
  background: rgba(17,24,39,.02);
  border: 1px solid rgba(17,24,39,.06);
}
.ts-stat__n{font-weight:950;font-size:18px;margin-bottom:4px;}
.ts-stat__t{color:rgba(17,24,39,.65);font-weight:800;font-size:13px;}

/* Compare */
.ts-compare-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.ts-compare-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px;
}
.ts-compare-card h3{margin:0 0 10px;}
.ts-compare-card ul{
  margin:0 0 12px;
  padding:0 18px 0 0;
  color: var(--muted);
  line-height: 1.9;
}
.ts-compare-card li{margin:6px 0;}
.ts-compare-card b{color: rgba(17,24,39,.85);}

/* Steps */
.ts-steps{ background: rgba(17,24,39,.02); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.ts-steps-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ts-step{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px;
}
.ts-step b{
  display:inline-grid; place-items:center;
  width:34px;height:34px;border-radius:12px;
  background: rgba(246,48,73,.10);
  margin-bottom: 10px;
  font-weight:950;
}
.ts-step h3{margin:0 0 6px; font-size:16px;}
.ts-step p{margin:0; color: var(--muted);}

/* Testimonials */
.ts-test-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ts-quote{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 16px;
  position: relative;
}
.ts-quote:before{
  content:"“";
  position:absolute;
  top: 8px;
  right: 14px;
  font-size: 42px;
  color: rgba(246,48,73,.18);
  font-weight: 950;
}
.ts-quote p{margin:0 0 12px;color:rgba(17,24,39,.88);}
.ts-quote__meta{color:rgba(17,24,39,.60);font-weight:900;font-size:13px;}

/* FAQ */
.ts-faq-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.ts-faq-item{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 12px 14px;
}
.ts-faq-item summary{
  cursor:pointer;
  font-weight:950;
  list-style:none;
}
.ts-faq-item summary::-webkit-details-marker{display:none;}
.ts-faq-item summary:after{
  content:"+";
  float:left;
  font-weight:950;
  color: rgba(17,24,39,.55);
}
.ts-faq-item[open] summary:after{ content:"—"; }
.ts-faq-item p{margin:10px 0 0;color:var(--muted);line-height:1.9;}

/* Final CTA */
.ts-final-cta{ padding: 26px 0 34px; }
.ts-final-box{
  border:1px solid rgba(246,48,73,.18);
  border-radius: 22px;
  box-shadow: 0 18px 45px rgba(0,0,0,.10);
  padding: 20px;
  background: radial-gradient(900px 280px at 70% 0%, rgba(246,48,73,.20), transparent 55%),
              linear-gradient(180deg, rgba(246,48,73,.08), rgba(255,255,255,1));
}
.ts-final-box h2{margin:0 0 8px;font-size:22px;}
.ts-final-box p{margin:0 0 14px;color:var(--muted);}
.ts-final-actions{display:flex;gap:10px;flex-wrap:wrap;}

/* Lead Form Section (CF7) */
.ts-leadform{
  padding: 26px 0;
  background: rgba(17,24,39,.02);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.ts-leadform-wrap{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: start;
}
.ts-leadform-left h2{ margin:0 0 8px; font-size:22px; line-height:1.35; }
.ts-leadform-left p{ margin:0 0 14px; color: var(--muted); line-height:1.9; }
.ts-lead-bullets{
  margin:0 0 14px;
  padding:0;
  list-style:none;
  display:grid;
  gap:8px;
}
.ts-lead-bullets li{
  background:#fff;
  border:1px solid rgba(17,24,39,.10);
  border-radius: 14px;
  padding:10px 12px;
  box-shadow: var(--shadow);
  font-weight:900;
  font-size:14px;
}
.ts-lead-mini{
  margin-top: 12px;
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 14px;
}
.ts-form-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(0,0,0,.10);
  padding: 16px;
}
.ts-form-head h3{ margin:0 0 6px; font-size:18px; }
.ts-form-head p{ margin:0 0 12px; color: var(--muted); }

.wpcf7 form{ margin:0; }
.wpcf7 form p{ margin:0 0 10px; }
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 textarea,
.wpcf7 select{
  width:100%;
  border:1px solid rgba(17,24,39,.12);
  border-radius: 14px;
  padding: 11px 12px;
  background:#fff;
  outline:none;
  transition:.15s;
  font-family:inherit;
}
.wpcf7 textarea{ min-height:120px; resize:vertical; }
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus{
  border-color: rgba(246,48,73,.60);
  box-shadow: 0 0 0 4px rgba(246,48,73,.14);
}
.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"]{
  width:100%;
  border:0;
  border-radius: 14px;
  padding: 12px 14px;
  font-weight: 950;
  background: var(--accent);
  color:#fff;
  box-shadow: 0 12px 22px rgba(246,48,73,.18);
  transition:.15s;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7 button[type="submit"]:hover{
  background: var(--accent2);
  transform: translateY(-1px);
}
.wpcf7-not-valid-tip{ margin-top:6px; font-weight:900; font-size:13px; }
.wpcf7-response-output{
  margin: 12px 0 0 !important;
  border-radius: 14px;
  padding: 12px 12px !important;
  font-weight: 900;
}
.wpcf7 .wpcf7-spinner{ margin-right: 10px; }

.ts-form-note{ margin:10px 0 0; color: rgba(17,24,39,.55); font-size: 13px; line-height: 1.7; }

/* Reveal effect
   مهم: اگر JS/IntersectionObserver لود نشود، محتوا نباید مخفی بماند.
   بنابراین فقط وقتی کلاس ts-js روی html هست، انیمیشن فعال می‌شود. */
.ts-reveal{ opacity: 1; transform: none; }
html.ts-js .ts-reveal{
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .45s ease, transform .45s ease;
}
html.ts-js .ts-reveal.is-in{ opacity: 1; transform: translateY(0); }

@media(max-width: 900px){
  .ts-hero-wrap{ grid-template-columns: 1fr; }
  .ts-h1{ font-size: 24px; }
  .ts-service-grid{ grid-template-columns: 1fr; }
  .ts-value-grid{ grid-template-columns: 1fr; }
  .ts-stats-wrap{ grid-template-columns: 1fr 1fr; }
  .ts-compare-grid{ grid-template-columns: 1fr; }
  .ts-steps-grid{ grid-template-columns: 1fr; }
  .ts-test-grid{ grid-template-columns: 1fr; }
  .ts-faq-grid{ grid-template-columns: 1fr; }
  .ts-leadform-wrap{ grid-template-columns: 1fr; }
}



/* =========================================
   SINGLE ONLY – FIX content-grid sidebar column
   - Collapse 2-column grid to 1 column on single
   - Hide sidebar area on single
   - Keep comfortable side margins for content
========================================= */
body.single .content-grid{
  grid-template-columns: 1fr !important;
}

body.single .content-grid > aside,
body.single .content-grid > .sidebar,
body.single .content-grid > #secondary,
body.single .content-grid > .widget-area{
  display:none !important;
}

/* Keep a balanced margin on the main content box (single only) */
body.single .content-grid > *{
  margin-left: 32px;
  margin-right: 32px;
}

@media (max-width:768px){
  body.single .content-grid > *{
    margin-left: 12px;
    margin-right: 12px;
  }
}




/* =========================================
   SINGLE ONLY – HIDE FEATURED IMAGE (safety)
========================================= */
body.single .post-thumbnail,
body.single .wp-post-image,
body.single .featured-image,
body.single .entry-media{
  display: none !important;
}




/* ===========================
   FOOTER – cleaner, modern
=========================== */
.site-footer{
  margin-top: 48px;
  padding: 36px 0 22px;
  background: rgba(0,0,0,.03);
  border-top: 1px solid rgba(0,0,0,.08);
}

.site-footer .footer-inner{
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 24px;
  align-items: start;
}

.site-footer .footer-site-name{
  font-weight: 800;
  letter-spacing: -.2px;
  text-decoration: none;
}

.site-footer .footer-desc{
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 1.7;
  opacity: .78;
  max-width: 42ch;
}

.site-footer .footer-title{
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .12em;
  opacity: .75;
  margin-bottom: 10px;
}

.site-footer .footer-menu{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}

.site-footer .footer-menu a,
.site-footer .footer-link{
  font-size: 14px;
  text-decoration: none;
  opacity: .85;
}

.site-footer .footer-menu a:hover,
.site-footer .footer-link:hover{
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.site-footer .footer-meta-row{ margin: 0 0 8px; }

.site-footer .footer-bottom{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(0,0,0,.08);
}

.site-footer .footer-copy{
  font-size: 13px;
  opacity: .72;
}

/* Responsive footer */
@media (max-width: 900px){
  .site-footer .footer-inner{
    grid-template-columns: 1fr;
  }
  .site-footer .footer-desc{ max-width: none; }
}



/* FOOTER RTL FIX */
.site-footer{
  text-align: right;
}
.site-footer .footer-inner{
  grid-template-columns: 1.4fr 1fr 1fr;
}
.site-footer .footer-menu{
  text-align: right;
}



/* ===========================
   HEADER MENU ICONS – DESKTOP ONLY (AUTO)
=========================== */
@media (min-width: 992px) {
  .main-nav ul.menu > li > a{
    position: relative;
    padding-right: 32px; /* RTL space for icon */
  }
  .main-nav ul.menu > li > a .menu-icon{
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background-size: 18px 18px;
    background-repeat: no-repeat;
    opacity: .9;
    pointer-events: none;
  }
}



/* ===========================
   HEADER MENU ICONS – DESKTOP ONLY (AUTO | FIXED)
=========================== */
@media (min-width: 992px) {
  header nav a{
    position: relative;
    padding-right: 32px;
  }
  header nav a .menu-icon{
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background-size: 18px 18px;
    background-repeat: no-repeat;
    opacity: .9;
    pointer-events: none;
  }
}



/* ===========================
   HEADER MENU ICONS – spacing polish (desktop)
=========================== */
@media (min-width: 992px) {
  /* make links align nicely in RTL */
  header nav a{
    display: inline-flex;
    align-items: center;
    gap: 10px;                 /* space between text and icon */
    padding-right: 14px;       /* reset; we will not reserve huge space */
    padding-left: 12px;
    line-height: 1.2;
  }

  /* place icon before text in RTL using order */
  header nav a .menu-icon{
    position: static;          /* no absolute */
    transform: none;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    opacity: .9;
    margin-right: 0;
  }
}



/* ===========================
   CONTENT TABLES (Posts + Pages)
   - RTL-friendly
   - Responsive horizontal scroll on small screens
   - Supports Classic Editor + Gutenberg (wp-block-table)
=========================== */

/* Gutenberg wrapper */
.entry-content figure.wp-block-table{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  margin: 1.5em 0;
}

/* Base table */
.entry-content table{
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  margin: 1.5em 0;
  font-size: 15px;
  line-height: 1.7;
  background: #fff;
}

/* If table is inside Gutenberg wrapper, avoid double margins */
.entry-content figure.wp-block-table table{
  margin: 0;
}

/* Head / cells */
.entry-content thead{
  background: rgba(0,0,0,.04);
}

.entry-content th,
.entry-content td{
  border: 1px solid rgba(0,0,0,.12);
  padding: 10px 12px;
  text-align: right;          /* RTL */
  vertical-align: top;
  white-space: normal;        /* allow wrapping on desktop */
  word-break: break-word;
}

.entry-content th{
  font-weight: 700;
  font-size: 14px;
}

/* zebra rows */
.entry-content tbody tr:nth-child(even){
  background: rgba(0,0,0,.02);
}

/* small screens: scroll instead of breaking layout */
@media (max-width: 900px){
  .entry-content table{
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .entry-content th,
  .entry-content td{
    white-space: nowrap;      /* keep columns readable; horizontal scroll handles overflow */
  }
}

/* extra-tight phones */
@media (max-width: 480px){
  .entry-content table{
    font-size: 14px;
  }
  .entry-content th,
  .entry-content td{
    padding: 9px 10px;
  }
}



/* ===========================
   LOGO MAX HEIGHT + SHINE EFFECT
=========================== */

/* limit logo height */
.site-logo img,
.custom-logo,
.custom-logo-link img,
header img[alt*="logo"]{
  max-height: 84px;
  width: auto;
  height: auto;
}

/* wrapper for shine */
.site-logo,
.custom-logo-link{
  position: relative;
  display: inline-block;
  overflow: hidden;
}

/* shine effect */
.site-logo::after,
.custom-logo-link::after{
  content: "";
  position: absolute;
  top: -20%;
  left: -120%;
  width: 60%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.45) 50%,
    rgba(255,255,255,0) 100%
  );
  transform: skewX(-20deg);
  animation: logo-shine 7s ease-in-out infinite;
  pointer-events: none;
}

@keyframes logo-shine{
  0%{ left:-120%; }
  60%{ left:-120%; }
  100%{ left:120%; }
}

/* reduce motion respect */
@media (prefers-reduced-motion: reduce){
  .site-logo::after,
  .custom-logo-link::after{
    animation: none;
  }
}



/* ===========================
   HOME PAGE – MODERN CARDS
=========================== */

/* section background */
.home .cards-section{
  background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,0));
  padding: 32px 0;
}

/* card base */
.home .card,
.home .feature-card{
  background: #fff;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
  padding: 26px 26px 22px;
  display: flex;
  flex-direction: column;
  transition: transform .25s ease, box-shadow .25s ease;
  min-height: 220px;
}

/* hover */
.home .card:hover,
.home .feature-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(0,0,0,.10);
}

/* icon badge */
.home .card .icon,
.home .feature-card .icon{
  width: 48px;
  height: 48px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(220,38,38,.08);
  margin-bottom: 14px;
}

.home .card .icon img,
.home .feature-card .icon img{
  width: 22px;
  height: 22px;
}

/* titles */
.home .card h3,
.home .feature-card h3{
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 8px;
}

/* text */
.home .card p,
.home .feature-card p{
  font-size: 15px;
  line-height: 1.75;
  color: rgba(0,0,0,.72);
}

/* CTA */
.home .card .card-cta,
.home .feature-card .card-cta{
  margin-top: auto;
  align-self: flex-start;
  margin-top: 18px;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  color: #dc2626;
  border: 1px solid rgba(220,38,38,.25);
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}

.home .card .card-cta:hover,
.home .feature-card .card-cta:hover{
  background: #dc2626;
  color: #fff;
}

/* grid spacing */
.home .cards-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

@media (max-width: 1024px){
  .home .cards-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px){
  .home .cards-grid{
    grid-template-columns: 1fr;
  }
}



/* ===========================
   HOME CARDS – modern polish
=========================== */
.ts-service-grid--landing{
  gap: 28px;
}

/* Service cards (2 big ones) */
.ts-service-card{
  border: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.92);
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(0,0,0,.05);
  padding: 26px 26px;
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 18px;
  align-items: start;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ts-service-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 48px rgba(0,0,0,.08);
  border-color: rgba(0,0,0,.10);
}

.ts-service-card__icon{
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: rgba(255, 88, 88, .10);
  font-size: 26px;
}

.ts-service-card__title{
  margin: 0 0 8px;
  font-size: 26px;
  letter-spacing: -.2px;
}

.ts-service-card__text{
  margin: 0;
  font-size: 16px;
  line-height: 1.85;
  opacity: .85;
}

/* CTA as ghost button */
.ts-service-card__cta{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.7);
  font-weight: 700;
  font-size: 14px;
  opacity: .95;
}

.ts-service-card:hover .ts-service-card__cta{
  background: rgba(0,0,0,.03);
}

/* Value cards (3 small ones) */
.ts-value{
  background: radial-gradient(80% 120% at 50% 0%, rgba(0,0,0,.035), rgba(0,0,0,0));
}

.ts-value-grid{
  gap: 24px;
}

.ts-value-card{
  border: 1px solid rgba(0,0,0,.06);
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(0,0,0,.04);
  padding: 26px 24px;
  min-height: 190px;
  display: flex;
  flex-direction: column;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ts-value-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 48px rgba(0,0,0,.07);
  border-color: rgba(0,0,0,.10);
}

.ts-value-card .ts-ic{
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: rgba(255, 88, 88, .10);
  display: grid;
  place-items: center;
  font-size: 22px;
  margin-bottom: 14px;
}

.ts-value-card h3{
  margin: 0 0 10px;
  font-size: 20px;
  letter-spacing: -.1px;
}

.ts-value-card p{
  margin: 0;
  font-size: 15px;
  line-height: 1.85;
  opacity: .85;
}

@media (max-width: 900px){
  .ts-service-card{
    grid-template-columns: 1fr;
  }
  .ts-service-card__icon{
    width: 48px;
    height: 48px;
    border-radius: 14px;
  }
  .ts-service-card__title{ font-size: 22px; }
}



/* === Header CTA === */
.site-header .header-inner{
  gap: 14px;
}
.header-cta{
  white-space: nowrap;
  padding: 10px 14px;
  border-radius: 12px;
}
@media (max-width: 900px){
  .header-cta{
    display: none; /* keep mobile clean; CTA is in hero/form */
  }
}

/* === Form trust badges === */
.ts-form-trust{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 14px;
}
.ts-form-trust__item{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 13px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}


/* === Ghost button: normal white bg + hover light gray === */
.ts-btn.ts-btn--ghost{
  background: #fff;
  color: #000;
  border: 1.5px solid #fff;
  transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.ts-btn.ts-btn--ghost:hover,
.ts-btn.ts-btn--ghost:focus{
  background: rgba(255,255,255,.82); /* light gray-ish on dark hero */
  color: #000;
  border-color: rgba(255,255,255,.82);
  transform: translateY(-1px);
}


/* === Responsive menu label typography === */
.nav-toggle .label{
  font-weight: 700;
  letter-spacing: 0;
  font-size: 14px;
}
@media (max-width: 900px){
  .nav-toggle .label{
    font-size: 15px;
    font-weight: 800;
    opacity: .95;
  }
}


/* =========================================
   Comments (Chat-style) - TurkiyeSite
========================================= */

.ts-comments-chat-wrap{
  max-width: 980px;
  margin: 44px auto;
  padding: 0 14px;
}

.ts-comments-chat-wrap .comments-title{
  font-weight: 900;
  font-size: 18px;
  color: #111F35;
  margin: 0 0 18px;
}

.ts-comments-chat{
  list-style: none;
  margin: 0;
  padding: 0;
}

.ts-comment-item{
  margin: 0 0 16px;
}

/* Chat row */
.ts-chat{
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: flex-end;
}

/* Avatar */
.ts-chat__avatar img{
  width: 42px;
  height: 42px;
  border-radius: 999px;
  display: block;
  border: 2px solid rgba(246,48,73,.22);
  background: #fff;
}

/* Bubble */
.ts-chat__bubble{
  position: relative;
  width: clamp(280px, 68%, 720px);
  max-width: 720px;
  border-radius: 18px;
  padding: 14px 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
  border: 1px solid rgba(0,0,0,.06);
}

/* Meta row: author + date on ONE line */
.ts-chat__meta{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.ts-chat__author{
  font-weight: 900;
  color: #111F35;
  font-size: 13px;
}

.ts-chat__date{
  font-size: 11px;
  color: rgba(17,31,53,.62);
  white-space: nowrap;
}

/* Content */
.ts-chat__content{
  font-size: 14px;
  line-height: 1.9;
  color: #1f1f1f;
}
.ts-chat__content p{ margin: 0 0 10px; }
.ts-chat__content p:last-child{ margin-bottom: 0; }

.ts-chat__pending{
  display: inline-block;
  margin-bottom: 10px;
  font-size: 12px;
  opacity: .8;
}

/* Actions */
.ts-chat__actions{
  margin-top: 10px;
}
.ts-chat__actions a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.10);
  text-decoration: none;
  font-weight: 800;
  font-size: 12px;
  color: #111F35;
  background: rgba(255,255,255,.75);
}
.ts-chat__actions a:hover{
  border-color: rgba(246,48,73,.45);
  box-shadow: 0 8px 18px rgba(246,48,73,.12);
}

/* Q (top-level) bubble: warm gradient like reference */
.ts-chat--q{
  flex-direction: row-reverse; /* RTL: question on right */
}
.ts-chat--q .ts-chat__bubble{
  background: linear-gradient(135deg, #FF3D77 0%, #FF7A18 100%);
  color: #fff;
  border: 0;
}
.ts-chat--q .ts-chat__author,
.ts-chat--q .ts-chat__date,
.ts-chat--q .ts-chat__content{
  color: #fff;
}
.ts-chat--q .ts-chat__date{ color: rgba(255,255,255,.85); }
.ts-chat--q .ts-chat__actions a{
  background: rgba(255,255,255,.18);
  color: #fff;
  border-color: rgba(255,255,255,.35);
}

/* Tail for Q */
.ts-chat--q .ts-chat__bubble::after{
  content:"";
  position:absolute;
  right: -8px;
  top: 18px;
  width: 0; height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #FF7A18;
}

/* A (reply) bubble: light neutral (still right-aligned like chat reference) */
.ts-chat--a{
  flex-direction: row-reverse;
}
.ts-chat--a .ts-chat__bubble{
  background: #f6f7f9;
  color: #111;
}
.ts-chat--a .ts-chat__bubble::after{
  content:"";
  position:absolute;
  right: -8px;
  top: 18px;
  width: 0; height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #f6f7f9;
}

/* Replies container spacing */
.ts-comments-chat .children{
  list-style: none;
  margin: 14px 0 0;
  padding: 0 0 0 0;
}
.ts-comments-chat .children > .ts-comment-item{
  margin-top: 14px;
  opacity: .98;
}

/* Comment form tweaks */
.ts-comment-form input[type="text"],
.ts-comment-form input[type="email"],
.ts-comment-form input[type="url"],
.ts-comment-form textarea{
  width: 100%;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 14px;
  outline: none;
  transition: .2s ease;
  background: #fff;
}
.ts-comment-form textarea{ min-height: 140px; resize: vertical; }
.ts-comment-form input:focus,
.ts-comment-form textarea:focus{
  border-color: rgba(246,48,73,.65);
  box-shadow: 0 0 0 3px rgba(246,48,73,.14);
}

/* Submit button font + feel */
.ts-comment-submit,
.ts-comment-form .submit{
  background: #F63049;
  font-family: inherit;
  font-weight: 900;
  letter-spacing: -.2px;
  -webkit-font-smoothing: antialiased;
  color: #fff;
  border: none;
  padding: 12px 22px;
  border-radius: 999px;
  font-weight: 900;
  cursor: pointer;
  transition: .2s ease;
  font-family: inherit;
  letter-spacing: .2px;
}
.ts-comment-submit:hover,
.ts-comment-form .submit:hover{
  background: #D02752;
  transform: translateY(-1px);
}

/* Mobile */
@media (max-width: 768px){
  .ts-chat{ gap: 10px; }
  .ts-chat__avatar img{ width: 36px; height: 36px; }
  .ts-chat__bubble{ padding: 12px 12px; border-radius: 16px; }
  .ts-chat__content{ font-size: 13px; }
  .ts-chat__bubble{ width: 100%; max-width: 100%; }
  .ts-chat__meta{ flex-wrap: wrap; gap: 6px; }
}


/* =========================================
   Sidebar: Recent Posts widget (Professional)
========================================= */
.widget.widget_recent_entries{
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 16px;
  padding: 14px 14px 10px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}
.widget.widget_recent_entries .widget-title{
  margin: 0 0 10px;
  font-weight: 900;
  font-size: 14px;
  color: #111F35;
}
.widget.widget_recent_entries ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}
.widget.widget_recent_entries li{
  margin: 0;
}
.widget.widget_recent_entries a{
  display: block;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.06);
  background: #fafafa;
  color: #111F35;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
}
.widget.widget_recent_entries a::before{
  content:"";
  position:absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #F63049;
  opacity: .9;
}
.widget.widget_recent_entries a:hover{
  background: #fff;
  border-color: rgba(246,48,73,.25);
  box-shadow: 0 10px 22px rgba(246,48,73,.10);
  transform: translateY(-1px);
}


/* =========================
   Desktop spacing + RTL alignment fixes (v1.2.3)
   ========================= */

/* 1) Single content grid: remove forced side margins on desktop */
@media (min-width: 1024px){
  body.single .content-grid > *{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* 2) Icon before title (single + page) */
.ts-title-row{
  display:flex;
  align-items:center;
  gap:12px;
  justify-content:flex-start; /* RTL: start = right */
  direction: rtl;
  text-align: right;
  margin: 0 0 10px;
}
.ts-title-icon{
  width:34px;
  height:34px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(246,48,73,.10);
  border: 1px solid rgba(246,48,73,.20);
  color: var(--accent);
  flex: 0 0 auto;
}
.ts-title-row .entry-title{
  margin:0;
  text-align:right;
}

/* 3) Header desktop menu inside clean box */
@media (min-width: 1024px){
  .site-header .main-navigation{
    background:#fff;
    border:1px solid rgba(17,31,53,.10);
    box-shadow: 0 10px 22px rgba(0,0,0,.06);
    border-radius: 16px;
    padding: 8px 10px;
  }
  .site-header .main-navigation ul{
    gap: 2px;
  }
  .site-header .main-navigation a{
    border-radius: 12px;
    padding: 10px 12px;
  }
  .site-header .main-navigation a:hover,
  .site-header .main-navigation .current-menu-item > a{
    background: rgba(17,31,53,.06);
  }
}

/* 4) Homepage / site buttons: improve Persian font rendering */
.ts-btn, button, input[type="submit"]{
  font-family: inherit;
  font-weight: 850;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* 5) Sidebar recent posts: arrow + "random-like" colors per item */
.sidebar .widget_recent_entries ul li a{
  position: relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 10px;
  padding-inline-start: 30px; /* space for arrow (RTL aware) */
}
.sidebar .widget_recent_entries ul li a::before{
  content: "➜";
  position:absolute;
  inset-inline-start: 8px;
  top: 2px;
  font-size: 15px;
  line-height: 1;
  opacity: .95;
  transform: translateY(2px);
}

/* color variations (nth-child gives a random feel) */
.sidebar .widget_recent_entries ul li:nth-child(6n+1) a::before{ color:#F63049; }
.sidebar .widget_recent_entries ul li:nth-child(6n+2) a::before{ color:#8A244B; }
.sidebar .widget_recent_entries ul li:nth-child(6n+3) a::before{ color:#111F35; }
.sidebar .widget_recent_entries ul li:nth-child(6n+4) a::before{ color:#D02752; }
.sidebar .widget_recent_entries ul li:nth-child(6n+5) a::before{ color:#2B6CB0; }
.sidebar .widget_recent_entries ul li:nth-child(6n)   a::before{ color:#0E9F6E; }

/* 6) Comments: force RTL/right alignment including avatar position */
.ts-chat{
  flex-direction: row-reverse;
}
.ts-chat__meta{
  flex-direction: row-reverse;
  text-align: right;
}
.ts-comments-chat-wrap,
.ts-comments-chat-wrap .comment-content,
.ts-comments-chat-wrap .comment,
.ts-comments-chat-wrap .comments-title{
  text-align: right;
}



/* ===== Typography & UI polish (v1.2.4) ===== */

/* Title row: keep everything RTL-friendly */
.ts-title-row{
  flex-direction: row-reverse;
  text-align: right;
}
.entry-title{
  text-align: right;
}

/* Post/Page content headings (H1-H6): sizes + icon */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{
  margin: 22px 0 12px;
  line-height: 1.35;
  color: var(--navy);
  display: flex;
  flex-direction: row-reverse; /* icon on the right in RTL */
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  text-align: right;
  letter-spacing: -0.2px;
}

.entry-content h1{ font-size: 28px; font-weight: 950; }
.entry-content h2{ font-size: 22px; font-weight: 950; }
.entry-content h3{ font-size: 19px; font-weight: 900; }
.entry-content h4{ font-size: 17px; font-weight: 900; }
.entry-content h5{ font-size: 15px; font-weight: 900; opacity: .95; }
.entry-content h6{ font-size: 14px; font-weight: 900; opacity: .92; }

/* Heading icon */
.entry-content h1::before,
.entry-content h2::before,
.entry-content h3::before,
.entry-content h4::before,
.entry-content h5::before,
.entry-content h6::before{
  content: "";
  flex: 0 0 auto;
  width: 12px;
  height: 12px;
  border-radius: 5px;
  background: var(--g-primary);
  box-shadow: 0 8px 18px rgba(208,39,82,.18);
}

/* Slight variation by level */
.entry-content h1::before{ width: 14px; height: 14px; border-radius: 6px; }
.entry-content h3::before{ width: 11px; height: 11px; border-radius: 5px; opacity: .95; }
.entry-content h4::before{ width: 10px; height: 10px; border-radius: 4px; opacity: .92; }
.entry-content h5::before{ width: 9px; height: 9px; border-radius: 4px; opacity: .88; }
.entry-content h6::before{ width: 8px; height: 8px; border-radius: 3px; opacity: .84; }

/* HR styling inside content */
.entry-content hr{
  border: 0;
  height: 1px;
  margin: 26px 0;
  background: linear-gradient(90deg, rgba(246,48,73,.00), rgba(246,48,73,.55), rgba(17,31,53,.12), rgba(246,48,73,.55), rgba(246,48,73,.00));
}

/* Tag UI (works for tag links, tag cloud, plugins) */
.tags-links,
.tag-links,
.post-tags,
.entry-content .post-tags,
.entry-content .tags,
.entry-content .tagcloud{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 16px;
}

.tags-links a,
.tag-links a,
.post-tags a,
.tagcloud a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(246,48,73,.08);
  border: 1px solid rgba(246,48,73,.18);
  color: #111F35;
  font-weight: 900;
  font-size: 12px;
  text-decoration: none !important;
}

.tags-links a::before,
.tag-links a::before,
.post-tags a::before,
.tagcloud a::before{
  content: "#";
  font-weight: 950;
  color: var(--accent2);
  opacity: .95;
}

.tags-links a:hover,
.tag-links a:hover,
.post-tags a:hover,
.tagcloud a:hover{
  background: rgba(246,48,73,.12);
  border-color: rgba(246,48,73,.28);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
}

/* Comments: ensure RTL alignment + avatar on right */
.ts-chat{
  flex-direction: row-reverse;
}
.ts-chat__bubble{
  text-align: right;
}
.ts-chat__meta{
  flex-direction: row-reverse;
}

/* ===== RTL hardening + comment palette (v1.2.5) ===== */

/* Post/Page titles: enforce RTL direction */
.entry-title,
.page-title,
.single .entry-title,
.page .entry-title{
  direction: rtl;
  unicode-bidi: plaintext;
  text-align: right;
}

/* Headings inside content: force RTL direction */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{
  direction: rtl;
  unicode-bidi: plaintext;
}

/* Comments: bubble background aligned to brand palette */
.ts-chat{
  justify-content: flex-start;
}
.ts-chat__bubble{
  direction: rtl;
  unicode-bidi: plaintext;
  background: linear-gradient(135deg,
    rgba(246,48,73,.10),
    rgba(208,39,82,.06),
    rgba(17,31,53,.03)
  );
  border: 1px solid rgba(246,48,73,.18);
}

/* Comment author/avatar RTL + right alignment */
.ts-chat__meta,
.ts-chat__author,
.ts-chat__date,
.ts-chat__content{
  direction: rtl;
  unicode-bidi: plaintext;
  text-align: right;
}
.ts-chat__actions{
  text-align: right;
}



/* WordPress native comment titles/forms RTL */
.comments-title,
.comment-reply-title,
.comment-respond,
.comment-form,
.comment-form label,
.comment-notes{
  text-align: right;
}




/* ===== FORCE RTL VISUAL FIX (v1.2.7) ===== */

/* Title row (icon should be on the RIGHT in RTL) */
.ts-title-row{
  direction: rtl !important;
  text-align: right !important;
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  flex-direction: row-reverse !important;
}
.ts-title-icon{ flex: 0 0 auto; }
.ts-title-icon{ margin-left: 10px !important; margin-right: 0 !important; }

/* Ensure post/page titles are RTL + right aligned */
.entry-title,
.page-title,
.single .entry-title,
.page .entry-title{
  direction: rtl !important;
  unicode-bidi: plaintext !important;
  text-align: right !important;
}

/* Content block RTL */
.single .entry-content,
.page .entry-content,
.single article,
.page article{
  direction: rtl !important;
  text-align: right !important;
}

/* Headings RTL + icon on RIGHT */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{
  direction: rtl !important;
  unicode-bidi: plaintext !important;
  text-align: right !important;
  position: relative;
  padding-right: 34px;
}
.entry-content h1::before,
.entry-content h2::before,
.entry-content h3::before,
.entry-content h4::before,
.entry-content h5::before,
.entry-content h6::before{
  content: "";
  position: absolute;
  right: 0;
  top: .55em;
  width: 14px;
  height: 14px;
  border-radius: 5px;
  background: linear-gradient(135deg, var(--accent2), var(--accent4));
  box-shadow: 0 10px 18px rgba(0,0,0,.08);
}

/* Lists: bullet on RIGHT in RTL */
.entry-content ul,
.entry-content ol{
  direction: rtl !important;
  text-align: right !important;
  padding-right: 1.2em !important;
  padding-left: 0 !important;
  margin-right: 0 !important;
}
.entry-content li{
  direction: rtl !important;
  text-align: right !important;
}
.entry-content ul li::marker,
.entry-content ol li::marker{
  color: rgba(246,48,73,.95);
  font-weight: 900;
}

/* Comments: avatar + author on RIGHT */
.ts-comments-chat,
.ts-comments-chat *{
  direction: rtl !important;
  unicode-bidi: plaintext !important;
}
.ts-chat{
  flex-direction: row-reverse !important;
  justify-content: flex-start !important;
}
.ts-chat__avatar{ order: 2 !important; }
.ts-chat__bubble{ order: 1 !important; }

.ts-chat__meta{
  flex-direction: row-reverse !important;
  justify-content: flex-end !important;
  text-align: right !important;
  gap: 10px !important;
}
.ts-chat__author,
.ts-chat__date,
.ts-chat__content,
.ts-chat__actions{
  text-align: right !important;
}

/* Make avatar sit flush on the RIGHT side */
.ts-chat__avatar{ margin-right: 0 !important; margin-left: 12px !important; }

/* Replies: keep same RTL layout */
.ts-comment-item .children{ margin-right: 32px; margin-left: 0; }




/* ===== RTL PATCH (v1.2.8) ===== */
/* Title row: icon BEFORE title in RTL (icon on the RIGHT) */
.single .ts-title-row,
.page .ts-title-row{
  direction: rtl !important;
  text-align: right !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row-reverse !important;
  justify-content: flex-start !important; /* start = right in row-reverse */
  gap: 12px !important;
}
.single .ts-title-row .ts-title-icon,
.page .ts-title-row .ts-title-icon{
  margin-right: 10px !important;
  margin-left: 0 !important;
}

/* Headings: force right alignment even for block editor headings */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-content .wp-block-heading{
  direction: rtl !important;
  unicode-bidi: plaintext !important;
  text-align: right !important;
  display: block !important;
  width: 100% !important;
}

/* Ensure heading icon sits on the RIGHT and text doesn't overlap */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{
  position: relative !important;
  padding-right: 34px !important;
  padding-left: 0 !important;
}
.entry-content h1::before,
.entry-content h2::before,
.entry-content h3::before,
.entry-content h4::before,
.entry-content h5::before,
.entry-content h6::before{
  right: 0 !important;
  left: auto !important;
}
