@import url('https://fonts.googleapis.com/css2?family=Noto+Kufi+Arabic:wght@400;600;700&family=Noto+Sans+Arabic:wght@400;500;600;700&display=swap');

/* ══════════════════════════════════════════════════════════════════════
   Laser Proctology — Arabic (RTL) layer
   Loaded on /ar/ pages only. Scoped to body.lpar so nothing here can
   affect the English site even if the stylesheet is cached elsewhere.
   ══════════════════════════════════════════════════════════════════════ */

body.lpar {
  direction: rtl;
  text-align: right;
  font-family: "Noto Sans Arabic", "IBM Plex Sans Arabic", "Segoe UI", Tahoma, sans-serif;
  font-size: 17px;
  line-height: 1.95;               /* Arabic needs more leading than Latin */
  letter-spacing: 0;               /* letter-spacing breaks Arabic joining */
}

body.lpar h1,
body.lpar h2,
body.lpar h3,
body.lpar h4,
body.lpar .lp-logo__name,
body.lpar .lp-eyebrow,
body.lpar .lp-btn {
  font-family: "Noto Kufi Arabic", "Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif;
  letter-spacing: 0;
  font-kerning: none;
}

body.lpar h1 { line-height: 1.4; font-weight: 700; }
body.lpar h2 { line-height: 1.45; font-weight: 700; }
body.lpar h3 { line-height: 1.55; font-weight: 600; }
body.lpar p  { line-height: 1.95; }

/* Never letter-space or uppercase Arabic — both mangle the script. */
body.lpar .lp-eyebrow,
body.lpar .lp-pill,
body.lpar .lp-component-tag,
body.lpar .lp-step__time,
body.lpar .lp-tl__when,
body.lpar .lp-video__badge {
  text-transform: none;
  letter-spacing: 0;
}

/* ── Directional flips ─────────────────────────────────────────────── */

body.lpar .lp-topbar__inner,
body.lpar .lp-header__inner,
body.lpar .lp-nav__menu,
body.lpar .lp-topbar__meta,
body.lpar .lp-topbar__actions,
body.lpar .lp-header__cta,
body.lpar .lp-btn-row,
body.lpar .lp-hero__badges,
body.lpar .lp-card__foot,
body.lpar .lp-pain__row,
body.lpar .lp-tabs__nav {
  flex-direction: row-reverse;
}

body.lpar .lp-footer__grid,
body.lpar .lp-footer__bottom {
  direction: rtl;
}

body.lpar ul,
body.lpar ol {
  padding-right: 1.4em;
  padding-left: 0;
}

body.lpar .lp-list,
body.lpar .lp-list--check,
body.lpar .lp-list--warn,
body.lpar .lp-infocard__list {
  padding-right: 0;
  padding-left: 0;
  list-style-position: inside;
}

body.lpar .lp-list__mark,
body.lpar .lp-card__icon,
body.lpar .lp-infocard__icon {
  margin-left: .6rem;
  margin-right: 0;
}

/* Anything with a decorative left border becomes a right border. */
body.lpar .lp-note,
body.lpar .lp-lede,
body.lpar .lp-scope,
body.lpar .lp-reviewed,
body.lpar blockquote {
  border-left: 0;
  border-right: 3px solid currentColor;
  padding-left: 0;
  padding-right: 1rem;
}

body.lpar .lp-crumbs { text-align: right; }
body.lpar .lp-crumbs a { margin-left: .35rem; margin-right: 0; }

body.lpar .lp-step,
body.lpar .lp-grade,
body.lpar .lp-tl {
  text-align: right;
}
body.lpar .lp-step__n,
body.lpar .lp-grade__n {
  margin-left: .9rem;
  margin-right: 0;
}

body.lpar .lp-faq__q { text-align: right; padding-right: 0; padding-left: 2rem; }
body.lpar .lp-faq__q::after { left: .5rem; right: auto; }

body.lpar .lp-pain__track { direction: ltr; }   /* keep the bar filling from the same visual anchor */
body.lpar .lp-pain__fill  { direction: ltr; }

body.lpar .lp-wa-float { left: 1.25rem; right: auto; }

/* ── Numerals, phone numbers and Latin fragments ─────────────────────
   Latin/технical strings inside RTL text need isolating or they reorder.  */
body.lpar .lp-num,
body.lpar a[href^="tel:"],
body.lpar code,
body.lpar .lpar-ltr {
  direction: ltr;
  unicode-bidi: isolate;
  display: inline-block;
}

body.lpar table { direction: rtl; }
body.lpar th, body.lpar td { text-align: right; }

/* ── Tables and comparisons scroll rather than break the page ───────── */
body.lpar .lp-compare,
body.lpar .lp-table-wrap {
  overflow-x: auto;
}

/* ── Arabic-specific spacing tweaks ─────────────────────────────────── */
body.lpar .lp-hero__sub,
body.lpar .lp-lede {
  max-width: 62ch;
}

body.lpar .lp-section-head { text-align: right; }
body.lpar .lp-center,
body.lpar .lp-center .lp-btn-row,
body.lpar .lp-section-head.lp-center {
  text-align: center;
}
body.lpar .lp-center .lp-lede { margin-inline: auto; }

/* ── The language toggle reads as a control, not decoration ─────────── */
body.lpar .lp-topbar__lang,
.lp-topbar__lang {
  font-weight: 600;
  text-decoration: none;
}

/* ── Cards used on the Arabic pages ─────────────────────────────────── */
.lpar-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1px;
  margin: 2rem 0;
}
.lpar-fact {
  padding: 1.1rem 1.25rem;
  border: 1px solid rgba(128,128,128,.22);
  margin: -1px 0 0 -1px;
}
.lpar-fact b {
  display: block;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: .3rem;
}
.lpar-fact span {
  font-size: .92rem;
  opacity: .78;
  line-height: 1.7;
}

.lpar-main details.lp-faq__item {
  border-bottom: 1px solid rgba(128,128,128,.22);
  padding: .35rem 0;
}
.lpar-main details.lp-faq__item summary {
  cursor: pointer;
  padding: .85rem 0;
  font-weight: 600;
  list-style: none;
}
.lpar-main details.lp-faq__item summary::-webkit-details-marker { display: none; }
.lpar-main details.lp-faq__item summary::before {
  content: "+";
  margin-left: .6rem;
  font-weight: 700;
  opacity: .6;
}
.lpar-main details.lp-faq__item[open] summary::before { content: "–"; }
.lpar-main details.lp-faq__item .lp-faq__a { padding-bottom: .9rem; }

.lpar-main a:focus-visible,
.lpar-main summary:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (max-width: 640px) {
  body.lpar { font-size: 16.5px; }
  body.lpar .lp-topbar__meta { flex-direction: column; align-items: flex-end; }
}

@media (prefers-reduced-motion: reduce) {
  body.lpar * { animation: none !important; transition: none !important; }
}
