:root {
  --bg: #f6f5f1;
  --surface: #ffffff;
  --text: #171717;
  --muted: #6d6d68;
  --border: #d9d7d0;

  --ai: #315f9f;
  --ai-soft: #e8eef8;

  --human: #2f7d4a;
  --human-soft: #e7f3eb;

  --warning: #9a6a18;
  --warning-soft: #fbf1dd;

  --danger: #a33a3a;
  --danger-soft: #f8e7e7;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background:#ffffff;
  color: var(--text);
  font-family: Arial, Helvetica, sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

.container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

/* Header */

header {
  position: sticky;
  top: 0;
  z-index: 10;
  border-bottom: 1px solid var(--border);
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(12px);
}

.nav {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.logo {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -0.04em;
}

nav {
  display: flex;
  align-items: center;
  gap: 20px;
  color: var(--muted);
  font-size: 16px;
}

nav a {
  transition:
    color 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease;
}

nav a:hover {
  color: var(--text);
}

.login {
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--surface);
  color: var(--text);
}

/* Hero */

.hero {
  padding: 84px 0 54px;
}

.eyebrow {
  margin-bottom: 18px;
  color: var(--ai);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

h1 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(64px, 11vw, 118px);
  line-height: 0.88;
  letter-spacing: -0.065em;
}

.tagline {
  max-width: 900px;
  margin: 28px 0 20px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 4.6vw, 48px);
  line-height: 1.08;
  letter-spacing: -0.03em;
  color: #333330;
}

.intro {
  max-width: 720px;
  margin: 0 0 32px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.7;
}

/* Search */

.search {
  max-width: 760px;
  display: flex;
  gap: 10px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: var(--surface);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.025);
}

.search:focus-within {
  border-color: #b7c7dd;
}

.search input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  padding: 12px 14px;
  background: transparent;
  color: var(--text);
  font-size: 15px;
}

.search input::placeholder {
  color: #969690;
}

.search button {
  border: 0;
  border-radius: 11px;
  padding: 12px 20px;
  background: var(--text);
  color: #ffffff;
  font-weight: 700;
}

/* Sections */

.section {
  padding: 14px 0 80px;
}

.section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}

.section-label {
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  letter-spacing: -0.03em;
}

.view-all {
  color: var(--ai);
  font-size: 14px;
  font-weight: 700;
}

/* Papers */

.papers {
  display: grid;
  gap: 16px;
}

.paper {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  gap: 28px;
  padding: 28px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: var(--surface);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.035);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    border-color 0.18s ease;
}

.paper:hover {
  transform: translateY(-2px);
  border-color: #c9c7c0;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.05);
}

.paper-id {
  margin-bottom: 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.paper h3 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  line-height: 1.18;
}

.authors {
  margin: 8px 0 14px;
  color: #474744;
  font-size: 14px;
}

.abstract {
  margin: 0;
  max-width: 780px;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.65;
}

/* Verification */

.verification {
  display: grid;
  gap: 9px;
  align-content: start;
}

.verification-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 13px;
}

.badge {
  padding: 6px 9px;
  border-radius: 999px;
  font-weight: 700;
}

.badge.ai {
  color: var(--ai);
  background: var(--ai-soft);
}

.badge.human {
  color: var(--human);
  background: var(--human-soft);
}

.badge.warning {
  color: var(--warning);
  background: var(--warning-soft);
}

.badge.danger {
  color: var(--danger);
  background: var(--danger-soft);
}

.human-block {
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid var(--border);
}

.human-label {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 7px;
  font-size: 13px;
  font-weight: 700;
}

.progress {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #ecebe6;
}

.progress > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--human);
}

/* Footer */

footer {
  border-top: 1px solid var(--border);
  padding: 30px 0 42px;
  color: var(--muted);
  font-size: 13px;
}

.footer-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

/* Responsive */

