/* =========================================================================
   邻里乒乓 · 电脑版官网 —— 设计系统 (运动科技风)
   品牌色：深空蓝 #0b1220 / 电光蓝 #2f7cf6 / 活力橙红 #ff5a2d / 荧光青 #23d3ee
   ========================================================================= */
:root{
  --bg:#f3f6fb;
  --bg-deep:#0a1122;
  --surface:#ffffff;
  --ink:#101828;
  --ink-2:#475467;
  --ink-3:#98a2b3;
  --line:#e4e9f2;
  --brand:#2f7cf6;
  --brand-2:#ff5a2d;
  --brand-grad:linear-gradient(135deg,#2f7cf6 0%,#3aa0ff 50%,#23d3ee 100%);
  --accent:#23d3ee;
  --gold:#f7b731;
  --silver:#9aa5b1;
  --bronze:#cd7f32;
  --ok:#12b76a;
  --radius:18px;
  --radius-sm:12px;
  --shadow:0 10px 34px -12px rgba(16,24,40,.16);
  --shadow-lg:0 24px 60px -20px rgba(16,24,40,.24);
  --font:'PingFang SC','Microsoft YaHei','Helvetica Neue',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.hidden{display:none!important}

/* ===== 顶部导航 ===== */
.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(228,233,242,.7)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:11px}
.brand-logo{width:42px;height:42px;border-radius:12px;background:var(--brand-grad);display:grid;place-items:center;font-weight:800;color:#fff;font-size:20px;box-shadow:0 6px 18px -6px rgba(47,124,246,.7);flex:none}
.brand-name{font-size:20px;font-weight:800;letter-spacing:.5px}
.brand-name small{display:block;font-size:11px;font-weight:500;color:var(--ink-3);letter-spacing:2px}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-links a{padding:9px 15px;border-radius:10px;font-size:15px;font-weight:600;color:var(--ink-2);transition:.2s;position:relative}
.nav-links a:hover{color:var(--brand);background:#eef4ff}
.nav-links a.active{color:var(--brand)}
.nav-links a.active::after{content:'';position:absolute;left:15px;right:15px;bottom:2px;height:3px;border-radius:2px;background:var(--brand-grad)}
.btn{border-radius:11px;font-weight:700;font-size:14.5px;padding:10px 20px;transition:.22s;display:inline-flex;align-items:center;gap:7px;justify-content:center}
.btn-primary{background:var(--brand-grad);color:#fff;box-shadow:0 8px 20px -8px rgba(47,124,246,.8)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 26px -8px rgba(47,124,246,.9)}
.btn-ghost{background:transparent;color:var(--brand);border:1.5px solid rgba(47,124,246,.4)}
.btn-ghost:hover{background:#eef4ff}
.btn-orange{background:var(--brand-2);color:#fff;box-shadow:0 8px 20px -8px rgba(255,90,45,.7)}
.btn-orange:hover{transform:translateY(-1px)}
.menu-btn{display:none}

/* ===== Hero ===== */
.hero{position:relative;overflow:hidden;color:#fff;padding:76px 0 64px;background:
  radial-gradient(1100px 480px at 12% -10%,rgba(47,124,246,.5),transparent 60%),
  radial-gradient(900px 460px at 95% 10%,rgba(35,211,238,.35),transparent 55%),
  linear-gradient(150deg,#081021 0%,#0c1a38 45%,#132a5e 100%)}
.hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:26px 26px;opacity:.5;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;position:relative}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);padding:6px 14px;border-radius:100px;font-size:13px;font-weight:600;color:#cfe6ff;margin-bottom:22px}
.hero-badge .dot{width:8px;height:8px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 4px rgba(61,220,151,.2)}
.hero h1{font-size:clamp(30px,4.4vw,50px);line-height:1.18;font-weight:800;letter-spacing:.5px;margin-bottom:16px}
.hero h1 .grad{background:linear-gradient(90deg,#5fb0ff,#23d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{font-size:clamp(15px,1.6vw,18px);color:#b6c8e6;max-width:560px;margin-bottom:28px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}
.stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 18px}
.stat b{font-size:26px;font-weight:800;display:block;color:#fff}
.stat b i{font-style:normal;font-size:18px;color:#8fd0ff}
.stat span{font-size:13px;color:#9db4d8}
.hero-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:22px;padding:20px;backdrop-filter:blur(8px);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.hero-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.hero-card-top b{font-size:17px;display:flex;align-items:center;gap:8px}
.pill{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:100px}
.pill-ko{background:rgba(35,211,238,.18);color:#7deaff;border:1px solid rgba(35,211,238,.3)}
.pill-done{background:rgba(61,220,151,.16);color:#5be0a6;border:1px solid rgba(61,220,151,.3)}
.match-chip{border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.18);border-radius:13px;padding:12px 14px;margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.match-chip .tm{display:flex;align-items:center;gap:9px;font-weight:700}
.match-chip .vs{color:#5fb0ff;font-weight:700;font-size:13px}
.match-chip .sc{font-size:15px;font-weight:800;color:#fff}
.match-chip .tag-r{font-size:11px;color:#9db4d8;font-weight:600;margin-top:2px}
.badge-ico{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-size:17px}
.b-1{background:linear-gradient(135deg,#ffe08a,#ffb224)}
.b-2{background:linear-gradient(135deg,#cfd8e3,#9aa5b1)}
.b-3{background:linear-gradient(135deg,#e0a06a,#c67a3f)}

/* ===== 通用区块 ===== */
.section{padding:70px 0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:20px;flex-wrap:wrap}
.sec-title{font-size:clamp(24px,2.8vw,32px);font-weight:800;letter-spacing:.3px}
.sec-title em{font-style:normal;color:var(--brand)}
.sec-title .sub{display:block;font-size:14px;font-weight:500;color:var(--ink-3);margin-top:8px;letter-spacing:1px}
.more-link{color:var(--brand);font-weight:600;font-size:14.5px;display:inline-flex;align-items:center;gap:5px}
.more-link:hover{gap:9px}
.alt{background:#fff}

/* ===== 赛事卡片 ===== */
.event-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:22px}
.event-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.25s;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#d7e2ff}
.event-cover{height:150px;position:relative;background:var(--brand-grad);overflow:hidden}
.event-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(8,16,33,.55))}
.event-cover .cc{position:absolute;left:18px;right:18px;bottom:12px;z-index:2;color:#fff;display:flex;justify-content:space-between;align-items:flex-end}
.event-cover .cc .t{font-size:20px;font-weight:800;line-height:1.3;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.event-cover .cc .st{font-size:12px;font-weight:700;padding:3px 10px;border-radius:100px;background:rgba(255,255,255,.22);backdrop-filter:blur(4px)}
.event-cover .patt{position:absolute;inset:0;opacity:.25;background-image:radial-gradient(rgba(255,255,255,.7) 1.5px,transparent 1.5px);background-size:20px 20px}
.event-cov-1{background:linear-gradient(135deg,#2f7cf6,#6a4dff)}
.event-cov-2{background:linear-gradient(135deg,#ff5a2d,#ff8e3a)}
.event-cov-3{background:linear-gradient(135deg,#0ea5a4,#23d3ee)}
.event-cov-4{background:linear-gradient(135deg,#7c3aed,#c026d3)}
.event-body{padding:16px 18px;flex:1;display:flex;flex-direction:column;gap:10px}
.meta-row{display:flex;gap:14px;font-size:12.5px;color:var(--ink-3);flex-wrap:wrap}
.meta-row .mi{display:inline-flex;align-items:center;gap:4px}
.event-desc{font-size:13.5px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.event-tags{display:flex;gap:6px;flex-wrap:wrap}
.tag{font-size:11.5px;padding:2px 9px;border-radius:6px;background:#eef2ff;color:var(--brand);font-weight:600}
.tag.o{background:#fff1ec;color:var(--brand-2)}
.tag.g{background:#e9fbf2;color:#0c9d63}
.event-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px dashed var(--line);padding-top:11px}
.reg{font-size:13px;font-weight:700;color:var(--ink-2)}
.reg b{color:var(--brand);font-size:15px}
.btn-sm{font-size:13px;padding:7px 16px;border-radius:9px}
.medal-chip{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700}

/* ===== 奖牌榜 ===== */
.medal-section{background:
  radial-gradient(900px 400px at 100% -10%,rgba(47,124,246,.16),transparent 60%),
  linear-gradient(180deg,#0a1122,#101a33)}
.medal-section .sec-title, .medal-section .sec-title .sub{color:#fff}
.medal-section .sec-title .sub{color:#8fa3c6}
.medal-podium{display:grid;grid-template-columns:1fr 1.18fr 1fr;align-items:flex-end;gap:18px;max-width:760px;margin:0 auto 40px}
.podium-item{text-align:center}
.podium-pic{width:64px;height:64px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;font-size:24px;font-weight:800;color:#fff;border:3px solid}
.podium-item .nm{font-weight:800;color:#fff;font-size:16px}
.podium-item .tm{color:#8fa3c6;font-size:12.5px}
.podium-bar{margin-top:12px;border-radius:12px 12px 4px 4px;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:18px}
.rank-list{max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:8px}
.rank-row{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:11px 16px;color:#e7eefb}
.rank-row .no{font-weight:800;color:#7deaff;text-align:center}
.rank-row .no.gold{color:var(--gold)}
.rank-row .no.silver{color:var(--silver)}
.rank-row .no.bronze{color:var(--bronze)}
.rank-row .who{display:flex;align-items:center;gap:10px}
.rank-row .who .nm{font-weight:700}
.rank-row .who .cl{font-size:12px;color:#8fa3c6}
.rank-row .val{font-weight:800;color:#fff;font-size:16px}

/* ===== 动态 / 关于 ===== */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.feature-item{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line)}
.feature-item:last-child{border:none}
.feature-item .ic{width:44px;height:44px;flex:none;border-radius:12px;background:#eef4ff;display:grid;place-items:center;font-size:21px}
.feature-item b{font-size:16px;display:block;margin-bottom:2px}
.feature-item p{font-size:13.5px;color:var(--ink-2)}

/* ===== 咨询 / 联系 ===== */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;text-align:center;transition:.25s;box-shadow:var(--shadow)}
.contact-card:hover{transform:translateY(-4px)}
.contact-card .ic{width:58px;height:58px;margin:0 auto 14px;border-radius:16px;background:var(--brand-grad);display:grid;place-items:center;font-size:26px;color:#fff}
.contact-card h3{font-size:16px;margin-bottom:4px}
.contact-card p{font-size:14px;color:var(--ink-2)}

/* ===== 页脚 ===== */
.footer{background:var(--bg-deep);color:#9db0d0;padding:46px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px;margin-bottom:30px}
.footer .brand-name{color:#fff;font-size:19px}
.footer h4{color:#fff;font-size:15px;margin-bottom:14px}
.footer a{display:block;color:#9db0d0;font-size:13.5px;padding:4px 0}
.footer a:hover{color:#fff}
.footer .desc{font-size:13.5px;line-height:1.8;margin-top:12px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:18px;font-size:12.5px;color:#6b7d9e;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.qr{width:92px;height:92px;border-radius:10px;overflow:hidden;background:#fff;padding:5px;margin-top:6px}

/* ===== 加载/空态 ===== */
.loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:60px 0;color:var(--ink-3)}
.spinner{width:36px;height:36px;border-radius:50%;border:3px solid #e4e9f2;border-top-color:var(--brand);animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.empty{text-align:center;padding:52px 20px;color:var(--ink-3)}
.empty .e-ic{font-size:46px;margin-bottom:10px;opacity:.5}
.empty p{font-size:15px}
.error-box{background:#fff1ec;border:1px solid #ffd9c9;color:#b42318;border-radius:12px;padding:12px 16px;margin:16px 0;font-size:14px}

/* ===== 响应式 ===== */
@media(max-width:900px){
  .menu-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#eef4ff;font-size:20px}
  .nav-links{position:fixed;top:68px;left:0;right:0;flex-direction:column;background:#fff;padding:10px 16px 20px;border-bottom:1px solid var(--line);box-shadow:0 20px 40px -20px rgba(0,0,0,.2);display:none}
  .nav-links.open{display:flex}
  .nav-links a{width:100%;padding:13px 14px;font-size:16px}
  .nav-links a.active::after{display:none}
  .nav-links a.active{background:#eef4ff;border-radius:10px}
  .hero-grid{grid-template-columns:1fr;gap:30px}
  .two-col{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:560px){
  .hero-stats{grid-template-columns:repeat(3,1fr);gap:9px}
  .stat{padding:12px}
  .event-list{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .hero{padding:50px 0}
  .section{padding:52px 0}
}

/* ================= 全功能版新增样式 ================= */
/* 导航用户区 & 发布 */
.user-area{display:flex;align-items:center}
.user-chip{display:flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:100px;background:#eef4ff;font-weight:700;font-size:14px;color:var(--brand);transition:.2s}
.user-chip:hover{background:#e0edff}
.u-ava{width:30px;height:30px;border-radius:50%;background:var(--brand-grad);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}
.u-ava.big{width:64px;height:64px;font-size:28px}
.toast{position:fixed;top:84px;left:50%;transform:translateX(-50%) translateY(-16px);background:#101828;color:#fff;padding:11px 22px;border-radius:100px;font-size:14.5px;font-weight:600;opacity:0;pointer-events:none;transition:.28s;z-index:999;box-shadow:0 14px 34px -12px rgba(0,0,0,.4);max-width:88vw}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.err{background:#d92d20}
.btn-hero-ghost{background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.32)}
.btn-hero-ghost:hover{background:rgba(255,255,255,.18)}
.hero-search{display:flex;gap:8px;margin-top:20px;max-width:520px}
.hero-search input{flex:1;height:46px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff;padding:0 16px;font-size:14.5px;outline:none;backdrop-filter:blur(6px)}
.hero-search input::placeholder{color:#9db4d8}
.hero-search input:focus{border-color:var(--accent);background:rgba(255,255,255,.14)}

/* 九宫格模块 */
.module-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.module-item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 12px;text-align:center;transition:.22s;box-shadow:0 4px 14px -8px rgba(16,24,40,.1)}
.module-item:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d7e2ff}
.module-ic{width:54px;height:54px;margin:0 auto 10px;border-radius:15px;display:grid;place-items:center;font-size:26px;box-shadow:0 8px 18px -8px rgba(47,124,246,.5)}
.module-item b{display:block;font-size:15.5px;margin-bottom:3px}
.module-item span{font-size:11.5px;color:var(--ink-3);line-height:1.5;display:block}

/* 筛选条/工具栏 */
.filter-bar{display:flex;gap:7px;flex-wrap:wrap}
.fb-item{padding:7px 16px;border-radius:100px;font-size:13.5px;font-weight:600;color:var(--ink-2);background:#fff;border:1px solid var(--line);transition:.18s}
.fb-item:hover{border-color:var(--brand);color:var(--brand)}
.fb-item.active{background:var(--brand);border-color:var(--brand);color:#fff}
.list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap}
.search-inline{display:flex;gap:7px}
.search-inline input{height:36px;width:210px;border-radius:10px;border:1px solid var(--line);padding:0 13px;font-size:13.5px;outline:none}
.search-inline input:focus{border-color:var(--brand)}

/* ===== 全国区域筛选（省/市/区县三级联动，与小程序一致） ===== */
.region-bar{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 13px;margin:-8px 0 18px;flex-wrap:wrap}
.region-bar .rg-ico{font-size:15px}
.region-bar .rg-label{font-size:13px;color:var(--muted);font-weight:600;margin-right:2px}
.region-bar select{padding:7px 9px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:#333;background:#fafbfc;outline:none;max-width:190px;cursor:pointer;transition:.18s}
.region-bar select:hover:not(:disabled){border-color:#c9d8ff}
.region-bar select:focus{border-color:var(--brand);background:#fff}
.region-bar select:disabled{color:#c0c6d0;cursor:default}
.region-bar .rg-clear{border:none;background:#fff1f0;color:#e5533d;font-size:12.5px;padding:7px 11px;border-radius:8px;cursor:pointer;transition:.18s}
.region-bar .rg-clear:hover{background:#ffe3e0}

/* 模块卡片（约球/场馆/陪练/二手/商城/论坛通用） */
.mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.mod-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.22s;cursor:pointer;box-shadow:0 4px 14px -8px rgba(16,24,40,.1);display:flex;flex-direction:column}
.mod-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#d7e2ff}
.mc-cover{height:140px;overflow:hidden;position:relative;display:grid;place-items:center;font-size:44px}
.mc-cover img{width:100%;height:100%;object-fit:cover}
.mc-g1{background:linear-gradient(135deg,#2f7cf6,#6a4dff)}
.mc-g2{background:linear-gradient(135deg,#ff5a2d,#ff8e3a)}
.mc-g3{background:linear-gradient(135deg,#0ea5a4,#23d3ee)}
.mc-g4{background:linear-gradient(135deg,#7c3aed,#c026d3)}
.mc-body{padding:14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.mc-t{font-size:16px;line-height:1.4}
.mc-meta{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--ink-3);flex-wrap:wrap}
.mc-hot{color:var(--brand-2);font-weight:700}
.mc-desc{font-size:13px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mc-price-row{margin-top:auto;display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--line);padding-top:10px}
.mc-price{font-size:19px;font-weight:800;color:var(--brand-2)}
.v-badge{font-size:11px;background:#e9fbf2;color:#0c9d63;padding:1px 7px;border-radius:100px;font-weight:700;vertical-align:2px}
.top-badge{font-size:11px;background:#fff1ec;color:var(--brand-2);padding:2px 9px;border-radius:6px;font-weight:700;width:fit-content}

/* 详情 */
.detail-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)}
.d-title{font-size:24px;font-weight:800;margin:14px 0 10px;line-height:1.35}
.d-price{font-size:30px;font-weight:800;color:var(--brand-2);margin-bottom:10px}
.d-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:14px}
.d-photos img{border-radius:12px;max-height:220px;object-fit:cover;width:100%}
.det-meta{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0;font-size:14px;color:var(--ink-2)}
.det-intro{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:16px 20px;margin:14px 0;font-size:14.5px;color:#344054;line-height:1.9;white-space:pre-line}
.reg-block{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:16px 20px;margin-bottom:20px}
.reg-block b{display:block;margin-bottom:8px}
.reg-block>div{font-size:13.5px;color:var(--ink-2);white-space:pre-line}
.muted{color:var(--ink-3);font-size:13.5px}

/* 赛程块 */
.sched-block{margin-bottom:22px}
.sched-block h3{font-size:18px;margin-bottom:12px}
.match-list{display:flex;flex-direction:column;gap:9px}
.m-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px 16px}
.m-row{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px 16px}
.m-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.m-top b{font-size:15px}
.m-score{font-weight:800;font-size:18px}
.pill-win{font-size:10px;color:#0c9d63;background:#e9fbf2;padding:2px 8px;border-radius:100px;font-weight:700;vertical-align:2px}
.m-rounds{margin-top:10px;display:flex;flex-direction:column;gap:5px}
.m-round{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink-2);background:#f8fafc;padding:5px 10px;border-radius:8px}
.player-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.p-chip{font-size:12px;font-weight:700;padding:4px 11px;border-radius:100px;background:#f1f3f7;color:var(--ink-2)}
.p-chip.q{background:#e6f6ff;color:#0374c3}

/* 表单 */
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow)}
.form-card h3{font-size:19px;margin-bottom:16px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line);border-radius:10px;padding:10px 13px;font-size:14px;font-family:inherit;outline:none;transition:.18s;background:#fff}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(47,124,246,.12)}
.form-card .btn{margin-top:6px}
.login-card{margin:0 auto}
.order-ok{background:#e9fbf2;border:1px solid #b7ecd2;color:#0c9d63;border-radius:12px;padding:14px 18px;font-weight:600;margin-top:8px}

/* 论坛互动 */
.f-content{font-size:15.5px}
.forum-actions{display:flex;align-items:center;gap:16px;margin:16px 0}
.comments{border-top:1px solid var(--line);padding-top:16px}
.comments h3{font-size:16px;margin-bottom:12px}
.c-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.c-item{background:#f8fafc;border-radius:12px;padding:11px 14px}
.c-item b{font-size:13.5px;color:var(--brand)}
.c-item p{font-size:14px;margin:4px 0}
.c-time{font-size:11.5px;color:var(--ink-3)}
.c-input{display:flex;gap:8px}
.c-input input{flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 13px;font-size:14px;outline:none}
.c-input input:focus{border-color:var(--brand)}

/* 用户中心 */
.user-head{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 26px;margin-bottom:20px}
.user-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.ua-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;transition:.2s;cursor:pointer}
.ua-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d7e2ff}
.ua-card b{display:block;font-size:16px;margin-bottom:4px}
.ua-card span{font-size:13px;color:var(--ink-3)}

/* 订单 */
.order-list{display:flex;flex-direction:column;gap:12px}
.order-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.o-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.o-top b{font-size:16px}
.o-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;border-top:1px dashed var(--line);padding-top:10px}
.o-btns{display:flex;gap:8px}

/* 荣誉 */
.glory-list{display:flex;flex-direction:column;gap:12px}
.glory-row{display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;align-items:center}
.g-ic{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#f79009,#fbbf24);color:#fff;display:grid;place-items:center;font-size:22px;flex:none}
.g-ic.w{background:linear-gradient(135deg,#12b76a,#2dd4a0)}
.g-body{flex:1}
.g-body>b{font-size:16px}
.g-body>div{font-size:13px;margin-top:2px}

/* 头衔体系 */
.titles-row{display:flex;gap:12px;flex-wrap:wrap}
.title-chip{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;min-width:150px;opacity:.62}
.title-chip.on{border-color:var(--gold);background:linear-gradient(160deg,#fffbe9,#fff);opacity:1}
.title-chip b{display:block;font-size:15.5px;margin-bottom:2px}
.title-chip span{font-size:12.5px;color:var(--ink-3)}
.title-chip em{font-style:normal;display:block;font-size:12px;margin-top:6px;font-weight:700;color:var(--ink-3)}
.title-chip.on em{color:#b7791f}

/* 搜索结果 */
.search-hits{display:flex;flex-direction:column;gap:8px}
.hit{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 16px;transition:.18s}
.hit:hover{border-color:var(--brand)}
.hit b{font-size:14.5px}
.hit span{font-size:12.5px;color:var(--ink-3)}

/* 响应式补充 */
@media(max-width:900px){
  .module-grid{grid-template-columns:repeat(3,1fr)}
  .form-grid{grid-template-columns:1fr}
  .list-toolbar{flex-direction:column;align-items:stretch}
  .search-inline{width:100%}
  .search-inline input{flex:1;width:auto}
  .region-bar select{max-width:none;flex:1;min-width:0}
}
@media(max-width:560px){
  .module-grid{grid-template-columns:repeat(2,1fr)}
  .detail-card{padding:18px}
  .user-head{flex-wrap:wrap}
  .region-bar{gap:6px;padding:8px 10px}
  .region-bar .rg-label{display:none}
  .region-bar select{font-size:12.5px;padding:6px 6px}
}

/* 关于页 */
.about-p{font-size:15px;color:var(--ink-2);line-height:2;margin-bottom:18px}
.about-hero-card{background:linear-gradient(150deg,#0a1122,#16305e);border-radius:22px;padding:40px 34px;color:#fff;text-align:center;box-shadow:var(--shadow-lg)}
@media(max-width:560px){
  .wrap{padding:0 14px}
  .nav-inner{height:60px;gap:8px}
  .brand-logo{width:36px;height:36px;font-size:17px;border-radius:10px}
  .brand-name{font-size:17px}
  .brand-name small{display:none}
  .user-area .btn{padding:8px 12px;font-size:12.5px;border-radius:9px}
  .user-chip{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 10px 5px 5px;font-size:13px}
  .menu-btn{width:38px;height:38px;font-size:18px}
}
