:root{
  --bg:#080a0f; --panel:#fff; --ink:#111412; --muted:#5e665f;
  --line:rgba(226,232,240,.13); --soft:#151a23; --brand:#ff4fa3;
  --radius:22px; --max:1120px; --shadow:0 18px 50px rgba(17,20,18,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  line-height:1.45; text-rendering:optimizeLegibility;
}
a{color:inherit}
img,svg,video{max-width:100%;height:auto}
.container,.wrap,.shell,main>section,header,nav{max-width:var(--max);margin-left:auto;margin-right:auto}
main,.page{padding-left:22px;padding-right:22px}
h1{letter-spacing:-.055em;line-height:.94;font-weight:780}
h2,h3{letter-spacing:-.035em;line-height:1.05}
p{color:var(--muted)}
button,.button,.btn,a.button,a.btn,[role=button],input[type=submit]{
  border-radius:999px; min-height:44px; padding:12px 18px; font-weight:720; text-decoration:none;
}
.btn-primary,.button.primary,a.primary,.cta-primary{
  background:var(--brand)!important;color:#fff!important;border:1px solid var(--brand)!important;
}
.btn-secondary,.button.secondary,a.secondary,.cta-secondary{
  background:transparent!important;color:var(--ink)!important;border:1px solid var(--line)!important;
}
.card,.panel,.box,section article{
  border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.78);box-shadow:var(--shadow);
}
input,select,textarea{border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink)}
.kicker,.eyebrow,.badge{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:760}
footer{border-top:1px solid var(--line);color:var(--muted)}
@media(max-width:760px){
  main,.page{padding-left:16px;padding-right:16px}
  h1{font-size:clamp(44px,13vw,72px)!important;letter-spacing:-.06em}
  h2{font-size:clamp(28px,8vw,42px)!important}
  .grid,.cards{grid-template-columns:1fr!important}
  header,nav{padding-left:16px!important;padding-right:16px!important}
  button,.button,.btn,a.button,a.btn{width:100%;justify-content:center;text-align:center}
}

/* FARPY HOME WIDE HERO FIX 20260506 */
body:has(main h1) main{
  max-width:1120px;
}
body:has(main h1) main > section:first-of-type,
body:has(main h1) main .hero{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr)!important;
  gap:32px!important;
  align-items:center!important;
}
body:has(main h1) main h1{
  max-width:760px!important;
  font-size:clamp(72px,7.4vw,118px)!important;
}
body:has(main h1) main > section:first-of-type > *{
  min-width:0;
}
body:has(main h1) .lede,
body:has(main h1) main p{
  max-width:620px!important;
}
body:has(main h1) .verified,
body:has(main h1) .proof,
body:has(main h1) .receipt-card,
body:has(main h1) .card:first-of-type{
  justify-self:end!important;
}
@media(max-width:900px){
  body:has(main h1) main > section:first-of-type,
  body:has(main h1) main .hero{
    display:block!important;
  }
  body:has(main h1) main h1{
    font-size:clamp(46px,13vw,74px)!important;
  }
}