@media (max-width: 800px) {
  nav a:not(.login) {
    display: none;
  }

  .hero {
    padding-top: 60px;
  }

  .paper {
    grid-template-columns: 1fr;
  }

  .verification {
    max-width: 320px;
  }

  .section-head {
    align-items: start;
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .container {
    width: min(100% - 22px, 1180px);
  }

  .nav {
    min-height: 64px;
  }

  .logo {
    font-size: 26px;
  }

  .hero {
    padding-top: 46px;
  }

  .search {
    flex-direction: column;
  }

  .search button {
    width: 100%;
  }

  .paper {
    padding: 20px;
  }

  .paper h3 {
    font-size: 23px;
  }
}


/* =========================================================
   ProofForum editorial layer - v20
   Quiet, mathematical, publication-first visual language.
   ========================================================= */

:root {
  --bg: #f7f4ec;
  --surface: #fffdf8;
  --text: #181714;
  --muted: #6b685f;
  --border: #d8d2c6;

  --accent: #6f2430;
  --accent-soft: #f3e8e8;

  --ai: #35556f;
  --ai-soft: #eaf0f4;

  --human: #35644a;
  --human-soft: #eaf1ec;

  --warning: #826623;
  --warning-soft: #f5efde;

  --danger: #8a3d3d;
  --danger-soft: #f4e7e5;
}

html {
  background: var(--bg);
}

body {
  background: var(--bg);
  color: var(--text);
  font-family:
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif;
  letter-spacing: -0.005em;
}

header {
  background: rgba(247, 244, 236, 0.96);
  backdrop-filter: blur(8px);
  box-shadow: none;
}

.nav {
  min-height: 76px;
}

.logo {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  font-weight: 600;
  letter-spacing: -0.045em;
}

nav {
  gap: 18px;
  font-size: 12px;
}

nav a {
  padding-bottom: 2px;
}

nav a:hover {
  color: var(--accent);
}

.login {
  border-radius: 4px;
  background: transparent;
}

.eyebrow,
.section-label {
  color: var(--accent);
  letter-spacing: .14em;
  font-size: 10px;
}

h1,
h2,
h3,
.tagline {
  font-family: Georgia, "Times New Roman", serif;
}

.view-all,
.paper-id,
.subject-code {
  color: var(--accent);
}

footer {
  background: transparent;
}

button,
input,
select,
textarea {
  border-radius: 4px !important;
}

.paper-surface,
.card,
.section-card,
.side-card,
.archive-intro,
.toolbar,
.archive-table {
  box-shadow: none !important;
}



/* ProofForum v22 - readable interaction layer */
:root{
  --verified:#27734d;--verified-soft:#e7f3eb;
  --community:#b8860b;--community-soft:#fff3c9;
  --issue:#b23b3b;--issue-soft:#f9e7e5;
  --ai:#d16a20;--ai-soft:#fff0e3;
  --ink:#171713;--paper:#fbf8f1;--navy:#283b4d;
}
body{font-size:16px;line-height:1.55;background:var(--paper)}
.container{width:min(1240px,calc(100% - 36px))}
nav{font-size:14px;gap:22px}nav a{font-weight:650;padding:8px 2px}
.logo{font-size:34px}
button,.button,.action,.reader-action,.paper-action,.profile-action,.version-action{min-height:42px;font-size:13px!important;font-weight:750!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(39,115,77,.25);outline-offset:2px}
.status-certified{color:var(--verified)!important;background:var(--verified-soft)!important;border-color:rgba(39,115,77,.35)!important}
.status-community{color:#725600!important;background:var(--community-soft)!important;border-color:rgba(184,134,11,.42)!important}
.status-community{color:#7f5900!important;background:#fff8d9!important;border-color:#e0c660!important}.status-concern{color:#a95100!important;background:#fff1e5!important;border-color:#deb085!important}.status-issue{color:var(--issue)!important;background:var(--issue-soft)!important;border-color:rgba(178,59,59,.35)!important}.status-unreviewed{color:#626a75!important;background:#f2f3f5!important;border-color:#c8ccd2!important}
.status-ai{color:#a64e11!important;background:var(--ai-soft)!important;border-color:rgba(209,106,32,.38)!important}
.op-suggest-wrap{position:relative;width:100%}
.op-suggestions{display:none;position:absolute;z-index:80;left:0;right:0;top:calc(100% + 6px);background:#fffdf8;border:1px solid var(--border);box-shadow:0 16px 36px rgba(28,26,21,.14);max-height:430px;overflow:auto;text-align:left}
.op-suggestions.open{display:block}
.op-suggestion{display:grid;grid-template-columns:118px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:13px 14px;border-bottom:1px solid #ebe6dc;background:#fffdf8}
.op-suggestion:hover{background:#f2eee5}
.op-suggestion-kind{font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.op-suggestion strong{display:block;font:600 15px/1.3 Georgia,"Times New Roman",serif}.op-suggestion small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.op-suggestion-arrow{font-size:18px;color:var(--accent)}
.op-suggestion-empty{padding:14px;color:var(--muted);font-size:12px}
@media(max-width:700px){nav{gap:10px;font-size:12px}.op-suggestion{grid-template-columns:1fr}.op-suggestion-kind,.op-suggestion-arrow{display:none}}

/* ProofForum v23 — white academic repository identity */
:root{
  --bg:#ffffff;--surface:#ffffff;--paper:#ffffff;--text:#15171b;--ink:#15171b;
  --muted:#666b74;--border:#d9dde4;--accent:#751f35;--accent-soft:#f8edf0;
  --royal:#2449a8;--royal-soft:#eef3ff;--navy:#23304f;
  --verified:#237447;--verified-soft:#eaf6ef;--community:#8b6800;--community-soft:#fff8da;
  --issue:#b32934;--issue-soft:#fff0f1;--ai:#5b63a5;--ai-soft:#f0f1fb;
  --human:var(--verified);--human-soft:var(--verified-soft);--danger:var(--issue);--danger-soft:var(--issue-soft);
}
html,body{background:#fff}body{color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;letter-spacing:0}.container{width:min(1160px,calc(100% - 36px))}
header{background:#fff;border-bottom:3px solid var(--accent);backdrop-filter:none;box-shadow:none}.nav{min-height:58px}.logo{font:700 27px/1 Georgia,"Times New Roman",serif;letter-spacing:-.035em;color:var(--accent)}
nav{gap:18px;font-size:13px;color:#424752}nav a{font-weight:600;padding:5px 0}nav a:hover{color:var(--royal)}.login{padding:7px 11px;border-radius:3px!important;border-color:#aeb5c2;background:#fff}
h1,h2,h3,.tagline{color:#17191e}.eyebrow,.section-label{color:var(--accent);font-size:10px;letter-spacing:.11em}.view-all,a.linkish{color:var(--royal)}
button,.button,.action,.reader-action,.paper-action,.profile-action,.version-action{border-radius:3px!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,73,168,.20);outline-offset:2px}
.badge,.status-pill,.latest,.prov{border-radius:3px!important}.badge.ai{color:var(--royal);background:var(--royal-soft)}.paper,.card,.section-card,.side-card,.archive-intro,.archive-table,.paper-surface{border-radius:4px!important;box-shadow:none!important}.paper{padding:22px;border-color:#d7dce4}.paper:hover{transform:none;border-color:#aab4c4;box-shadow:none}.paper-id{color:var(--accent)}
footer{border-top:1px solid var(--border);background:#fff}.op-suggestions,.op-suggestion{background:#fff}.op-suggestion:hover{background:#f5f7fb}.op-suggestion-kind,.op-suggestion-arrow{color:var(--royal)}
.op-primary{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid var(--royal);background:var(--royal);color:#fff;font-size:12px;font-weight:700}.op-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid #aeb5c2;background:#fff;color:#232630;font-size:12px;font-weight:700}
.op-status{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid;font-size:10px;font-weight:800}.op-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.op-status.verified{color:var(--verified);background:var(--verified-soft);border-color:#abd2bc}.op-status.community{color:#7f5900;background:#fff8d9;border-color:#e0c660}.op-status.concern{color:#a95100;background:#fff1e5;border-color:#deb085}.op-status.incorrect{color:var(--issue);background:var(--issue-soft);border-color:#e2afb4}.op-status.unverified{color:#626a75;background:#f2f3f5;border-color:#c8ccd2}.op-status.ai{color:var(--royal);background:var(--royal-soft);border-color:#b9c8ef}


/* ProofForum v24 — larger, arXiv-like reading scale */
html{font-size:17px}body{font-size:17px;line-height:1.58}nav{font-size:15px}.logo{font-size:30px}.eyebrow,.section-label{font-size:12px}.view-all,a.linkish{font-size:15px;color:var(--royal)}input,select,textarea{font-size:16px}.op-primary,.op-secondary{font-size:14px}.op-status{font-size:12px;padding:5px 8px}.op-suggestion strong{font-size:16px}.op-suggestion small{font-size:13px}


/* ProofForum v27 — final readable academic scale */
body{font-size:17px;line-height:1.62}
nav{font-size:16px}
button,.button,.action,.reader-action,.paper-action,.profile-action,.version-action{font-size:15px!important}
input,select,textarea{font-size:16px}
.op-status{font-size:13px}

/* ProofForum wordmark: restrained academic identity. "Proof" carries the accent; "Forum" stays plain. */
.pf-logo{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.035em;text-decoration:none}
.pf-script{font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;font-style:italic;font-weight:700;color:var(--accent,#751f35);letter-spacing:-.055em;margin-right:.07em}
.pf-forum{font-family:Georgia,"Times New Roman",serif;font-style:normal;font-weight:700;color:#1d2638;letter-spacing:-.04em}
.pf-logo:hover .pf-script{color:#8c2841}.pf-logo:hover .pf-forum{color:var(--royal,#2449a8)}
.pf-auth-user{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}
.pf-auth-logout{border:1px solid var(--border);background:#fff;color:var(--royal,#2447a8);padding:6px 8px;font-size:12px;font-weight:700;cursor:pointer}

/* ProofForum v31 - compact account navigation */
.pf-auth-user{display:inline-flex;align-items:center;gap:9px}
.pf-auth-dashboard{color:var(--royal,#2449a8);font-weight:750;text-decoration:none;white-space:nowrap}
.pf-auth-dashboard:hover{text-decoration:underline}


/* ProofForum v419 global wordmark: visible brand mentions use the same restrained identity as the header. */
.pf-brand-inline{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.025em}
.pf-brand-inline .pf-script{font-size:1em;margin-right:.06em}
.pf-brand-inline .pf-forum{font-size:1em}
.pf-free-note{max-width:900px;margin:2px 0 20px;padding:9px 11px;border-left:3px solid var(--accent);background:#faf7f3;color:#4a4f58;font-size:14px;line-height:1.55}
/* Shared password visibility control (login + password recovery). */
.pf-password-wrap{position:relative}.pf-password-wrap input{width:100%;box-sizing:border-box;padding-right:48px!important}.pf-password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent;color:var(--royal);padding:5px;border-radius:50%;cursor:pointer}.pf-password-toggle:hover,.pf-password-toggle:focus-visible{background:#eef2ff;outline:2px solid transparent}.pf-password-toggle svg{width:21px;height:21px;display:block}


/* Essential-cookie notice: compact animated popup, visually separate from page content. */
.pf-cookie-note{position:fixed;right:18px;bottom:18px;z-index:10000;display:flex;align-items:center;gap:14px;width:min(430px,calc(100vw - 28px));box-sizing:border-box;padding:13px 13px 13px 15px;border:2px solid #aab6d4;border-left:4px solid var(--royal);border-radius:9px;background:#fff;box-shadow:0 14px 38px rgba(24,35,61,.22),0 2px 7px rgba(24,35,61,.10);font-size:13px;line-height:1.42;color:#343b47;opacity:0;transform:translateY(14px) scale(.985);pointer-events:none;transition:opacity .22s ease,transform .22s ease}
.pf-cookie-note.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.pf-cookie-note.is-closing{opacity:0;transform:translateY(8px) scale(.99);pointer-events:none}
.pf-cookie-note__text{min-width:0;display:grid;gap:2px}.pf-cookie-note__text>strong{color:#1d2638;font-size:13px}.pf-cookie-note__text>span{display:block}.pf-cookie-note a{font-weight:800;color:var(--royal);white-space:nowrap}.pf-cookie-note__ok{flex:0 0 auto;min-height:34px!important;border:1px solid var(--royal);border-radius:5px!important;background:var(--royal);color:#fff;font:inherit;font-weight:800;padding:5px 11px;cursor:pointer}.pf-cookie-note__ok:focus-visible{outline:3px solid rgba(36,73,168,.22);outline-offset:2px}
.pf-remember-choice{display:flex;align-items:flex-start;gap:9px;margin:-2px 0 15px;font-size:14px;line-height:1.35;cursor:pointer}.pf-remember-choice input{margin-top:3px}.pf-remember-choice span{display:grid;gap:2px}.pf-remember-choice small{font-size:12px;color:var(--muted);font-weight:400}
@media(max-width:640px){.pf-cookie-note{left:10px;right:10px;bottom:10px;width:auto;padding:12px;border-radius:8px}.pf-cookie-note__text{font-size:12px}.pf-cookie-note__ok{padding:5px 10px}}
pf-cookie-note__text{font-size:12px}}
