.factcheck-page {
  width: min(100%, 1700px);
  padding: 20px 14px 34px;
}

.factcheck-heading { margin-bottom: 9px; }
.factcheck-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 11px;
  color: var(--ink-500);
  font-size: .65rem;
  font-weight: 700;
}
.factcheck-breadcrumb a:hover { color: var(--emerald-700); }
.factcheck-breadcrumb i { font-size: .52rem; }
.factcheck-breadcrumb span { color: var(--emerald-700); }
.factcheck-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}
.factcheck-title-row h1 {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 0;
  color: var(--navy-900);
  font-size: clamp(1.42rem, 2vw, 1.72rem);
  font-weight: 800;
  letter-spacing: -.035em;
}
.factcheck-title-row h1 span {
  color: var(--ink-700);
  font-family: "IBM Plex Sans Arabic", sans-serif;
  font-size: .72em;
  letter-spacing: 0;
}
.factcheck-title-row h1 > i { color: var(--ink-300); font-size: .68rem; }
.factcheck-title-row > div:first-child > p { margin: 4px 0 0; color: var(--ink-500); font-size: .64rem; }
.factcheck-review-meta { display: flex; align-items: center; gap: 18px; }
.factcheck-updated { display: flex; align-items: center; gap: 8px; color: var(--ink-500); }
.factcheck-updated > i { font-size: 1rem; }
.factcheck-updated > span { display: grid; }
.factcheck-updated strong { color: var(--ink-700); font-size: .62rem; }
.factcheck-updated small { margin-top: 2px; font-size: .54rem; }
.reviewer-switch {
  min-width: 187px;
  min-height: 48px;
  display: grid;
  grid-template-columns: 34px 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 5px 10px;
  color: var(--ink-700);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 9px;
  text-align: left;
}
.reviewer-switch:hover { border-color: #b8c7d2; box-shadow: var(--shadow-sm); }
.reviewer-switch img { width: 34px; height: 34px; object-fit: cover; border-radius: 50%; }
.reviewer-switch > span { display: grid; }
.reviewer-switch small { color: var(--ink-500); font-size: .53rem; }
.reviewer-switch strong { margin-top: 2px; font-size: .62rem; }
.reviewer-switch > i { color: var(--ink-500); font-size: .61rem; }

.factcheck-journey { margin: 10px 0 14px; padding: 0 11px; }
.factcheck-journey ol {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}
.factcheck-journey li {
  position: relative;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--ink-500);
}
.factcheck-journey li:not(:last-child)::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 10px;
  left: 30px;
  right: 8px;
  height: 1px;
  background: #ccd7df;
}
.factcheck-journey li > span {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: var(--ink-500);
  background: var(--canvas);
  border: 1px solid #becbd5;
  border-radius: 50%;
  font-size: .5rem;
  font-weight: 800;
}
.factcheck-journey strong {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-right: 12px;
  color: var(--ink-700);
  background: var(--canvas);
  font-size: .61rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.factcheck-journey .complete > span,
.factcheck-journey .current > span { color: #fff; background: var(--emerald-600); border-color: var(--emerald-600); }
.factcheck-journey .complete > span { font-size: .62rem; }
.factcheck-journey .current strong { color: var(--emerald-700); }
.factcheck-journey .current > span { width: 24px; height: 24px; margin-top: -2px; font-size: .64rem; }

.factcheck-success {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 0 0 12px;
  padding: 12px 14px;
  color: var(--emerald-700);
  background: #eaf7f2;
  border: 1px solid #b9dfd2;
  border-radius: 10px;
}
.factcheck-success[hidden] { display: none !important; }
.factcheck-success > i { font-size: 1.25rem; }
.factcheck-success strong { color: var(--navy-900); font-size: .72rem; }
.factcheck-success p { margin: 3px 0 0; color: var(--ink-700); font-size: .6rem; }
.factcheck-success .btn-app { box-shadow: none; }

.factcheck-workspace {
  display: grid;
  grid-template-columns: minmax(225px, .72fr) minmax(500px, 2.05fr) minmax(315px, 1fr);
  grid-template-areas: "claims proof evidence";
  gap: 10px;
  align-items: stretch;
  min-height: calc(100vh - 215px);
}
.factcheck-workspace:has(.evidence-rail[hidden]) {
  grid-template-columns: minmax(225px, .72fr) minmax(500px, 3.05fr);
  grid-template-areas: "claims proof";
}
.claims-panel { grid-area: claims; min-width: 0; overflow: hidden; }
.fact-proof { grid-area: proof; min-width: 0; overflow: hidden; }
.evidence-rail { grid-area: evidence; min-width: 0; display: flex; flex-direction: column; overflow: hidden; scroll-margin-top: calc(var(--header-height) + 8px); }
.claims-panel .surface-header { min-height: 52px; padding: 12px 13px; }
.claims-panel .surface-title span { margin-left: 4px; color: var(--ink-700); font-family: "IBM Plex Sans Arabic", sans-serif; font-size: .8em; }
.claims-total { color: var(--ink-500); font-size: .58rem; font-weight: 700; }
.claims-list { margin: 0; padding: 10px 0; list-style: none; }
.claims-list li { margin: 0 3px; }
.claims-list li + li { margin-top: 2px; }
.claims-list button {
  width: 100%;
  min-height: 78px;
  display: grid;
  grid-template-columns: 14px 25px minmax(0, 1fr);
  align-items: start;
  gap: 7px;
  padding: 11px 8px;
  color: var(--ink-700);
  background: transparent;
  border: 1px solid transparent;
  border-radius: 7px;
  text-align: left;
}
.claims-list button:hover { background: #f8fafb; }
.claim-status-icon { margin-top: 4px; color: var(--emerald-600); font-size: .66rem; }
.claim-number {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  color: var(--ink-700);
  background: #fff;
  border: 1px solid #bdcbd5;
  border-radius: 50%;
  font-size: .55rem;
  font-weight: 700;
}
.claim-label { min-width: 0; display: grid; }
.claim-label strong { color: var(--navy-900); font-size: .6rem; line-height: 1.35; }
.claim-label small { margin-top: 3px; color: var(--ink-500); font-family: "IBM Plex Sans Arabic", sans-serif; font-size: .52rem; line-height: 1.45; }
.claim-label em { margin-top: 5px; color: var(--ink-500); font-size: .5rem; font-style: normal; }
.claims-list .unresolved .claim-status-icon { color: #e14d58; }
.claims-list .review .claim-status-icon { color: #df8a17; }
.claims-list .active button { color: #ad313c; background: #fff4f4; border-color: #ed646d; }
.claims-list .active .claim-number { color: #ad313c; border-color: #de8e94; }
.claims-list .active .claim-label strong,
.claims-list .active .claim-label small { color: #a93039; }

.proof-meta-bar {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 9px 16px;
  color: var(--ink-500);
  border-bottom: 1px solid var(--line);
  font-size: .54rem;
}
.proof-meta-bar > span:first-child { display: inline-flex; align-items: center; gap: 7px; }
.proof-meta-bar strong { color: var(--ink-700); }
.proof-editor { display: flex; align-items: center; gap: 7px; }
.proof-editor img { width: 27px; height: 27px; object-fit: cover; border-radius: 50%; }
.proof-editor small { color: var(--ink-500); }
.proof-document { padding: 17px 21px 22px; }
.proof-heading { padding-left: 2px; }
.proof-heading h2 { margin: 0; color: var(--navy-900); font-size: clamp(1.2rem, 1.7vw, 1.55rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.25; }
.proof-heading > div { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 15px; margin-top: 7px; color: var(--ink-500); font-size: .53rem; }
.proof-heading > div strong { color: var(--ink-700); }
.proof-heading .meta-chip { padding: 3px 7px; font-size: .49rem; }
.proof-language { margin-top: 18px; }
.proof-paragraph {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 12px;
  color: #2b4460;
}
.proof-paragraph + .proof-paragraph { margin-top: 13px; }
.proof-paragraph::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: -13px;
  left: 31px;
  width: 1px;
  background: #d7e0e7;
}
.proof-paragraph:last-child::before { bottom: 0; }
.proof-claim-marker {
  position: relative;
  z-index: 1;
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  margin-top: 2px;
  color: var(--emerald-700);
  background: #fff;
  border: 1px solid #7ebda9;
  border-radius: 50%;
  font-size: .45rem;
  font-weight: 800;
}
.proof-marker-stack { position: relative; z-index: 1; display: grid; gap: 4px; justify-items: start; }
.proof-marker-stack .proof-claim-marker { margin-top: 0; }
.proof-claim-marker:hover { box-shadow: 0 0 0 3px rgba(15,141,103,.13); }
.proof-claim-marker.unresolved { color: #d93b48; border-color: #e2616c; }
.proof-claim-marker.review { color: #c97910; border-color: #df9b3b; }
.proof-paragraph p { margin: 0; font: .78rem/1.62 Georgia, "Times New Roman", serif; }
.claim-highlight { padding: 1px 3px; color: inherit; background: transparent; border-radius: 2px; }
.claim-highlight.verified { color: #126b56; background: #dff3ec; }
.claim-highlight.unresolved { color: #ad303a; background: #fde4e6; border-bottom: 1px solid #e66d75; }
.claim-highlight.review { color: #995c0e; background: #fff0d5; }
.claim-highlight.removed-from-copy,
.claim-highlight.is-removed { color: var(--ink-500); background: #eef2f4; border-bottom-color: transparent; }
.claim-highlight del { text-decoration-thickness: 1.5px; text-decoration-color: #b74952; }
.claims-list .removed .claim-status-icon { color: var(--emerald-600); }
.claims-list .removed .claim-label strong { color: var(--ink-500); text-decoration: line-through; }
.claims-list .removed [data-claim-state-label] { color: var(--emerald-700); font-weight: 700; }
.proof-arabic { padding-top: 17px; border-top: 1px solid var(--line); font-family: "IBM Plex Sans Arabic", sans-serif; }
.proof-arabic h3 { margin: 0 0 14px; padding-right: 3px; color: var(--navy-900); font-size: 1.05rem; font-weight: 700; line-height: 1.45; }
.proof-arabic .proof-paragraph { grid-template-columns: minmax(0, 1fr) 32px; gap: 12px; }
.proof-arabic .proof-paragraph > .proof-claim-marker { grid-column: 2; }
.proof-arabic .proof-marker-stack { grid-column: 2; justify-items: end; }
.proof-arabic .proof-paragraph p { grid-row: 1; grid-column: 1; font-family: "IBM Plex Sans Arabic", sans-serif; font-size: .72rem; line-height: 1.8; }
.proof-arabic .proof-paragraph::before { right: auto; left: auto; inset-inline-end: 31px; }

.evidence-heading {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 14px;
  border-bottom: 1px solid var(--line);
}
.evidence-heading h2 { margin: 0; color: var(--navy-900); font-size: .76rem; font-weight: 800; }
.evidence-heading > div { display: flex; gap: 4px; }
.evidence-heading button { width: 30px; height: 30px; display: grid; place-items: center; color: var(--ink-500); background: transparent; border: 0; border-radius: 6px; }
.evidence-heading button:hover { color: var(--navy-900); background: #edf2f5; }
.evidence-content { flex: 1; padding: 13px 14px 10px; overflow-y: auto; }
.evidence-content:not(.active) { display: none; }
.evidence-content[hidden] { display: none !important; }
.selected-claim-copy { display: grid; }
.selected-claim-copy > span { color: var(--ink-500); font-size: .54rem; font-weight: 700; }
.selected-claim-copy strong { margin-top: 5px; color: #d43c48; font-size: .68rem; }
.selected-claim-copy small { margin-top: 4px; color: #d43c48; font-family: "IBM Plex Sans Arabic", sans-serif; font-size: .61rem; }
.verification-alert {
  display: grid;
  grid-template-columns: 19px 1fr;
  gap: 8px;
  margin-top: 14px;
  padding: 12px;
  color: #ca3541;
  background: #fff1f2;
  border: 1px solid #f1a3a9;
  border-radius: 8px;
}
.verification-alert > i { margin-top: 1px; font-size: .9rem; }
.verification-alert strong { font-size: .63rem; }
.verification-alert strong span { font-family: "IBM Plex Sans Arabic", sans-serif; }
.verification-alert p { margin: 5px 0 0; color: #795057; font-size: .53rem; line-height: 1.45; }
.verification-alert.resolved {
  color: var(--emerald-700);
  background: #eaf7f2;
  border-color: #b9dfd2;
}
.verification-alert.resolved p { color: var(--ink-700); }
.linked-evidence { margin-top: 15px; }
.linked-evidence > h3 { margin: 0 0 8px; color: var(--ink-700); font-size: .61rem; font-weight: 800; }
.evidence-card { padding: 11px 12px 9px; border: 1px solid #cfdae2; border-radius: 8px; }
.evidence-card + .evidence-card { margin-top: 8px; }
.evidence-card header { display: grid; grid-template-columns: 13px 1fr; gap: 7px; }
.evidence-card header > i { color: var(--emerald-600); font-size: .62rem; }
.evidence-card header > div { display: grid; }
.evidence-card strong { color: var(--navy-900); font-size: .59rem; }
.evidence-card small { margin-top: 2px; color: var(--ink-500); font-size: .5rem; }
.evidence-card blockquote { margin: 9px 0 7px 20px; color: var(--ink-700); font-size: .56rem; line-height: 1.52; }
.evidence-card footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-left: 20px; color: var(--ink-500); font-size: .49rem; }
.evidence-card footer i { color: var(--ink-500); font-size: .74rem; }
.evidence-card:nth-of-type(3) footer i { color: #2c9a69; }
.evidence-analysis { margin: 12px 0 0; }
.evidence-analysis > div + div { margin-top: 10px; }
.evidence-analysis dt { color: var(--ink-700); font-size: .57rem; font-weight: 800; }
.evidence-analysis dd { margin: 3px 0 0; color: var(--ink-500); font-size: .54rem; line-height: 1.48; }
.resolution-actions { display: grid; gap: 7px; margin-top: 11px; }
.resolution-actions .btn-app { width: 100%; min-height: 40px; box-shadow: none; }
.resolution-actions .remove-claim { color: #d03642; border-color: #e85c68; }
.resolution-actions .request-evidence { color: var(--navy-800); border-color: transparent; box-shadow: none; }
.verified-evidence-state, .review-evidence-state { display: grid; grid-template-columns: 26px 1fr; gap: 9px; margin-top: 16px; padding: 13px; border-radius: 8px; }
.verified-evidence-state { color: var(--emerald-700); background: #eaf7f2; border: 1px solid #b9dfd2; }
.review-evidence-state { color: #a66a11; background: #fff5e4; border: 1px solid #edd2a4; }
.verified-evidence-state > i, .review-evidence-state > i { font-size: 1rem; }
.verified-evidence-state strong, .review-evidence-state strong { font-size: .63rem; }
.verified-evidence-state p, .review-evidence-state p { margin: 4px 0 0; color: var(--ink-700); font-size: .54rem; line-height: 1.5; }
.evidence-decision { margin-top: auto; padding: 0 0 12px; }
.unresolved-summary { display: flex; align-items: center; gap: 7px; margin: 0 10px 10px; padding: 10px; color: #cc3642; background: #fff2f3; border: 1px solid #ef9da4; border-radius: 7px; }
.unresolved-summary i { font-size: .77rem; }
.unresolved-summary strong { font-size: .58rem; }
.unresolved-summary:has([data-unresolved-count].is-clear) {
  color: var(--emerald-700);
  background: #eaf7f2;
  border-color: #b9dfd2;
}
.complete-factcheck { width: calc(100% - 20px); min-height: 44px; margin: 0 10px; box-shadow: none; }
.complete-factcheck[disabled] { color: #f3fbf8; background: #91cdb9; border-color: #91cdb9; cursor: not-allowed; opacity: .78; }
.complete-factcheck.is-ready { color: #fff; background: var(--emerald-600); border-color: var(--emerald-600); }
.complete-factcheck span { font-family: "IBM Plex Sans Arabic", sans-serif; }
.evidence-decision > small { display: block; margin-top: 8px; color: var(--ink-500); font-size: .53rem; text-align: center; }
.mobile-factcheck-actions { display: none; }

.factcheck-confirm-card { width: min(100%, 520px); }
.factcheck-confirm-body { display: grid; grid-template-columns: 38px 1fr; gap: 12px; }
.factcheck-confirm-body > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: #b33641;
  background: #fff0f1;
  border-radius: 10px;
  font-size: 1.05rem;
}
.factcheck-confirm-body strong { color: var(--navy-900); font-size: .78rem; }
.factcheck-confirm-body p { margin: 6px 0 0; color: var(--ink-700); font-size: .68rem; line-height: 1.6; }

@media (max-width: 1340px) {
  .factcheck-workspace { grid-template-columns: minmax(215px, .68fr) minmax(470px, 1.8fr) minmax(295px, .95fr); }
  .proof-document { padding-inline: 18px; }
}

@media (max-width: 1120px) {
  .factcheck-page { padding-inline: 18px; }
  .factcheck-workspace {
    grid-template-columns: minmax(260px, .8fr) minmax(320px, 1fr);
    grid-template-areas:
      "proof proof"
      "claims evidence";
    min-height: 0;
  }
  .factcheck-workspace:has(.evidence-rail[hidden]) {
    grid-template-columns: 1fr;
    grid-template-areas: "proof" "claims";
  }
  .fact-proof { min-height: 720px; }
  .claims-panel, .evidence-rail { min-height: 700px; }
  .factcheck-journey strong { font-size: .56rem; }
}

@media (max-width: 820px) {
  .factcheck-page { padding: 16px 12px 158px; }
  .factcheck-title-row { align-items: flex-start; }
  .factcheck-title-row h1 { flex-wrap: wrap; font-size: 1.4rem; }
  .factcheck-title-row > div:first-child > p { display: none; }
  .factcheck-review-meta { gap: 8px; }
  .factcheck-updated { display: none; }
  .reviewer-switch { min-width: 0; min-height: 42px; grid-template-columns: 31px auto; padding: 4px 7px; }
  .reviewer-switch img { width: 31px; height: 31px; }
  .reviewer-switch > span, .reviewer-switch > i { display: none; }
  .factcheck-journey { margin: 12px 0; padding: 0; overflow-x: auto; scrollbar-width: none; }
  .factcheck-journey::-webkit-scrollbar { display: none; }
  .factcheck-journey ol { min-width: 650px; }
  .factcheck-workspace { display: flex; flex-direction: column; }
  .factcheck-success { grid-template-columns: 24px 1fr; }
  .factcheck-success .btn-app { grid-column: 1 / -1; width: 100%; }
  .fact-proof { order: 1; width: 100%; min-height: 0; }
  .evidence-rail { order: 2; width: 100%; min-height: 0; }
  .claims-panel { order: 3; width: 100%; min-height: 0; }
  .proof-document { padding: 15px 14px 19px; }
  .proof-paragraph p { font-size: .75rem; }
  .claims-list { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 8px; }
  .claims-list li, .claims-list li + li { margin: 0; }
  .claims-list button { min-height: 90px; }
  .evidence-content { overflow: visible; }
  .evidence-decision { padding-bottom: 10px; }
  .evidence-decision .complete-factcheck { display: none; }
  .evidence-decision > small { display: none; }
  .mobile-factcheck-actions {
    position: fixed;
    z-index: 1010;
    right: 10px;
    bottom: 84px;
    left: 10px;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 7px;
    padding: 7px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
    box-shadow: var(--shadow-md);
  }
  .mobile-factcheck-actions .btn-app { width: 100%; min-height: 44px; box-shadow: none; }
  .mobile-factcheck-actions .btn-app[disabled] { color: #f3fbf8; background: #91cdb9; border-color: #91cdb9; opacity: .78; }
}

@media (max-width: 560px) {
  .factcheck-title-row h1 span { display: block; width: 100%; font-size: .72em; }
  .factcheck-breadcrumb { font-size: .58rem; }
  .proof-meta-bar { padding-inline: 11px; }
  .proof-editor small { display: none; }
  .proof-editor strong { max-width: 95px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .proof-heading h2 { font-size: 1.2rem; }
  .proof-paragraph { grid-template-columns: 27px minmax(0, 1fr); gap: 8px; }
  .proof-paragraph::before { left: 26px; }
  .proof-arabic .proof-paragraph { grid-template-columns: minmax(0, 1fr) 27px; gap: 8px; }
  .proof-arabic .proof-paragraph::before { inset-inline-end: 26px; }
  .proof-paragraph p { font-size: .71rem; }
  .proof-arabic .proof-paragraph p { font-size: .67rem; }
  .claims-list { grid-template-columns: 1fr; }
  .claims-list button { min-height: 78px; }
  .evidence-card blockquote, .evidence-card footer { margin-left: 0; }
  .mobile-factcheck-actions { grid-template-columns: .72fr 1.28fr; }
  .mobile-factcheck-actions .btn-app { padding-inline: 8px; font-size: .68rem; }
}

@media (prefers-reduced-motion: reduce) {
  .claims-list button, .reviewer-switch { transition: none; }
}
