.fbar {
  padding-bottom: 72px;
  background:
    linear-gradient(180deg, rgba(0, 49, 27, .9), rgba(0, 38, 20, .96)),
    url("/static/assets/hero-farmer-960.webp") 72% 30% / cover;
}
.greet { max-width: 480px; margin: 26px auto 0; }
.greet h1 { font-size: 30px; font-weight: 800; letter-spacing: -0.03em; }
.greet > p { color: rgba(255,255,255,.8); margin: 6px 0 18px; }
.greet .btn-gold { box-shadow: 0 16px 36px -14px rgba(252, 185, 0, .6); }
.dial { text-align: center; font-size: 13.5px; color: rgba(255,255,255,.75); margin: 12px 0 0; }
.fshell { margin-top: -52px; }

.sec-t { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); display: flex; align-items: center; gap: 8px; }
.sec-t .ic { color: var(--green-700); }
.sub-t { font-size: 14px; font-weight: 800; margin: 16px 0 8px; }

.stats { padding: 16px 18px 14px; }
.stat-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 12px; }
.stat { padding: 12px 10px; border-radius: 14px; background: var(--surface-2); border: 1px solid var(--line); text-align: center; }
.stat b { display: block; font-size: 28px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; }
.stat span { font-size: 12px; font-weight: 700; color: var(--muted); }
.stat.good b { color: var(--green-700); }
.stat.bad b { color: var(--red); }
.recent { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.recent li { display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; font-size: 14px; }
.recent .ri { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--mint); color: var(--green-700); }
.recent li.bad .ri { background: var(--red-soft); color: var(--red); }
.recent li.warn .ri { background: var(--gold-soft); color: var(--gold-ink); }
.recent b { display: block; font-size: 14px; }
.recent small { color: var(--muted); font-size: 12px; }
.recent .when { font-size: 12px; color: var(--muted); }
.recent .empty { display: block; color: var(--muted); font-size: 13.5px; }

.points { display: flex; gap: 14px; align-items: center; padding: 18px; border-color: #F5DD8F; background: linear-gradient(150deg, #FFFBEA, #fff 70%); }
.pts-ic { width: 52px; height: 52px; border-radius: 16px; background: var(--gold); color: var(--forest); display: grid; place-items: center; flex: none; }
.points h2 { font-size: 15px; font-weight: 800; }
.pts-total { display: block; font-size: 32px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; }
.points p { margin: 2px 0 0; color: var(--muted); font-size: 13.5px; }
.points > div { flex: 1; min-width: 0; }
.pts-next { margin-top: 10px; display: grid; gap: 4px; }
.pts-bar { height: 8px; border-radius: 999px; background: #F3E6B8; overflow: hidden; }
.pts-bar i { display: block; height: 100%; background: var(--gold); border-radius: inherit; transition: width .4s ease; }
.pts-next small { font-size: 12.5px; color: var(--ink-2); font-weight: 600; }
.pts-next .pts-note { color: var(--muted); font-weight: 400; }

.guide { padding: 16px 18px; }
.maturity, .tipl { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font-size: 14px; }
.maturity li { display: flex; gap: 10px; align-items: center; }
.maturity .m { width: 10px; height: 26px; border-radius: 4px; flex: none; }
.m4 { background: #9ED9B4; } .m5 { background: #56C080; } .m6 { background: var(--green); } .m7 { background: var(--green-700); }
.tipl li { display: flex; gap: 10px; }
.tipl li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--gold); margin-top: 7px; flex: none; }

.dealers { padding: 16px 18px; display: grid; gap: 12px; }
.loc-msg { margin: 0; font-size: 13px; color: var(--muted); }
.dealer-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.dealer-list li { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 12px; background: var(--surface-2); border: 1px solid var(--line); }
.dealer-list b { display: block; font-size: 14.5px; }
.dealer-list small { color: var(--muted); font-size: 12.5px; }
.dealer-list a { font-size: 13px; font-weight: 700; color: var(--green-700); text-decoration: none; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }

.help { display: flex; gap: 14px; align-items: flex-start; padding: 18px; }
.help-ic { width: 52px; height: 52px; border-radius: 16px; background: var(--mint); color: var(--green-700); display: grid; place-items: center; flex: none; }
.help h2 { font-size: 17px; font-weight: 800; }
.help p { margin: 4px 0 12px; color: var(--muted); font-size: 14px; }

/* verify page: one-tap points and "My farm" */
.rw-quick { display: grid; gap: 8px; }
.linkish { background: none; border: 0; padding: 4px 0; color: var(--green-700); font-weight: 700; font-size: 13.5px; cursor: pointer; text-align: left; }
