.paper-project {
  --paper-ink: #1d2430;
  --paper-muted: #687282;
  --paper-line: #e3e6eb;
  --paper-blue: #315f9f;
  --paper-blue-soft: #edf3fb;
  --paper-bg: #ffffff;
  background: var(--paper-bg);
}
.paper-project .page__content { max-width: 1180px; margin: 0 auto; }
.paper-project__shell { max-width: 1120px; margin: 0 auto; padding: 20px 0 56px; color: var(--paper-ink); font-family: Arial, Helvetica, sans-serif; font-size: 14px; }
.paper-project__crumbs { display: flex; gap: 10px; margin: 0 0 26px; color: var(--paper-muted); font: 600 11px/1.3 ui-monospace, SFMono-Regular, Consolas, monospace; }
.paper-project__crumbs a, .paper-project a { color: inherit; text-decoration: none; }
.paper-project__crumbs a:hover, .paper-project__artifact-grid a:hover { color: var(--paper-blue); }
.paper-project__hero { max-width: 1120px; margin: 0 auto; padding: 20px 0 44px; text-align: center; }
.paper-project__venue, .paper-project__eyebrow { margin: 0; color: var(--paper-blue); font: 700 11px/1.4 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .12em; text-transform: uppercase; }
.paper-project__hero h1 { max-width: 1040px; margin: 22px auto 23px; color: var(--paper-ink); font: 700 clamp(28px, 3vw, 38px)/1.16 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.paper-project__hero h1 em { color: var(--paper-blue); font-style: normal; }
.paper-project__authors { margin: 0; color: #3e4856; font-size: 15px; line-height: 1.8; }
.paper-project__authors strong { color: var(--paper-blue); }
.paper-project__affiliations { margin: 10px 0 0; color: var(--paper-muted); font-size: 12px; line-height: 1.75; }
.paper-project__affiliations span { color: #8a94a1; }
.paper-project__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 25px; }
.paper-project__button { display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; border: 1px solid #c8d0db; border-radius: 999px; color: var(--paper-ink) !important; background: #fff; font-size: 12px; font-weight: 700; transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease; }
.paper-project__button:hover { border-color: var(--paper-blue); color: var(--paper-blue) !important; background: var(--paper-blue-soft); }
.paper-project__button--dark { border-color: var(--paper-ink); color: #fff !important; background: var(--paper-ink); }
.paper-project__button--dark:hover { border-color: var(--paper-blue); color: #fff !important; background: var(--paper-blue); }
.paper-project__teaser { margin: 0 0 62px; padding: 15px; border: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__teaser img { display: block; width: 100%; height: auto; }
.paper-project__teaser figcaption, .paper-project__figure figcaption { margin-top: 12px; color: var(--paper-muted); font: 13px/1.6 Georgia, "Times New Roman", serif; text-align: center; }
.paper-project__abstract { max-width: 910px; margin: 0 auto 62px; padding: 24px 0 0; border-top: 2px solid var(--paper-ink); }
.paper-project__abstract-grid { display: grid; grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); gap: 70px; margin-top: 17px; }
.paper-project h2 { margin: 0; color: var(--paper-ink); font: 700 clamp(22px, 2.6vw, 30px)/1.18 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.paper-project__abstract-grid h2 { max-width: 450px; }
.paper-project__abstract-grid > p { margin: 0; color: #475364; font: 15px/1.8 Georgia, "Times New Roman", serif; }
.paper-project__problem { padding: 56px 0; border-top: 1px solid var(--paper-line); }
.paper-project__problem-head { display: flex; align-items: start; gap: 14px; }
.paper-project__problem-head .paper-project__number { flex: 0 0 auto; }
.paper-project__problem-head h2 { margin-top: 10px; }
.paper-project__problem-lede { max-width: 900px; margin: 20px 0 26px 54px; color: #475364; font: 15px/1.75 Georgia, "Times New Roman", serif; }
.paper-project__problem-figure { max-width: 880px; margin: 0 auto; padding: 14px; border: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__problem-figure img { display: block; width: 100%; height: auto; }
.paper-project__problem-figure figcaption { margin-top: 12px; color: var(--paper-muted); font: 13px/1.6 Georgia, "Times New Roman", serif; }
.paper-project__problem-figure figcaption span { color: var(--paper-ink); font-weight: 700; }
.paper-project__section { padding: 56px 0; border-top: 1px solid var(--paper-line); }
.paper-project__section-head { display: flex; justify-content: space-between; align-items: end; gap: 45px; margin-bottom: 28px; }
.paper-project__section-head > div { display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; align-items: start; }
.paper-project__section-head > div .paper-project__eyebrow { grid-column: 2; }
.paper-project__section-head h2 { grid-column: 2; margin-top: 10px; max-width: 630px; }
.paper-project__nowrap { white-space: nowrap; }
.paper-project__number { grid-row: 1 / span 3; color: var(--paper-blue); font: 700 24px/1 Georgia, "Times New Roman", serif; }
.paper-project__section-note { max-width: 310px; margin: 0; color: var(--paper-muted); font-size: 14px; line-height: 1.75; text-align: right; }
.paper-project__method-card, .paper-project__chart-card { border: 1px solid var(--paper-line); background: #fff; }
.paper-project__method-card { padding: clamp(12px, 3vw, 26px); }
.paper-project__method-card img { display: block; width: 100%; height: auto; }
.paper-project__method-caption { margin-top: 14px; color: var(--paper-muted); font: 13px/1.6 Georgia, "Times New Roman", serif; }
.paper-project__method-caption span { color: var(--paper-ink); font-weight: 700; }
.paper-project__method-grid, .paper-project__takeaways { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 18px; }
.paper-project__method-grid article, .paper-project__takeaways article { padding: 21px; border: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__card-index, .paper-project__takeaways span { display: block; color: var(--paper-blue); font: 700 12px/1 ui-monospace, monospace; letter-spacing: .1em; }
.paper-project__method-grid h3, .paper-project__takeaways h3 { margin: 17px 0 8px; font: 700 16px/1.25 Georgia, "Times New Roman", serif; }
.paper-project__method-grid p, .paper-project__takeaways p { margin: 0; color: var(--paper-muted); font-size: 13px; line-height: 1.7; }
.paper-project__stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 22px; }
.paper-project__stat-grid article { padding: 24px 22px; border: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__stat-grid strong { display: block; color: var(--paper-blue); font: 700 clamp(25px, 2.8vw, 30px)/1 Georgia, "Times New Roman", serif; letter-spacing: -.03em; }
.paper-project__stat-grid strong span { margin-left: 2px; font-size: .52em; }
.paper-project__stat-grid article > span { display: block; margin-top: 12px; color: var(--paper-ink); font-size: 13px; font-weight: 700; }
.paper-project__stat-grid small { display: block; margin-top: 6px; color: var(--paper-muted); font-size: 11px; line-height: 1.5; }
.paper-project__chart-card { padding: clamp(18px, 4vw, 32px); }
.paper-project__chart-title { display: flex; justify-content: space-between; gap: 20px; align-items: start; }
.paper-project__chart-title h3 { margin: 0; font: 700 18px/1.25 Georgia, "Times New Roman", serif; }
.paper-project__chart-title p, .paper-project__chart-title > span { margin: 7px 0 0; color: var(--paper-muted); font-size: 12px; line-height: 1.5; }
.paper-project__chart-title > span { font: 600 10px/1 ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; }
.paper-project__chart { display: block; width: 100%; height: auto; margin-top: 22px; }
.paper-project__chart-note { margin: 2px 0 0; color: var(--paper-muted); font-size: 13px; line-height: 1.6; }
.paper-project__result-note { margin: 16px 0 0; padding: 13px 16px; border-left: 3px solid var(--paper-blue); color: var(--paper-muted); background: var(--paper-blue-soft); font-size: 13px; line-height: 1.6; }
.paper-project__table-wrap { overflow-x: auto; margin-top: 23px; }
.paper-project table { width: 100%; min-width: 680px; border-collapse: collapse; font-size: 12px; }
.paper-project caption { margin-bottom: 10px; color: var(--paper-muted); font-size: 11px; text-align: left; }
.paper-project th, .paper-project td { padding: 12px 10px; border-top: 1px solid var(--paper-line); text-align: right; white-space: nowrap; }
.paper-project th:first-child, .paper-project td:first-child { text-align: left; }
.paper-project thead th { color: var(--paper-muted); font: 700 10px/1.3 ui-monospace, monospace; letter-spacing: .06em; text-transform: uppercase; }
.paper-project tbody th { color: var(--paper-ink); }
.paper-project tr.is-best { color: var(--paper-blue); background: var(--paper-blue-soft); }
.paper-project tr.is-best th { color: var(--paper-blue); }
.paper-project__figure { margin: 0; padding: 14px; border: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__figure img { display: block; width: 100%; height: auto; }
.paper-project__figure figcaption { text-align: left; }
.paper-project__figure figcaption span { color: var(--paper-ink); font-weight: 700; }
.paper-project__figure--mechanism { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 1fr); gap: 24px; align-items: center; }
.paper-project__mechanism-visual img { display: block; width: 100%; max-height: 390px; object-fit: contain; }
.paper-project__mechanism-visual figcaption { text-align: left; }
.paper-project__mechanism-chart { padding: 20px 18px 16px; border-left: 1px solid var(--paper-line); background: #fafbfd; }
.paper-project__chart-kicker { margin: 0 0 9px; color: var(--paper-blue); font: 700 12px/1.3 ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; }
.paper-project__mechanism-chart svg { display: block; width: 100%; min-height: 300px; height: auto; }
.paper-project__mechanism-chart svg text { font-size: 12px; }
.paper-project__mechanism-chart > p:last-child { margin: 11px 0 0; color: var(--paper-muted); font-size: 13px; line-height: 1.6; }
.paper-project__section--notes { padding-bottom: 54px; }
.paper-project__artifacts { display: grid; grid-template-columns: 180px 1fr; gap: 28px; padding: 36px 0 44px; border-top: 1px solid var(--paper-line); }
.paper-project__artifact-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--paper-line); }
.paper-project__artifact-grid a { min-height: 100px; padding: 18px; border-right: 1px solid var(--paper-line); border-bottom: 1px solid var(--paper-line); transition: background-color 160ms ease, color 160ms ease; }
.paper-project__artifact-grid a:last-child { border-right: 0; }
.paper-project__artifact-grid a:hover { background: var(--paper-blue-soft); }
.paper-project__artifact-grid span { display: block; color: var(--paper-muted); font: 700 10px/1.3 ui-monospace, monospace; letter-spacing: .08em; text-transform: uppercase; }
.paper-project__artifact-grid strong { display: block; margin-top: 26px; color: var(--paper-ink); font-size: 13px; }
.paper-project__footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 20px; border-top: 1px solid var(--paper-line); color: var(--paper-muted); font-size: 11px; }
.paper-project__footer p { margin: 0; }
.paper-project__footer strong { color: var(--paper-ink); }
.paper-project a:focus-visible { outline: 2px solid var(--paper-blue); outline-offset: 4px; }
@media (max-width: 760px) {
  .paper-project__shell { padding-top: 8px; }
  .paper-project__abstract-grid, .paper-project__method-grid, .paper-project__takeaways { grid-template-columns: 1fr; gap: 12px; }
  .paper-project__section-head { display: block; }
  .paper-project__problem-lede { margin-left: 0; }
  .paper-project__nowrap { white-space: normal; }
  .paper-project__section-note { max-width: 540px; margin-top: 15px; text-align: left; }
  .paper-project__stat-grid { grid-template-columns: 1fr; }
  .paper-project__artifacts { grid-template-columns: 1fr; gap: 18px; }
  .paper-project__artifact-grid { grid-template-columns: repeat(2, 1fr); }
  .paper-project__figure--mechanism { grid-template-columns: 1fr; gap: 18px; }
  .paper-project__mechanism-chart { border-left: 0; border-top: 1px solid var(--paper-line); }
  .paper-project__artifact-grid a:nth-child(2) { border-right: 0; }
  .paper-project__footer { display: block; }
  .paper-project__footer p + p { margin-top: 8px; }
}
@media (prefers-reduced-motion: reduce) { .paper-project *, .paper-project *::before, .paper-project *::after { transition: none !important; } }

/* Centered academic project pages: SRP-SFT and Glance-ETD. */
body:is(.paper-project--srp, .paper-project--glance).subpage-shell { background: #fff; }

:is(.paper-project--srp, .paper-project--glance).paper-project__shell {
  max-width: 1040px;
  margin: 0 auto;
  padding: 8px 0 72px;
  color: #363636;
  background: transparent;
  font-family: "Noto Sans", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

body:is(.paper-project--srp, .paper-project--glance) h1,
body:is(.paper-project--srp, .paper-project--glance) h2,
body:is(.paper-project--srp, .paper-project--glance) h3 {
  color: #363636;
  font-family: "Noto Sans", "Segoe UI", sans-serif;
  letter-spacing: 0;
}

:is(.paper-project--srp, .paper-project--glance) .srp-crumbs {
  margin: 0 0 18px;
  color: #7a7a7a;
  font-size: 14px;
}
:is(.paper-project--srp, .paper-project--glance) .srp-crumbs a:hover { color: hsl(204, 86%, 53%); }

:is(.paper-project--srp, .paper-project--glance) .srp-hero { padding: 12px 0 8px; text-align: center; }
:is(.paper-project--srp, .paper-project--glance) .srp-hero h1 {
  margin: 0 auto;
  max-width: none;
  font-size: clamp(1.4rem, 2.05vw, 1.7rem);
  font-weight: 600;
  line-height: 1.35;
}

:is(.paper-project--srp, .paper-project--glance) .srp-authors {
  margin: 1.15rem 0 0;
  font-size: 1.15rem;
  line-height: 1.85;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-author {
  display: inline-block;
  margin: 0 0.45rem;
  color: hsl(204, 86%, 53%);
}
:is(.paper-project--srp, .paper-project--glance) .srp-author sup { color: #4a4a4a; font-size: 0.62em; }

:is(.paper-project--srp, .paper-project--glance) .srp-affil,
:is(.paper-project--srp, .paper-project--glance) .srp-equal,
:is(.paper-project--srp, .paper-project--glance) .srp-venue { margin: 0.2rem 0 0; text-align: center; }
:is(.paper-project--srp, .paper-project--glance) .srp-affil { color: #4a4a4a; font-size: 1.05rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-affil sup { font-size: 0.7em; }
:is(.paper-project--srp, .paper-project--glance) .srp-equal { color: #7a7a7a; font-size: 0.92rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-venue {
  margin-top: 0.95rem;
  color: #363636;
  font-size: 1.35rem;
  font-weight: 700;
}

:is(.paper-project--srp, .paper-project--glance) .srp-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 1.15rem;
}
:is(.paper-project--srp, .paper-project--glance) .srp-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 42px;
  padding: 0.4rem 1.05rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background: #363636;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
}
:is(.paper-project--srp, .paper-project--glance) .srp-btn svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
:is(.paper-project--srp, .paper-project--glance) .srp-btn:hover { background: #4a4a4a; color: #fff; }

:is(.paper-project--srp, .paper-project--glance) .srp-section { padding-top: 0.4rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-section h2 {
  margin: 2.4rem 0 0.85rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-prose {
  max-width: 920px;
  margin: 0 auto;
}
:is(.paper-project--srp, .paper-project--glance) .srp-prose p {
  margin: 0;
  color: #363636;
  font-size: 1.05rem;
  line-height: 1.7;
  text-align: justify;
}
:is(.paper-project--srp, .paper-project--glance) .srp-prose strong { font-weight: 700; }

:is(.paper-project--srp, .paper-project--glance) .srp-figure { margin: 1.3rem 0 0.2rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-teaser { margin-top: 1.6rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-figure img {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
}
:is(.paper-project--srp, .paper-project--glance) .srp-figure figcaption {
  margin: 0.75rem auto 0;
  max-width: 860px;
  color: #4a4a4a;
  font-size: 0.98rem;
  line-height: 1.5;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-figure-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  column-gap: 28px;
  margin: 1.3rem 0 0.2rem;
}
:is(.paper-project--srp, .paper-project--glance) .srp-figure-pair .srp-figure {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  margin: 0;
  min-width: 0;
}
:is(.paper-project--srp, .paper-project--glance) .srp-figure-pair .srp-figure img {
  align-self: end;
  width: 100%;
  height: auto;
}
:is(.paper-project--srp, .paper-project--glance) .srp-figure-pair figcaption {
  align-self: start;
  margin-top: 0.75rem;
  font-size: 0.92rem;
}

:is(.paper-project--srp, .paper-project--glance) .srp-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin: 1.35rem 0 0.4rem;
}
:is(.paper-project--srp, .paper-project--glance) .srp-points h3 {
  margin: 0 0 0.4rem;
  font-size: 1.05rem;
  font-weight: 700;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-points p {
  margin: 0;
  color: #4a4a4a;
  font-size: 0.96rem;
  line-height: 1.6;
}

:is(.paper-project--srp, .paper-project--glance) .srp-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 1.5rem 0 0.4rem;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-stats strong {
  display: block;
  color: #363636;
  font-size: clamp(1.8rem, 3vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1;
}
:is(.paper-project--srp, .paper-project--glance) .srp-stats strong span { font-size: 0.62em; }
:is(.paper-project--srp, .paper-project--glance) .srp-stats article > span {
  display: block;
  margin-top: 0.55rem;
  font-weight: 700;
}
:is(.paper-project--srp, .paper-project--glance) .srp-stats small {
  display: block;
  margin-top: 0.25rem;
  color: #7a7a7a;
  font-size: 0.86rem;
}

:is(.paper-project--srp, .paper-project--glance) .srp-chart-scroll { overflow-x: auto; }
:is(.paper-project--srp, .paper-project--glance) .srp-chart { display: block; width: 100%; min-width: 640px; height: auto; }

:is(.paper-project--srp, .paper-project--glance) .srp-table-wrap {
  overflow-x: auto;
  margin: 1.4rem 0 1rem;
}
body:is(.paper-project--srp, .paper-project--glance) table {
  width: 100%;
  min-width: 680px;
  border-collapse: collapse;
  font-family: "Noto Sans", "Segoe UI", sans-serif;
  font-size: 15px;
}
body:is(.paper-project--srp, .paper-project--glance) caption {
  margin: 0 0 0.7rem;
  color: #7a7a7a;
  font-size: 0.92rem;
  font-weight: 500;
  letter-spacing: 0;
  text-align: center;
  text-transform: none;
}
body:is(.paper-project--srp, .paper-project--glance) th,
body:is(.paper-project--srp, .paper-project--glance) td {
  padding: 0.7rem 0.65rem;
  border-top: 1px solid #ededed;
  text-align: right;
  white-space: nowrap;
}
body:is(.paper-project--srp, .paper-project--glance) th:first-child,
body:is(.paper-project--srp, .paper-project--glance) td:first-child { text-align: left; }
body:is(.paper-project--srp, .paper-project--glance) thead th {
  border-top: 0;
  border-bottom: 2px solid #dbdbdb;
  color: #4a4a4a;
  font-family: "Noto Sans", "Segoe UI", sans-serif;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}
body:is(.paper-project--srp, .paper-project--glance) tbody th { color: #363636; font-weight: 600; }
body:is(.paper-project--srp, .paper-project--glance) tr.is-best { background: #eef5fc; color: #363636; box-shadow: none; }
body:is(.paper-project--srp, .paper-project--glance) tr.is-best th { color: #1d4e89; }

:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics { margin-top: 1.4rem; }
:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics__legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 16px;
  margin-bottom: 12px;
  color: #4a4a4a;
  font-size: 14px;
  font-weight: 600;
}
:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics__legend i {
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 6px;
  border-radius: 99px;
  background: #bdbdbd;
}
:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics__legend .is-lp { background: #7aa7d9; }
:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics__legend .is-srp { background: #3273dc; }
:is(.paper-project--srp, .paper-project--glance) .srp-diagnostics__scale {
  color: #7a7a7a;
  font-size: 12px;
  font-weight: 500;
}
:is(.paper-project--srp, .paper-project--glance) .srp-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
:is(.paper-project--srp, .paper-project--glance) .srp-metrics article {
  padding: 14px 16px 12px;
  border-radius: 10px;
  background: #f6f6f6;
}
:is(.paper-project--srp, .paper-project--glance) .srp-metrics h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}
:is(.paper-project--srp, .paper-project--glance) .srp-metrics header p {
  margin: 2px 0 10px;
  color: #7a7a7a;
  font-size: 13px;
}
:is(.paper-project--srp, .paper-project--glance) .srp-meter {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 62px;
  gap: 8px;
  align-items: center;
  margin-top: 7px;
}
:is(.paper-project--srp, .paper-project--glance) .srp-meter span,
:is(.paper-project--srp, .paper-project--glance) .srp-meter em {
  color: #4a4a4a;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
}
:is(.paper-project--srp, .paper-project--glance) .srp-meter em { text-align: right; }
:is(.paper-project--srp, .paper-project--glance) .srp-meter b {
  display: block;
  height: 7px;
  border-radius: 99px;
  background: #bdbdbd;
}
:is(.paper-project--srp, .paper-project--glance) .srp-meter--lp b { background: #7aa7d9; }
:is(.paper-project--srp, .paper-project--glance) .srp-meter--srp b { background: #3273dc; }

:is(.paper-project--srp, .paper-project--glance) .srp-bibtex {
  margin: 0;
  padding: 1.15rem 1.3rem;
  overflow-x: auto;
  border-radius: 8px;
  background: #f5f5f5;
  color: #363636;
  font-size: 0.88rem;
  line-height: 1.55;
  text-align: left;
  white-space: pre;
}

:is(.paper-project--srp, .paper-project--glance) .srp-footer {
  margin-top: 2.8rem;
  padding-top: 1.2rem;
  border-top: 1px solid #eee;
  color: #7a7a7a;
  font-size: 0.92rem;
  text-align: center;
}
:is(.paper-project--srp, .paper-project--glance) .srp-footer p { margin: 0.2rem 0; }
:is(.paper-project--srp, .paper-project--glance) .srp-footer a { color: hsl(204, 86%, 53%); }
:is(.paper-project--srp, .paper-project--glance) .srp-footer a:hover { text-decoration: underline; }

body:is(.paper-project--srp, .paper-project--glance) a:focus-visible {
  outline: 2px solid hsl(204, 86%, 53%);
  outline-offset: 3px;
}

@media (max-width: 760px) {
  :is(.paper-project--srp, .paper-project--glance) .srp-points,
  :is(.paper-project--srp, .paper-project--glance) .srp-stats,
  :is(.paper-project--srp, .paper-project--glance) .srp-metrics,
  :is(.paper-project--srp, .paper-project--glance) .srp-figure-pair {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
  :is(.paper-project--srp, .paper-project--glance) .srp-figure-pair .srp-figure {
    display: block;
    grid-row: auto;
  }
  :is(.paper-project--srp, .paper-project--glance) .srp-prose p { text-align: left; }
  :is(.paper-project--srp, .paper-project--glance) .srp-venue { font-size: 1.15rem; }
}

/* Glance-ETD follows the compact, centered research-demo language of the
   supplied VGGT reference: sans-serif type, blue links, pill actions, and
   quiet image cards on a white canvas. */
.paper-project--glance {
  --glance-blue: #3273DC;
  --glance-link: #209CEE;
  --glance-teal: #00D1B2;
  --glance-yellow: #FFDD57;
  --glance-ink: #4A4A4A;
  --glance-muted: #777;
  --glance-line: #eeeeee;
  --glance-card: #ffffff;
  background: #fff;
  color: var(--glance-ink);
  font-family: "Noto Sans", "Segoe UI", Arial, sans-serif;
}
.paper-project--glance .paper-project__shell,
.paper-project__shell.paper-project--glance {
  max-width: 980px;
  padding: 28px 0 72px;
  color: var(--glance-ink);
  font-family: "Noto Sans", "Segoe UI", Arial, sans-serif;
  font-size: 16px;
}
.paper-project--glance .paper-project__crumbs { display: none; }
.paper-project--glance .paper-project__hero {
  max-width: 900px;
  padding: 0 0 28px;
  text-align: center;
}
.paper-project--glance .paper-project__venue {
  color: var(--glance-muted);
  font: 400 14px/1.5 "Noto Sans", "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
  text-transform: none;
}
.paper-project--glance .paper-project__hero h1 {
  max-width: 900px;
  margin: 14px auto 16px;
  color: #363636;
  font: 700 clamp(26px, 3vw, 34px)/1.18 "Google Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;
  letter-spacing: -.025em;
}
.paper-project--glance .paper-project__hero h1 em { color: #363636; }
.paper-project--glance .paper-project__authors {
  margin: 0;
  color: var(--glance-link);
  font-size: 16px;
  line-height: 1.65;
}
.paper-project--glance .paper-project__authors strong { color: inherit; }
.paper-project--glance .paper-project__affiliations {
  margin: 5px 0 0;
  color: var(--glance-muted);
  font-size: 13px;
  line-height: 1.6;
}
.paper-project--glance .paper-project__links {
  gap: 7px;
  margin-top: 16px;
}
.paper-project--glance .paper-project__button {
  min-height: 30px;
  padding: 6px 13px;
  border: 0;
  border-radius: 290486px;
  color: #fff !important;
  background: #363636;
  font-size: 12px;
  font-weight: 700;
  box-shadow: none;
}
.paper-project--glance .paper-project__button:nth-child(2) { background: var(--glance-blue); }
.paper-project--glance .paper-project__button:nth-child(3) { color: #363636 !important; background: var(--glance-yellow); }
.paper-project--glance .paper-project__button:hover { background: #242424; }
.paper-project--glance .paper-project__button:nth-child(2):hover { background: #275eb7; }
.paper-project--glance .paper-project__button:nth-child(3):hover { background: #f4ce45; }
.paper-project--glance .paper-project__teaser,
.paper-project--glance .paper-project__figure,
.paper-project--glance .paper-project__method-card,
.paper-project--glance .paper-project__chart-card {
  border: 1px solid var(--glance-line);
  border-radius: 5px;
  background: var(--glance-card);
  box-shadow: 0 2px 12px rgba(10, 10, 10, .08);
}
.paper-project--glance .paper-project__teaser {
  max-width: 860px;
  margin: 0 auto 42px;
  padding: 18px;
}
.paper-project--glance .paper-project__teaser figcaption,
.paper-project--glance .paper-project__figure figcaption {
  color: var(--glance-muted);
  font: 13px/1.65 "Noto Sans", "Segoe UI", Arial, sans-serif;
}
.paper-project--glance .paper-project__abstract,
.paper-project--glance .paper-project__section,
.paper-project--glance .paper-project__artifacts {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  border-top: 0;
}
.paper-project--glance .paper-project__abstract {
  margin-bottom: 12px;
  padding: 24px 0 28px;
  text-align: center;
}
.paper-project--glance .paper-project__eyebrow {
  color: var(--glance-ink);
  font: 700 20px/1.35 "Google Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
  text-transform: none;
}
.paper-project--glance .paper-project__abstract .paper-project__eyebrow { color: var(--glance-ink); }
.paper-project--glance .paper-project__abstract-grid {
  display: block;
  margin-top: 12px;
}
.paper-project--glance .paper-project__abstract-grid h2,
.paper-project--glance .paper-project__section-head h2 {
  max-width: 760px;
  margin: 0 auto 14px;
  color: var(--glance-ink);
  font: 700 20px/1.4 "Google Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.paper-project--glance .paper-project__abstract-grid > p {
  max-width: 860px;
  margin: 0 auto;
  color: var(--glance-ink);
  font: 16px/1.7 "Noto Sans", "Segoe UI", Arial, sans-serif;
  text-align: left;
}
.paper-project--glance .paper-project__section {
  padding: 34px 0;
}
.paper-project--glance .paper-project__section-head {
  display: block;
  margin-bottom: 20px;
  text-align: center;
}
.paper-project--glance .paper-project__section-head > div { display: block; }
.paper-project--glance .paper-project__section-head > div .paper-project__eyebrow { display: block; }
.paper-project--glance .paper-project__number { display: none; }
.paper-project--glance .paper-project__section-note {
  max-width: 780px;
  margin: 0 auto;
  color: var(--glance-muted);
  font-size: 14px;
  line-height: 1.65;
  text-align: center;
}
.paper-project--glance .paper-project__method-grid,
.paper-project--glance .paper-project__takeaways,
.paper-project--glance .paper-project__stat-grid {
  gap: 14px;
}
.paper-project--glance .paper-project__method-grid article,
.paper-project--glance .paper-project__takeaways article,
.paper-project--glance .paper-project__stat-grid article {
  border: 1px solid var(--glance-line);
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(10, 10, 10, .06);
}
.paper-project--glance .paper-project__method-grid article,
.paper-project--glance .paper-project__takeaways article { padding: 20px; }
.paper-project--glance .paper-project__method-grid h3,
.paper-project--glance .paper-project__takeaways h3 {
  margin-top: 14px;
  color: var(--glance-ink);
  font: 700 16px/1.35 "Google Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;
}
.paper-project--glance .paper-project__method-grid p,
.paper-project--glance .paper-project__takeaways p {
  color: var(--glance-muted);
  font-size: 14px;
  line-height: 1.65;
}
.paper-project--glance .paper-project__stat-grid article { padding: 20px 18px; }
.paper-project--glance .paper-project__stat-grid strong {
  color: var(--glance-blue);
  font: 700 30px/1.1 "Google Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;
}
.paper-project--glance .paper-project__stat-grid article > span { color: var(--glance-ink); font-size: 14px; }
.paper-project--glance .paper-project__stat-grid small { color: var(--glance-muted); font-size: 12px; }
.paper-project--glance .paper-project__result-note {
  border-left: 0;
  border-radius: 5px;
  color: var(--glance-ink);
  background: #f8f8f8;
  font-size: 14px;
  line-height: 1.65;
  text-align: center;
}
.paper-project--glance .paper-project__figure {
  margin: 22px auto 0;
  padding: 14px;
}
.paper-project--glance .paper-project__figure figcaption { text-align: center; }
.paper-project--glance .paper-project__artifacts {
  display: block;
  padding: 30px 0 38px;
  text-align: center;
}
.paper-project--glance .paper-project__artifact-grid {
  max-width: 760px;
  margin: 14px auto 0;
  border: 0;
}
.paper-project--glance .paper-project__artifact-grid a {
  min-height: 86px;
  border: 1px solid var(--glance-line);
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(10, 10, 10, .05);
}
.paper-project--glance .paper-project__artifact-grid a:hover { color: var(--glance-link); background: #fff; }
.paper-project--glance .paper-project__artifact-grid strong { color: var(--glance-ink); }
.paper-project--glance .paper-project__footer {
  display: block;
  padding-top: 18px;
  border-top: 1px solid var(--glance-line);
  color: var(--glance-muted);
  text-align: center;
}
.paper-project--glance .paper-project__footer p + p { margin-top: 6px; }
.paper-project--glance a { color: var(--glance-link); }
.paper-project--glance a:focus-visible { outline-color: var(--glance-link); }

@media (max-width: 760px) {
  .paper-project--glance .paper-project__shell,
  .paper-project__shell.paper-project--glance { padding: 20px 16px 52px; }
  .paper-project--glance .paper-project__hero h1 { font-size: 26px; }
  .paper-project--glance .paper-project__abstract-grid > p { text-align: left; }
  .paper-project--glance .paper-project__method-grid,
  .paper-project--glance .paper-project__takeaways,
  .paper-project--glance .paper-project__stat-grid,
  .paper-project--glance .paper-project__artifact-grid { grid-template-columns: 1fr; }
}

/* Reference-style refinements for the Glance-ETD page's shared srp markup. */
.paper-project--glance.paper-project__shell { max-width: 980px; }
.paper-project--glance .srp-crumbs { display: none; }
.paper-project--glance .srp-hero { container-type: inline-size; }
.paper-project--glance .srp-hero h1 {
  max-width: none;
  font-size: clamp(0.92rem, 3.15cqi, 1.95rem);
  line-height: 1.28;
}
.paper-project--glance .srp-title {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.paper-project--glance .srp-title span {
  display: block;
  white-space: nowrap;
}
.paper-project--glance .srp-authors { font-size: 1rem; line-height: 1.6; }
.paper-project--glance .srp-author { color: #209CEE; }
.paper-project--glance .srp-affil { color: #777; font-size: .85rem; }
.paper-project--glance .srp-venue { margin-top: .5rem; color: #4A4A4A; font-size: 1.2rem; }
.paper-project--glance .srp-links { gap: 7px; margin-top: .85rem; }
.paper-project--glance .srp-btn {
  min-height: 30px;
  padding: .3rem .8rem;
  border-radius: 290486px;
  background: #363636;
  font-size: .78rem;
}
.paper-project--glance .srp-btn:nth-child(2) { background: #3273DC; }
.paper-project--glance .srp-btn:nth-child(3) { background: #FFDD57; color: #363636; }
.paper-project--glance .srp-btn:hover { background: #242424; }
.paper-project--glance .srp-btn:nth-child(2):hover { background: #275eb7; }
.paper-project--glance .srp-btn:nth-child(3):hover { background: #f4ce45; color: #363636; }
.paper-project--glance .srp-section h2 { margin-top: 2rem; font-size: 1.3rem; }
.paper-project--glance .srp-prose p { font-size: 1rem; line-height: 1.7; text-align: left; }
.paper-project--glance .srp-figure {
  padding: 14px;
  border: 1px solid #eeeeee;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 12px rgba(10, 10, 10, .08);
}
.paper-project--glance .srp-figure figcaption { font-size: .82rem; color: #777; }
.paper-project--glance .srp-points,
.paper-project--glance .srp-stats { gap: 14px; }
.paper-project--glance .srp-points article,
.paper-project--glance .srp-stats article {
  padding: 18px;
  border: 1px solid #eeeeee;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(10, 10, 10, .06);
}
.paper-project--glance .srp-points h3 { font-size: .95rem; }
.paper-project--glance .srp-points p { color: #777; font-size: .88rem; line-height: 1.6; }
.paper-project--glance .srp-stats strong { color: #3273DC; font-size: 1.85rem; }
.paper-project--glance .srp-stats article > span { color: #4A4A4A; font-size: .88rem; }
.paper-project--glance .srp-stats small { color: #777; font-size: .75rem; }
.paper-project--glance .srp-footer { color: #777; }
.paper-project--glance .srp-footer a { color: #209CEE; }
