:root{--red:#DE0303;--red-dark:#A30000;--red-light:#FFF1F1;--ink:#1F2329;--gray:#646A73;--gray-light:#9A9A9A;--line:#EAEAEA;--bg:#F5F5F5;}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.wrap{width:80%;max-width:1600px;margin:0 auto}
/* ===== 内页红底头部 ===== */
.header-red{background:linear-gradient(90deg,var(--red-dark),var(--red));color:#fff;position:relative;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.header-red-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px;padding:0 10%}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;cursor:pointer}
.brand img{height:42px;width:auto}
.brand b{font-size:24px;color:#fff;letter-spacing:2px}
.header-red .nav{display:flex;gap:2px;flex:1;justify-content:center}
.header-red .nav a{padding:8px 14px;font-size:15px;color:rgba(255,255,255,.92);border-radius:6px;cursor:pointer;transition:color .2s,background .2s;white-space:nowrap}
.header-red .nav a:hover,.header-red .nav a.on{color:#fff;background:rgba(255,255,255,.16)}
.header-red .nav a.on{font-weight:600}
.hero-user{display:flex;align-items:center;gap:10px;flex-shrink:0}
.hero-user a{color:#fff;font-size:14px;padding:6px 16px;border:1px solid rgba(255,255,255,.6);border-radius:18px;cursor:pointer;transition:background .2s;white-space:nowrap}
.hero-user a.reg{background:#fff;color:var(--red);border-color:#fff;font-weight:600}
.burger{display:none;background:none;border:1px solid rgba(255,255,255,.6);border-radius:6px;padding:8px 10px;color:#fff;font-size:16px;cursor:pointer}
/* ===== 面包屑 ===== */
.crumb{font-size:13px;color:var(--gray);padding:14px 0 4px}
.crumb a:hover{color:var(--red)}
.crumb b{color:var(--ink);font-weight:500}
/* ===== 筛选条 ===== */
.filter{background:#fff;border-radius:8px;padding:12px 16px;margin-bottom:16px;box-shadow:0 1px 6px rgba(0,0,0,.06);display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.filter .f-item{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px}
.filter .f-item:hover{border-color:var(--red);color:var(--red)}
.filter .f-item.on{border-color:var(--red);color:var(--red);background:var(--red-light)}
.filter .f-input{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;padding:5px 10px}
.filter .f-input input{border:none;outline:none;width:78px;font-size:13px;background:none}
.filter .f-input.kw{width:200px}
.filter .f-input.kw input{width:100%}
.filter .sort{margin-left:auto;font-size:13px;color:var(--gray);display:flex;gap:14px}
.filter .sort a{cursor:pointer}
.filter .sort a.on{color:var(--red);font-weight:600}
/* ===== 行卡片 ===== */
.row-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.06);display:flex;gap:16px;padding:14px;margin-bottom:14px;transition:box-shadow .2s}
.row-card:hover{box-shadow:0 8px 20px rgba(0,0,0,.12)}
.row-card .thumb{width:240px;height:auto;aspect-ratio:3/2;border-radius:6px;overflow:hidden;flex-shrink:0;background:#f2f3f5;position:relative}
.row-card .thumb img{width:100%;height:100%;object-fit:cover}
.row-card .thumb .empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#c9cdd4;font-size:12px}
.row-card .thumb .flag{position:absolute;left:8px;top:8px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;padding:2px 8px;border-radius:4px}
.row-card .info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.row-card .info h3{font-size:17px;font-weight:600;line-height:1.4}
.row-card .info h3:hover{color:var(--red)}
.row-card .tags{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}
.row-card .tags span{font-size:11px;color:var(--red);border:1px solid var(--line);background:var(--red-light);padding:1px 8px;border-radius:4px}
.row-card .meta{font-size:12px;color:var(--gray);margin-top:6px;line-height:1.7}
.row-card .bottom{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:12px}
.row-card .price{color:var(--red);font-size:22px;font-weight:700}
.row-card .price i{font-style:normal;font-size:12px;font-weight:400;color:var(--gray)}
.row-card .btns{display:flex;gap:8px;flex-shrink:0}
.btn{display:inline-block;background:var(--red);color:#fff;border:none;padding:8px 20px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s;text-align:center}
.btn:hover{background:var(--red-dark)}
/* ===== 分页 ===== */
.pager{display:flex;justify-content:center;gap:8px;padding:18px 0 8px;flex-wrap:wrap}
.pager a{min-width:34px;height:34px;line-height:34px;text-align:center;background:#fff;border-radius:6px;font-size:13px;box-shadow:0 1px 4px rgba(0,0,0,.06);padding:0 8px}
.pager a:hover{color:var(--red)}
.pager a.on{background:var(--red);color:#fff}
.pager a.off{background:#f2f3f5;color:#c0c4cc;box-shadow:none;cursor:default}
.pager a.off:hover{color:#c0c4cc}
.pager a.sep{background:none;box-shadow:none;cursor:default;color:#999;min-width:20px;padding:0 4px}
.empty{background:#fff;border-radius:8px;padding:60px;text-align:center;color:var(--gray);font-size:13px}
/* ===== 底部 ===== */
.footer{margin-top:34px;background:#2B2B2B;color:#B5B5B5}
.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;padding:36px 0 24px}
.fbrand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.fbrand img{height:34px}
.fbrand b{font-size:20px;color:#fff}
.footer p{font-size:13px;line-height:2}
.footer h4{color:#fff;font-size:15px;margin-bottom:10px}
.footer h4 a{display:block;font-size:13px;color:#B5B5B5;font-weight:400;margin-bottom:6px;cursor:pointer}
.footer h4 a:hover{color:#fff}
.fcols{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.footer-bottom{border-top:1px solid #3D3D3D;padding:14px 0;text-align:center;font-size:12px;color:#8A8A8A}
.footer-bottom a{margin:0 8px;cursor:pointer;color:#8A8A8A}
.footer-bottom a:hover{color:#fff}
@media (max-width:1024px){
  .wrap{width:92%}
  .header-red .nav{display:none;position:absolute;top:72px;left:0;right:0;background:rgba(122,0,0,.97);flex-direction:column;padding:8px 16px 16px;z-index:40}
  .header-red .nav.open{display:flex}
  .header-red .burger{display:block}
  .row-card .thumb{width:180px}
}
@media (max-width:768px){
  .wrap{width:94%}
  .row-card{flex-direction:column}
  .row-card .thumb{width:100%}
  .filter .sort{width:100%;justify-content:flex-start}
  .filter .f-input.kw{width:100%}
  .footer-main{grid-template-columns:1fr;gap:20px}
}