/* RunFair v2 — GoRunAsia-inspired: Inter, ink/lime palette, airy cards. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");
:root{--rf-ink:#1a1a1a;--rf-ink-2:#2d2d2d;--rf-lime:#d2e902;--rf-bg:#f7f7f4;--rf-card:#fff;--rf-line:#e0e0d8;--rf-mute:#777;--rf-sub:#555}
*{box-sizing:border-box}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--rf-bg);color:var(--rf-ink);margin:0;-webkit-font-smoothing:antialiased}
a{color:inherit}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rf-wrap{max-width:1200px;margin:0 auto;padding:0 32px}
html,body{max-width:100%;overflow-x:hidden}

/* nav */
.rf-nav{position:sticky;top:0;z-index:30;background:rgba(247,247,244,.92);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--rf-line);height:64px;display:flex;align-items:center;max-width:none;margin:0;padding:0 32px;gap:32px}
.rf-wordmark{display:flex;align-items:center;gap:10px;line-height:0;text-decoration:none}
.rf-wordmark img{height:30px;width:auto;display:block}
.rf-wordmark span{font-size:14px;font-weight:700;letter-spacing:.08em;line-height:1}
.rf-nav nav{display:flex;gap:26px;align-items:center;margin-left:auto;font-size:14px;font-weight:500;color:var(--rf-sub)}
.rf-nav nav a{text-decoration:none}
.rf-nav nav a:hover{color:var(--rf-ink)}
.rf-nav .rf-nav-login{background:var(--rf-ink);color:#fff!important;padding:8px 18px;border-radius:999px;font-weight:600}
.rf-nav .rf-nav-login:hover{background:#000}

/* hero */
.rf-hero{background:var(--rf-ink);color:#fff;padding:72px 0 64px;position:relative;overflow:hidden}
.rf-hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(210,233,2,.22),transparent 65%);pointer-events:none}
.rf-hero .rf-wrap{position:relative;z-index:1}
.rf-hero__row{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.rf-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--rf-lime);margin-bottom:18px}
.rf-hero h1{font-size:52px;line-height:1.08;letter-spacing:-.03em;margin:0 0 16px;font-weight:800}
.rf-hero h1 em{font-style:normal;color:var(--rf-lime)}
.rf-hero__lead{font-size:17px;color:#b9bdb2;margin:0;max-width:520px;line-height:1.6}
.rf-hero--detail{padding:48px 0 56px}
.rf-hero--detail h1{font-size:44px;max-width:860px}
.rf-hero--detail .rf-hero__lead{margin-bottom:30px}
.rf-back{display:inline-block;font-size:13px;color:#9ea396;text-decoration:none;margin-bottom:26px}
.rf-back:hover{color:#fff}

/* buttons */
.rf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:14px;font-weight:700;padding:13px 24px;border-radius:999px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,transform .15s}
.rf-btn:hover{transform:translateY(-1px)}
.rf-btn--lime{background:var(--rf-lime);color:var(--rf-ink)}
.rf-btn--lime:hover{background:#c4d800}
.rf-btn--dark{background:var(--rf-ink);color:#fff}
.rf-btn--dark:hover{background:#000}
.rf-btn--ghost{background:transparent;color:var(--rf-ink);border-color:var(--rf-line)}
.rf-hero .rf-btn--lime{margin-top:6px}

/* search */
.rf-search{display:flex;align-items:center;gap:8px;background:#fff;padding:6px;border-radius:999px;width:min(420px,100%);box-sizing:border-box}
.rf-search input{flex:1;min-width:0;height:44px;box-sizing:border-box;border:0;outline:0;padding:0 16px;font:inherit;font-size:14px;line-height:44px;background:transparent;color:var(--rf-ink)}
.rf-search .rf-btn{height:44px;box-sizing:border-box;padding:0 22px;margin:0;line-height:1}

/* list */
.rf-list{padding:56px 32px 88px}
.rf-list__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:22px}
.rf-list__head h2{font-size:22px;margin:0;font-weight:700;letter-spacing:-.01em}
.rf-list__head span{font-size:13px;color:var(--rf-mute)}
.rf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rf-pcard{display:flex;flex-direction:column;background:var(--rf-card);border:1px solid var(--rf-line);border-radius:18px;padding:24px;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s,border-color .18s}
.rf-pcard:hover{transform:translateY(-3px);box-shadow:0 14px 34px -14px rgba(0,0,0,.18);border-color:#c9cbc0}
.rf-pcard__top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:22px}
.rf-pcard__brand{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--rf-ink);background:var(--rf-bg);border-radius:999px;padding:5px 11px}
.rf-pcard__type{font-size:12px;color:var(--rf-mute)}
.rf-pcard h3{font-size:19px;line-height:1.35;margin:0 0 10px;font-weight:700;letter-spacing:-.01em}
.rf-pcard p{font-size:14px;color:var(--rf-sub);line-height:1.6;margin:0 0 22px}
.rf-pcard__meta{display:flex;justify-content:space-between;font-size:13px;color:var(--rf-mute);padding-top:16px;border-top:1px solid var(--rf-line);margin-top:auto}
.rf-pcard__meta b{color:var(--rf-ink);font-size:15px}
.rf-pcard__go{margin-top:16px;font-size:14px;font-weight:700}
.rf-empty{color:var(--rf-mute);text-align:center;padding:48px 0}

/* detail */
.rf-facts{display:flex;flex-wrap:wrap;gap:36px;margin:0 0 34px;padding:0}
.rf-facts dt{font-size:12px;color:#9ea396;margin-bottom:4px}
.rf-facts dd{margin:0;font-size:17px;font-weight:700;color:#fff}
.rf-detail{padding:56px 32px 88px;max-width:860px}
.rf-pblock{background:var(--rf-card);border:1px solid var(--rf-line);border-radius:18px;padding:28px 30px;margin-bottom:16px}
.rf-pblock h2{font-size:17px;margin:0 0 14px;font-weight:700}
.rf-pblock ul{margin:0;padding:0;list-style:none}
.rf-pblock li{position:relative;padding:9px 0 9px 22px;font-size:15px;line-height:1.65;color:var(--rf-sub);border-top:1px solid var(--rf-line)}
.rf-pblock li:first-child{border-top:0}
.rf-pblock li::before{content:"";position:absolute;left:2px;top:19px;width:8px;height:8px;border-radius:50%;background:var(--rf-lime);box-shadow:0 0 0 2px var(--rf-ink)}
.rf-pblock p{margin:0;font-size:15px;color:var(--rf-sub);line-height:1.65}
.rf-pblock--row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.rf-pblock--row h2{margin-bottom:6px}

/* overflow guards */
.rf-hero__row>*{min-width:0;max-width:100%}
.rf-grid>*{min-width:0}
.rf-search{min-width:0}
.rf-search input{width:100%}

/* footer + stage */
.stage{background:#111;color:#9ea396;font-size:12px;text-align:center;padding:8px 16px;letter-spacing:.02em}
.rf-footer{background:var(--rf-ink);color:#9ea396;padding:40px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-top:0}
.rf-footer strong{display:block;color:#fff;font-size:16px;margin-bottom:6px}
.rf-footer p{margin:0;font-size:13px}
.rf-footer>span{font-size:12px;color:#7d8275}
.rf-empty-page{padding:80px 32px}

@media (max-width:980px){.rf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){
 .rf-wrap,.rf-list,.rf-detail{padding-left:20px;padding-right:20px}
 .rf-nav{padding:0 16px;gap:10px;overflow:hidden}
 .rf-wordmark span{display:none}
 .rf-wordmark img{height:24px}
 .rf-nav nav{gap:10px;font-size:13px;min-width:0;flex-wrap:nowrap;white-space:nowrap}
 .rf-nav nav a:nth-child(2){display:none}
 .rf-nav .rf-nav-login{padding:7px 14px}
 .rf-hero{padding:48px 0 44px}
 .rf-hero h1{font-size:36px}
 .rf-hero--detail h1{font-size:30px}
 .rf-hero__row{display:block}
 .rf-hero__row>div:first-child{margin-bottom:28px}
 .rf-search{width:100%;box-sizing:border-box}
 .rf-search .rf-btn{padding:10px 16px}
 .rf-grid{grid-template-columns:1fr}
 .rf-list{padding-top:40px}
 .rf-facts{gap:22px}
 .rf-pblock{padding:22px 20px}
 .rf-footer{padding:32px 20px;flex-direction:column;align-items:flex-start}
}

/* ── 人机验证页（无按钮、无底部栏，通过即进入） ── */
.rf-gate{min-height:70vh;display:grid;place-items:center;padding:48px 20px}
.rf-gate__card{max-width:440px;width:100%;background:#fff;border:1px solid var(--rf-line);border-radius:18px;padding:36px 32px;text-align:center}
.rf-gate__card h1{font-size:24px;margin:0 0 10px;font-weight:800;letter-spacing:-.02em}
.rf-gate__card p{margin:0 0 22px;color:var(--rf-sub);font-size:15px;line-height:1.6}
.rf-gate__card form{display:flex;flex-direction:column;align-items:center;gap:16px}
.rf-gate__card .cf-turnstile{min-height:65px}
.rf-gate__error{padding:10px 12px;border-radius:10px;background:#fdeee9;color:#9b4a34;font-size:14px;width:100%;box-sizing:border-box}
.rf-gate__status{font-size:13px;color:var(--rf-mute);margin:0}