/* FARPY RENDER PAGE POLISH 20260506 */
body:has(#submit_btn) main{
  max-width:980px!important;
  padding-top:72px!important;
}
body:has(#submit_btn) h1{
  max-width:900px!important;
  font-size:clamp(58px,6vw,92px)!important;
}
body:has(#submit_btn) form,
body:has(#submit_btn) .card{
  border-radius:24px!important;
  box-shadow:0 22px 70px rgba(0,0,0,.08)!important;
}
body:has(#submit_btn) #submit_btn{
  background:#111412!important;
  color:#fff!important;
  border:1px solid #111412!important;
}
body:has(#submit_btn) .status{
  color:#5e665f!important;
}
body:has(#submit_btn) footer{
  min-height:auto!important;
  padding:44px 22px!important;
}
@media(max-width:760px){
  body:has(#submit_btn) main{padding-top:42px!important}
  body:has(#submit_btn) h1{font-size:clamp(42px,12vw,64px)!important}
}

/* FARPY FOOTER TIGHTEN 20260506 */
footer{
  min-height:0!important;
  margin-top:44px!important;
  padding:38px 22px!important;
  border-radius:0!important;
  box-shadow:none!important;
}
footer nav, footer .inner, footer > div{
  max-width:1120px!important;
  margin:0 auto!important;
}
footer a{
  font-size:13px!important;
}
@media(max-width:760px){
  footer{margin-top:56px!important;padding:30px 16px!important}
}

/* FARPY PROOF FOCUS 20260506 */
body:has(#lookup) main{
  max-width:1080px!important;
  padding-top:56px!important;
}
body:has(#lookup) h1{
  font-size:clamp(52px,6vw,84px)!important;
  margin-bottom:24px!important;
}
body:has(#lookup) .recent{
  opacity:.9;
  margin-top:26px!important;
}
body:has(#lookup) #recent{
  max-height:320px!important;
  overflow:auto!important;
  scrollbar-width:thin;
}
body:has(#lookup) .recent-row{
  padding:12px 0!important;
}
body:has(#lookup) #proofcard,
body:has(#lookup) .lookup,
body:has(#lookup) .card:first-of-type{
  border-radius:28px!important;
  box-shadow:0 20px 70px rgba(0,0,0,.07)!important;
}
body:has(#lookup) input{
  min-height:56px!important;
  font-size:16px!important;
}
body:has(#lookup) button{
  min-height:56px!important;
}

/* FARPY REAL FORM CLEANUP 20260506 */
body:has(#submit_btn) .card,
body:has(#submit_btn) form,
body:has(#submit_btn) main > section,
body:has(#submit_btn) .upload-card{
  max-width:860px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:has(#submit_btn) input[type=file]{
  width:100%!important;
  min-height:56px!important;
  padding:15px!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:#fff!important;
}
body:has(#submit_btn) input[type=number]{
  min-height:56px!important;
  font-size:18px!important;
}
body:has(#submit_btn) #price_line{
  font-size:22px!important;
  margin:22px 0!important;
}
body:has(#submit_btn) #submit_btn{
  width:100%!important;
  min-height:64px!important;
  font-size:24px!important;
}
body:has(#submit_btn) #file_state,
body:has(#submit_btn) #submit_state{
  text-align:center!important;
  margin:14px 0!important;
}

/* FARPY MOBILE POLISH 20260506 */
@media(max-width:760px){

  html,body{
    overflow-x:hidden!important;
  }

  .nav,
  nav{
    gap:12px!important;
    padding:18px 16px!important;
    flex-wrap:wrap!important;
    align-items:center!important;
  }

  .nav-mid,
  .nav-right{
    gap:14px!important;
    flex-wrap:wrap!important;
    width:100%!important;
  }

  .nav-right{
    margin-left:0!important;
  }

  h1{
    font-size:clamp(38px,11vw,58px)!important;
    line-height:.96!important;
    letter-spacing:-.05em!important;
  }

  .lede,
  p{
    font-size:16px!important;
    line-height:1.45!important;
  }

  .hero,
  .grid,
  .cards,
  .steps,
  .micro-grid,
  .frame-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .render-card,
  .card,
  .proof-card{
    padding:20px!important;
    border-radius:22px!important;
  }

  button,
  .btn{
    width:100%!important;
    min-height:58px!important;
    font-size:18px!important;
  }

  .actions,
  .lookup{
    flex-direction:column!important;
    align-items:stretch!important;
  }

  .price-box{
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .recent-row{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:6px!important;
  }

  #recent{
    max-height:none!important;
    overflow:visible!important;
  }

  footer,
  .footer{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px 16px!important;
    padding:26px 16px 40px!important;
    margin-top:56px!important;
    border-radius:0!important;
  }

  footer a,
  .footer a{
    margin:0!important;
  }

}


/* FARPY FINAL MOBILE TIGHTEN 20260506 */
@media(max-width:760px){

  nav,
  .nav{
    padding:14px 14px 10px!important;
    gap:10px!important;
  }

  .nav-mid,
  .nav-right{
    width:100%!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px 14px!important;
  }

  main{
    margin-top:26px!important;
  }

  .hero{
    gap:22px!important;
  }

  .hero-copy{
    gap:14px!important;
  }

  h1{
    margin-bottom:12px!important;
  }

  .proof-card{
    margin-top:8px!important;
  }

  #recent{
    gap:0!important;
  }

  .recent-row{
    padding:14px 0!important;
  }

  .recent-row a{
    line-height:1.3!important;
  }

  footer,
  .footer{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px 14px!important;
    text-align:left!important;
  }

  footer a,
  .footer a{
    display:block!important;
    width:100%!important;
  }

}


/* Farpy release-prep cleanup: remove inline visual drift */
.quiet-panel{
  margin-top:40px!important;
  padding:20px!important;
  border:1px solid #e5e7eb!important;
  border-radius:18px!important;
}
.proof-result-card{
  margin-top:22px!important;
  box-shadow:none!important;
}
.hidden-link{
  display:none!important;
}

/* Farpy public-surface cleanup */
.muted-soft{opacity:.9}

/* FARPY_COMPACT_PRIVATE_BETA_20260508 */
@media (min-width: 900px){
  body{min-height:auto}
  .hero, .hero-shell, main > section:first-of-type{
    padding-top:72px!important;
    padding-bottom:56px!important;
    min-height:auto!important;
  }
  .hero-grid{
    min-height:auto!important;
    gap:36px!important;
    align-items:center!important;
  }
  h1{
    max-width:760px!important;
    line-height:.95!important;
    letter-spacing:-0.075em!important;
  }
  .section, section{
    padding-top:46px!important;
    padding-bottom:46px!important;
  }
  .cards, .split, .grid{
    gap:28px!important;
  }
  footer{
    margin-top:56px!important;
    padding-top:44px!important;
    padding-bottom:44px!important;
    min-height:auto!important;
  }
}

@media (max-width: 899px){
  .hero, .hero-shell, main > section:first-of-type{
    padding-top:42px!important;
    padding-bottom:36px!important;
    min-height:auto!important;
  }
  h1{line-height:.98!important}
  .section, section{
    padding-top:34px!important;
    padding-bottom:34px!important;
  }
  footer{
    margin-top:36px!important;
    padding-top:34px!important;
    padding-bottom:34px!important;
  }
}

/* FARPY_HOME_DENSITY_V1 */
@media (min-width: 900px){
  body:has(.hero) .page,
  body:has(.hero) main,
  body:has(.hero) .wrap {
    padding-top: 72px !important;
  }

  .hero {
    min-height: auto !important;
    padding-top: 72px !important;
    padding-bottom: 72px !important;
    gap: 56px !important;
  }

  .hero h1 {
    font-size: clamp(64px, 7vw, 104px) !important;
    line-height: .94 !important;
    margin-bottom: 24px !important;
  }

  .hero .lede,
  .hero p {
    margin-bottom: 22px !important;
  }

  .section,
  .grid,
  .cards {
    margin-top: 56px !important;
    margin-bottom: 56px !important;
  }

  footer,
  .footer {
    margin-top: 72px !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}
/* END FARPY_HOME_DENSITY_V1 */

/* FARPY_SPACING_TIGHTEN_20260509 */
main{padding-top:34px!important;padding-bottom:42px!important}
.hero,.grid,.render-card,.card,.fp-account-card{margin-top:18px}
h1{margin-bottom:14px}
.lede{margin-top:8px;margin-bottom:18px}
.fp-banner{padding-top:8px!important;padding-bottom:8px!important}
nav{padding-top:14px!important;padding-bottom:14px!important}
footer{margin-top:34px!important;padding-top:22px!important;padding-bottom:22px!important}
.card,.render-card,.fp-account-card{padding:22px!important}
.micro-grid{margin-top:18px!important;gap:14px!important}
@media(max-width:760px){
  main{padding-top:24px!important;padding-bottom:32px!important}
  .card,.render-card,.fp-account-card{padding:18px!important}
}

/* FARPY_PROOF_RECENT_ROWS_20260509 */
.recent-row{
  align-items:center!important;
  padding:16px 0!important;
}
.recent-row > div:first-child{
  min-width:0!important;
}
.recent-row > div:first-child a{
  word-break:break-word!important;
}
.recent-row > span{
  display:flex!important;
  gap:8px!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
.recent-row .btn{
  padding:8px 11px!important;
  font-size:12px!important;
  min-height:auto!important;
}
@media(max-width:760px){
  .recent-row{
    display:block!important;
  }
  .recent-row > span{
    justify-content:flex-start!important;
    margin-top:10px!important;
  }
}

/* FARPY_ACCOUNT_ROWS_20260509 */
.fp-account-row{
  gap:12px!important;
  align-items:flex-start!important;
}
.fp-account-row b{
  overflow-wrap:anywhere!important;
}
.fp-account-row span{
  line-height:1.55!important;
}
.fp-account-row a{
  font-weight:850!important;
  text-decoration:none!important;
}
#acct_jobs .fp-account-row{
  padding:14px 0!important;
}
@media(max-width:760px){
  .fp-account-row{
    display:block!important;
  }
  .fp-account-row span{
    display:block!important;
    margin-top:6px!important;
  }
}

/* FARPY_MOBILE_NAV_20260509 */
@media(max-width:760px){
  nav,.nav{
    gap:10px!important;
    align-items:flex-start!important;
  }
  .nav-mid,.nav-right{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 12px!important;
  }
  .nav-right a,.nav-mid a{
    padding:4px 0!important;
  }
  h1{
    font-size:clamp(34px,10vw,54px)!important;
    line-height:.95!important;
  }
  .kicker{
    margin-bottom:10px!important;
  }
}


/* Farpy compact vertical rhythm pass */
main, .page, .shell {
  padding-top: 28px;
  padding-bottom: 28px;
}

section, .section, .band, .block {
  margin-top: 28px;
  margin-bottom: 28px;
}

.hero {
  padding-top: 44px;
  padding-bottom: 44px;
  min-height: auto;
}

.hero + section,
.hero + .section,
hr + section,
hr + .section {
  margin-top: 24px;
}

.cards, .grid, .steps {
  gap: 24px;
}

footer {
  margin-top: 48px;
  padding-top: 28px;
  padding-bottom: 28px;
}

@media (max-width: 760px) {
  main, .page, .shell {
    padding-top: 18px;
    padding-bottom: 18px;
  }

  section, .section, .band, .block {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .hero {
    padding-top: 28px;
    padding-bottom: 28px;
  }

  .cards, .grid, .steps {
    gap: 16px;
  }

  footer {
    margin-top: 32px;
    padding-top: 22px;
    padding-bottom: 22px;
  }
}

/* ===== HERO COLLAPSE PASS ===== */

.hero,
.hero-shell,
.hero-wrap,
.hero-grid,
.hero-inner,
.landing-hero,
.home-hero {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  align-items: start !important;
}

.hero-grid,
.hero-shell,
.hero-wrap,
.hero-inner {
  display: grid !important;
  align-content: start !important;
}

body .hero:first-child,
main .hero:first-child {
  margin-top: 0 !important;
}

.nav + .hero,
header + .hero {
  padding-top: 18px !important;
}

@media (min-width: 900px) {
  .hero {
    min-height: 0 !important;
  }
}


/* ===== FARPY CANONICAL ALPHA GRID THEME 20260510 ===== */
:root{
  --farpy-bg:#080a0f;
  --farpy-bg2:#0d1017;
  --farpy-panel:#11151d;
  --farpy-panel2:#151a23;
  --farpy-line:rgba(226,232,240,.13);
  --farpy-line2:rgba(226,232,240,.22);
  --farpy-ink:#f4f6fb;
  --farpy-muted:#9aa4b2;
  --farpy-dim:#6f7a89;
  --farpy-pink:#ff4fa3;
  --farpy-purple:#7c3aed;
  --farpy-cyan:#38bdf8;
  --farpy-grid:rgba(148,163,184,.075);
}

html,body{
  background-color:var(--farpy-bg)!important;
  color:var(--farpy-ink)!important;
}

body{
  background-image:
    linear-gradient(var(--farpy-grid) 1px, transparent 1px),
    linear-gradient(90deg,var(--farpy-grid) 1px, transparent 1px),
    radial-gradient(circle at 18% 12%, rgba(124,58,237,.16), transparent 28%),
    radial-gradient(circle at 82% 8%, rgba(56,189,248,.08), transparent 24%)!important;
  background-size:48px 48px,48px 48px,100% 100%,100% 100%!important;
  background-position:0 0,0 0,0 0,0 0!important;
}

.fp-banner{
  background:#0b0d12!important;
  color:var(--farpy-muted)!important;
  border-bottom:1px solid var(--farpy-line)!important;
}

nav,.nav{
  background:#0b0d12!important;
  border-bottom:1px solid rgba(226,232,240,.08)!important;
}

nav a,.nav a,.brand{
  color:var(--farpy-ink)!important;
}

main,section,.wrap{
  color:var(--farpy-ink)!important;
}

h1,h2,h3,b,strong{
  color:var(--farpy-ink)!important;
}

p,li,span,.lede,.lead,.muted,.small,.status{
  color:var(--farpy-muted)!important;
}

.card,.panel,.render-card,.proof-card,.fp-card,.fp-account-card,.price-box,.micro,.stat,.step{
  background:linear-gradient(180deg,var(--farpy-panel),var(--farpy-panel2))!important;
  border:1px solid var(--farpy-line2)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.26)!important;
  color:var(--farpy-ink)!important;
}

input,select,textarea,input[type=file],input[type=number]{
  background:#0c1017!important;
  border:1px solid var(--farpy-line2)!important;
  color:var(--farpy-ink)!important;
}

button,.btn,a.btn,.button,a.button,input[type=submit]{
  background:linear-gradient(90deg,var(--farpy-pink),var(--farpy-purple))!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 14px 42px rgba(255,79,163,.20)!important;
}

.btn.secondary,a.btn.secondary,.button.secondary,a.secondary{
  background:transparent!important;
  color:var(--farpy-ink)!important;
  border:1px solid var(--farpy-line2)!important;
  box-shadow:none!important;
}

footer{
  border-top:1px solid var(--farpy-line)!important;
  color:var(--farpy-muted)!important;
}

footer a{
  color:var(--farpy-muted)!important;
}

.kicker,.k,.label{
  color:var(--farpy-cyan)!important;
}

/* kill pee/swamp legacy haze */
body.farpy-dark-alpha,
body.farpy-home-dark,
body.farpy-real-dark{
  background-color:var(--farpy-bg)!important;
}

/* ===== FARPY CANONICAL PUBLIC SHELL UNIFY 20260510 ===== */
:root{
  --shell-bg:#080a0f;
  --shell-panel:#11151d;
  --shell-panel2:#151a23;
  --shell-line:rgba(226,232,240,.16);
  --shell-line2:rgba(226,232,240,.24);
  --shell-text:#f4f6fb;
  --shell-muted:#9aa4b2;
  --shell-dim:#707b8c;
  --shell-pink:#ff4fa3;
  --shell-purple:#7c3aed;
  --shell-cyan:#38bdf8;
}

html,body{
  background-color:var(--shell-bg)!important;
  color:var(--shell-text)!important;
}

body{
  background-image:
    linear-gradient(rgba(148,163,184,.075) 1px, transparent 1px),
    linear-gradient(90deg,rgba(148,163,184,.075) 1px, transparent 1px),
    radial-gradient(circle at 20% 10%, rgba(124,58,237,.14), transparent 28%),
    radial-gradient(circle at 80% 8%, rgba(56,189,248,.08), transparent 26%)!important;
  background-size:48px 48px,48px 48px,100% 100%,100% 100%!important;
}

.fp-banner,.banner{
  background:#0b0d12!important;
  color:var(--shell-muted)!important;
  border-bottom:1px solid var(--shell-line)!important;
  text-align:center!important;
}

nav,.nav,header{
  background:#0b0d12!important;
  color:var(--shell-text)!important;
  border-bottom:1px solid rgba(226,232,240,.10)!important;
}

nav a,.nav a,header a,.brand{
  color:var(--shell-text)!important;
}

main,.wrap,section{
  color:var(--shell-text)!important;
}

h1,h2,h3,h4,b,strong{
  color:var(--shell-text)!important;
}

p,li,small,span,.lede,.lead,.muted,.sub,.status,.job-meta{
  color:var(--shell-muted)!important;
}

.card,.fp-card,.panel,.render-card,.proof-card,.fp-account-card,.price-box,.micro,.step,.stat,.quick-note,.box,.row{
  background:linear-gradient(180deg,var(--shell-panel),var(--shell-panel2))!important;
  color:var(--shell-text)!important;
  border:1px solid var(--shell-line2)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.28)!important;
}

input,select,textarea,input[type=file],input[type=number]{
  background:#0c1017!important;
  color:var(--shell-text)!important;
  border:1px solid var(--shell-line2)!important;
}

button,.btn,a.btn,.button,a.button,input[type=submit]{
  background:linear-gradient(90deg,var(--shell-pink),var(--shell-purple))!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 14px 42px rgba(255,79,163,.20)!important;
}

.btn.secondary,a.btn.secondary,.button.secondary,a.secondary,.quick button{
  background:transparent!important;
  color:var(--shell-text)!important;
  border:1px solid var(--shell-line2)!important;
  box-shadow:none!important;
}

.badge,.pill,.job-badge{
  background:rgba(255,79,163,.16)!important;
  color:var(--shell-pink)!important;
  border:1px solid rgba(255,79,163,.26)!important;
}

.kicker,.k,.label{
  color:var(--shell-cyan)!important;
}

footer{
  background:transparent!important;
  color:var(--shell-muted)!important;
  border-top:1px solid var(--shell-line)!important;
}

footer a{
  color:var(--shell-muted)!important;
}

/* suppress legacy light page residue */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:white"],
[style*="background: white"]{
  background:linear-gradient(180deg,var(--shell-panel),var(--shell-panel2))!important;
}
