.verification-page,
.forum-history-page {
  min-height: 72vh;
  padding: 72px 0 110px;
  background:
    radial-gradient(circle at 88% 12%, rgba(var(--mint-rgb), 0.22), transparent 26rem),
    linear-gradient(180deg, #fbfcfb 0%, #f4f7f5 100%);
}
.verification-shell,
.forum-history-shell { max-width: 1180px; }
.verification-hero,
.forum-history-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 0.72fr);
  gap: 60px;
  align-items: end;
  margin-bottom: 42px;
}
.verification-hero .page-title,
.forum-history-hero .page-title { max-width: 740px; margin: 10px 0 12px; }
.verification-hero .lead,
.forum-history-hero .lead { max-width: 700px; }
.verification-search {
  padding: 22px;
  border: 1px solid #d6e2dc;
  border-top: 3px solid var(--green);
  background: #fff;
  box-shadow: 0 18px 48px rgba(18, 43, 31, 0.08);
}
.verification-search > label {
  display: block;
  margin-bottom: 8px;
  color: var(--forest);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.verification-search > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.verification-search input {
  min-width: 0;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #cbd8d2;
  border-right: 0;
  border-radius: 2px 0 0 2px;
  outline: 0;
  font: 700 .82rem/1 var(--font-sans);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.verification-search input:focus { border-color: var(--green); box-shadow: inset 0 0 0 1px var(--green); }
.verification-search .button { border-radius: 0 2px 2px 0; }
.verification-search > small { display: block; margin-top: 8px; color: #697770; font-size: .65rem; }
.verification-search .verification-search-error { color: #9f351c; font-weight: 750; }
.verification-start-note {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  max-width: 760px;
  padding: 20px 22px;
  border-left: 3px solid var(--green);
  background: #eaf3ee;
  color: #354a40;
}
.verification-start-note > span { color: var(--green); font-size: 1.3rem; }
.verification-start-note p { margin: 0; line-height: 1.55; }
.verification-result { border: 1px solid #d5e1db; background: #fff; box-shadow: 0 24px 70px rgba(18, 43, 31, 0.09); }
.verification-result-heading {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 28px 32px;
  border-bottom: 1px solid #d8e4de;
  background: linear-gradient(105deg, #eaf5ef, #fff 72%);
}
.verification-result-heading > span {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  color: #fff;
  border-radius: 50%;
  background: var(--green);
  font-size: 1.5rem;
  font-weight: 900;
}
.verification-result-heading .eyebrow { margin: 0 0 3px; }
.verification-result-heading h2 { margin: 0; font-family: var(--font-serif); font-size: 1.65rem; }
.verification-result-heading p:not(.eyebrow) { margin: 4px 0 0; color: #607069; }
.verification-result-heading > code,
.forum-history-list > article > code {
  padding: 10px 12px;
  color: #0e5334;
  border: 1px solid #b9d8c8;
  background: #f2f8f5;
  font-size: .72rem;
  font-weight: 850;
}
.verification-summary { display: grid; grid-template-columns: 1.5fr .8fr .9fr .9fr; border-bottom: 1px solid #dbe5e0; }
.verification-summary > div { padding: 20px 24px; border-right: 1px solid #dbe5e0; }
.verification-summary > div:last-child { border-right: 0; }
.verification-summary span,
.verification-integrity dt { display: block; color: #718078; font-size: .57rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.verification-summary strong { display: block; margin-top: 5px; font-size: .78rem; }
.verification-grid { display: grid; grid-template-columns: 1.25fr .75fr; }
.verification-signatures,
.verification-integrity { padding: 32px; }
.verification-signatures { border-right: 1px solid #dbe5e0; }
.verification-signatures h2,
.verification-integrity h2,
.forum-history-heading h2 { margin: 4px 0 22px; font-family: var(--font-serif); font-size: 1.45rem; }
.verification-signatures ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.verification-signatures li { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 14px; padding: 18px 0; border-top: 1px solid #e0e8e4; }
.verification-signatures li > span { display: grid; place-items: center; width: 36px; height: 36px; color: #113f2a; border: 1px solid #aad1bd; border-radius: 50%; font-size: .65rem; font-weight: 900; }
.verification-signatures li small { color: var(--green); font-size: .58rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.verification-signatures li strong { display: block; margin-top: 3px; }
.verification-signatures li p { margin: 2px 0 10px; color: #65736c; font-size: .7rem; }
.verification-signatures dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.verification-signatures dt { color: #7a8781; font-size: .55rem; text-transform: uppercase; }
.verification-signatures dd { margin: 2px 0 0; font-size: .62rem; overflow-wrap: anywhere; }
.verification-integrity { background: #0e1210; color: #fff; }
.verification-integrity .eyebrow { color: var(--mint); }
.verification-integrity dl { display: grid; gap: 18px; margin: 0; }
.verification-integrity dl > div { padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.12); }
.verification-integrity dt { color: rgba(255,255,255,.46); }
.verification-integrity dd { margin: 5px 0 0; }
.verification-integrity code { color: var(--mint); font-size: .62rem; overflow-wrap: anywhere; }
.verification-privacy-note { display: grid; grid-template-columns: 25px 1fr; gap: 10px; margin-top: 24px; padding: 15px; background: rgba(var(--mint-rgb), .08); }
.verification-privacy-note span { color: var(--mint); }
.verification-privacy-note p { margin: 0; color: rgba(255,255,255,.62); font-size: .65rem; line-height: 1.55; }
.verification-privacy-note strong { color: #fff; }
.verification-result.is-invalid { max-width: 760px; padding: 40px; border-top: 4px solid #ad4a2e; }
.verification-result.is-invalid > span { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 18px; color: #fff; border-radius: 50%; background: #ad4a2e; font-weight: 900; }
.verification-result.is-invalid h2 { margin: 6px 0; font-family: var(--font-serif); }
.verification-result.is-invalid p:not(.eyebrow) { color: #64726b; }
.verification-result.is-invalid code { display: inline-block; margin-top: 10px; color: #8b3420; }
.forum-history-hero { grid-template-columns: minmax(0, 1fr) auto; }
.forum-history-count { display: flex; gap: 13px; align-items: center; padding: 15px 22px; color: #fff; background: #0d1210; }
.forum-history-count span { color: var(--mint); font: 500 2.4rem/1 var(--font-serif); }
.forum-history-count small { color: rgba(255,255,255,.55); font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.forum-section-tabs { display: flex; gap: 6px; margin-bottom: 18px; border-bottom: 1px solid #cfdcd5; }
.forum-section-tabs a { padding: 12px 18px; color: #64736b; border-bottom: 3px solid transparent; font-size: .68rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.forum-section-tabs a.is-active { color: #122b1f; border-bottom-color: var(--green); }
.forum-history-ledger { border: 1px solid #d5e1db; background: #fff; box-shadow: 0 20px 60px rgba(18,43,31,.08); }
.forum-history-heading { padding: 24px 28px 8px; }
.forum-history-list article { display: grid; grid-template-columns: 44px minmax(250px, 1fr) auto minmax(210px, auto); gap: 20px; align-items: center; padding: 22px 28px; border-top: 1px solid #dfe8e3; }
.forum-history-index { display: grid; place-items: center; width: 36px; height: 36px; color: var(--green); border: 1px solid #b9d8c8; border-radius: 50%; font-size: .65rem; font-weight: 900; }
.forum-history-identity small { color: var(--green); font-size: .58rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.forum-history-identity strong { display: block; margin: 3px 0; }
.forum-history-identity p { margin: 0; color: #6c7973; font-size: .66rem; }
.forum-history-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px 13px; }
.forum-history-actions a { color: #125f3d; font-size: .63rem; font-weight: 800; }
.completion-file-actions { display: grid; gap: 8px; margin-top: 14px; }
.completion-file-actions a { display: flex; justify-content: space-between; padding: 10px 12px; color: var(--forest); background: var(--mint); font-size: .62rem; font-weight: 850; }
.completion-file-actions a.is-secondary { color: var(--mint); border: 1px solid rgba(var(--mint-rgb), .3); background: transparent; }
.adhesion-row { grid-template-columns: auto minmax(0, 1fr) auto auto; }
.adhesion-row-action { color: var(--green-dark); font-size: .68rem; font-weight: 850; white-space: nowrap; }
@media (max-width: 950px) {
  .verification-hero { grid-template-columns: 1fr; gap: 28px; }
  .verification-grid { grid-template-columns: 1fr; }
  .verification-signatures { border-right: 0; border-bottom: 1px solid #dbe5e0; }
  .verification-summary { grid-template-columns: repeat(2, 1fr); }
  .forum-history-list article { grid-template-columns: 42px minmax(0,1fr); }
  .forum-history-list > article > code,
  .forum-history-actions { grid-column: 2; justify-content: flex-start; }
}
@media (max-width: 650px) {
  .verification-page, .forum-history-page { padding: 42px 0 70px; }
  .verification-hero, .forum-history-hero { grid-template-columns: 1fr; }
  .verification-search > div { grid-template-columns: 1fr; gap: 8px; }
  .verification-search input { border-right: 1px solid #cbd8d2; }
  .verification-search .button { width: 100%; }
  .verification-result-heading { grid-template-columns: 46px 1fr; padding: 22px 18px; }
  .verification-result-heading > code { grid-column: 2; justify-self: start; }
  .verification-summary { grid-template-columns: 1fr; }
  .verification-summary > div { border-right: 0; border-bottom: 1px solid #dbe5e0; }
  .verification-signatures, .verification-integrity { padding: 24px 18px; }
  .verification-signatures dl { grid-template-columns: 1fr; }
  .forum-history-count { justify-self: start; }
  .forum-history-list article { padding-inline: 18px; }
  .adhesion-row { grid-template-columns: auto minmax(0, 1fr); }
  .adhesion-row .status-badge,
  .adhesion-row-action { grid-column: 2; justify-self: start; }
}
