:root { --brand:#ff5a1f; --brand-d:#e5470f; --ink:#1a1a1a; --muted:#6b7280; --line:#ececec; --bg:#f6f7f9; }
* { box-sizing:border-box; margin:0; padding:0; }
body { font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; color:var(--ink); background:var(--bg); line-height:1.6; }
a { color:inherit; text-decoration:none; }
.wrap { max-width:1120px; margin:0 auto; padding:0 16px; }
.muted { color:var(--muted); }

/* 顶栏 */
.topbar { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:50; }
.topbar-inner { display:flex; align-items:center; gap:20px; height:60px; }
.logo { font-size:22px; font-weight:800; color:var(--brand); }
.logo span { font-size:13px; color:var(--muted); font-weight:600; margin-left:6px; }
.nav { display:flex; gap:18px; margin-left:12px; }
.nav a { color:var(--ink); font-weight:600; font-size:15px; }
.nav a:hover { color:var(--brand); }
.btn-host { margin-left:auto; background:var(--brand); color:#fff; padding:9px 20px; border-radius:999px; font-weight:700; font-size:15px; transition:.2s; }
.btn-host:hover { background:var(--brand-d); transform:translateY(-1px); }

/* 通用区块 */
section { margin:28px 0; }
.sec-head { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px; }
.sec-head h2 { font-size:20px; }
.sec-head .more { color:var(--brand); font-size:14px; }

/* Hero 搜索 */
.hero { background:linear-gradient(135deg,#ff7a3d,#ff5a1f); color:#fff; border-radius:16px; padding:36px 28px; margin-top:22px; }
.hero h1 { font-size:28px; font-weight:800; }
.hero p { opacity:.95; margin-top:8px; }
.hero .search { margin-top:18px; display:flex; gap:10px; max-width:560px; }
.hero input { flex:1; padding:12px 16px; border:none; border-radius:10px; font-size:15px; }
.hero .go { background:#fff; color:var(--brand); border:none; padding:0 22px; border-radius:10px; font-weight:700; cursor:pointer; }

/* 分类 chips */
.chips { display:flex; flex-wrap:wrap; gap:10px; }
.chip { background:#fff; border:1px solid var(--line); padding:8px 16px; border-radius:999px; font-size:14px; font-weight:600; }
.chip:hover { border-color:var(--brand); color:var(--brand); }

/* 卡片网格 */
.grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.card { background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; transition:.2s; display:flex; flex-direction:column; }
.card:hover { box-shadow:0 8px 24px rgba(0,0,0,.08); transform:translateY(-2px); }
.card .cover { position:relative; aspect-ratio:16/9; background:linear-gradient(135deg,#ffd9c2,#ffe9d6); }
.card .cover img { width:100%; height:100%; object-fit:cover; }
.card .ph { width:100%; height:100%; }
.badge { position:absolute; left:10px; bottom:10px; background:rgba(0,0,0,.6); color:#fff; font-size:12px; padding:3px 10px; border-radius:999px; }
.feat { position:absolute; right:10px; top:10px; background:var(--brand); color:#fff; font-size:12px; padding:3px 10px; border-radius:999px; }
.card-body { padding:14px 16px; }
.card-body h3 { font-size:16px; line-height:1.4; }
.card-body .meta { color:var(--muted); font-size:13px; margin-top:8px; }

/* 榜单 */
.rank { background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.rank li { display:flex; align-items:center; gap:12px; padding:12px 16px; border-bottom:1px solid var(--line); }
.rank li:last-child { border-bottom:none; }
.rank .no { width:24px; height:24px; flex:none; border-radius:50%; background:var(--bg); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; }
.rank .no.top { background:var(--brand); color:#fff; }
.rank .t { flex:1; font-weight:600; }
.rank .v { color:var(--muted); font-size:13px; }

/* 详情页 */
.detail-hero { background:#fff; border:1px solid var(--line); border-radius:16px; overflow:hidden; margin-top:22px; }
.detail-hero img { width:100%; max-height:360px; object-fit:cover; }
.detail-body { padding:24px; }
.detail-body h1 { font-size:26px; }
.detail-stats { display:flex; gap:24px; color:var(--muted); margin:14px 0; flex-wrap:wrap; }
.schedule { background:var(--bg); border-radius:12px; padding:16px; margin:16px 0; }
.schedule div { display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px dashed var(--line); }
.schedule div:last-child { border-bottom:none; }
.rich { line-height:1.8; }
.rich img { max-width:100%; }
.cta-row { display:flex; gap:12px; margin-top:20px; }
.btn-primary { background:var(--brand); color:#fff; padding:12px 28px; border-radius:10px; font-weight:700; }
.btn-ghost { border:1px solid var(--brand); color:var(--brand); padding:12px 28px; border-radius:10px; font-weight:700; }

/* 筛选条 */
.filters { display:flex; flex-wrap:wrap; gap:12px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:12px; padding:14px 16px; }
.filters select, .filters input { padding:9px 12px; border:1px solid var(--line); border-radius:8px; font-size:14px; }
.filters .grow { flex:1; min-width:180px; }

/* 资讯 */
.news-item { background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px; display:flex; gap:16px; margin-bottom:14px; }
.news-item img { width:140px; height:90px; object-fit:cover; border-radius:8px; flex:none; }
.news-item h3 { font-size:17px; }
.news-item .summary { color:var(--muted); font-size:14px; margin-top:6px; }

.state { text-align:center; color:var(--muted); padding:40px 0; }

@media (max-width:860px){ .grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .grid { grid-template-columns:1fr; } .nav { display:none; } .hero h1 { font-size:22px; } .news-item img { width:90px; height:60px; } }
