/* 夜遇榜单视觉覆盖：保持原有数据和交互，补齐 yeyu.ai 的工作台层级 */
body {
  background:
    radial-gradient(860px 420px at 74% -5%, rgba(250, 189, 47, .12), transparent 66%),
    var(--v2-bg-primary);
}
.layout { position: relative; }
.layout::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .12;
  background-image: linear-gradient(rgba(235,219,178,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(235,219,178,.035) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 76%);
}
.sidebar {
  background: rgba(40, 40, 40, .92);
  box-shadow: 16px 0 48px rgba(0,0,0,.2);
  border-right-color: rgba(235,219,178,.18);
}
.logo { padding-top: 7px; }
.nav a { transition: transform .16s ease, background .16s ease, color .16s ease; }
.nav a:hover { transform: translateX(2px); }
.nav a.active {
  box-shadow: inset 2px 0 var(--v2-text-link), 0 0 0 1px rgba(250,189,47,.04);
}
.guest-box { border: 1px solid rgba(235,219,178,.1); }
.main { position: relative; max-width: 1680px; }
.rank-tabs {
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(235,219,178,.1);
}
.rank-tabs button.tab.active {
  background: rgba(250,189,47,.12);
  border-color: rgba(250,189,47,.26);
  color: var(--v2-text-primary);
}
.searchbar {
  position: sticky;
  top: 0;
  z-index: 5;
  padding: 12px 0 10px;
  margin: 0 -2px 13px;
  background: linear-gradient(var(--v2-bg-primary) 72%, transparent);
  backdrop-filter: blur(12px);
}
.searchbar input, .searchbar select {
  box-shadow: inset 0 1px rgba(255,255,255,.035);
}
.searchbar input:focus { border-color: var(--v2-text-link); box-shadow: 0 0 0 3px rgba(250,189,47,.1); }
.hero {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(235,219,178,.14);
  background:
    radial-gradient(500px 160px at 100% 0, rgba(250,189,47,.14), transparent 75%),
    var(--v2-bg-card);
}
.hero::after {
  content: "";
  position: absolute;
  right: -50px;
  bottom: -100px;
  width: 250px;
  height: 250px;
  border: 1px solid rgba(250,189,47,.14);
  border-radius: 50%;
  box-shadow: 0 0 0 18px rgba(250,189,47,.035), 0 0 0 38px rgba(250,189,47,.02);
  pointer-events: none;
}
.hero .stats { position: relative; z-index: 1; }
.grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.card {
  border: 1px solid rgba(235,219,178,.12);
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.card:hover {
  transform: translateY(-4px);
  border-color: rgba(250,189,47,.42);
  box-shadow: 0 16px 34px rgba(0,0,0,.3), 0 0 0 1px rgba(250,189,47,.08);
}
.card .cover { aspect-ratio: 1.34; background: linear-gradient(135deg, #504945, #282828); }
.card .cover img { background: linear-gradient(135deg, #504945, #282828); }
.card .cover img.broken { display: none; }
.card .cover:has(img.broken)::after {
  content: "封面暂缺";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--v2-text-tertiary);
  font-size: 12px;
  background: linear-gradient(135deg, rgba(80,73,69,.9), rgba(40,40,40,.95));
}
.heat-badge { border: 1px solid rgba(235,219,178,.18); backdrop-filter: blur(8px); }
.promo-badge { box-shadow: 0 4px 10px rgba(0,0,0,.18); }
.card-body { padding: 12px 14px 14px; }
.card-title { color: #f2e8c8; }
.card-sum { color: #c5b899; }
.card-foot { border-top: 1px solid rgba(235,219,178,.08); padding-top: 10px; }
.dl-btn { transition: border-color .16s ease, color .16s ease, background .16s ease; }
.dl-btn:hover { border-color: var(--v2-text-link); }
.load-more { padding-top: 31px; }

@media (max-width: 960px) {
  .main { padding: 12px 14px 52px; }
  .searchbar { margin-inline: 0; }
  .hero { padding: 20px 18px; }
}
@media (max-width: 520px) {
  .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .card-body { padding: 9px 10px 11px; }
  .card-title { font-size: 13px; }
  .card-sum { font-size: 11px; min-height: 34px; }
  .card-stats { display: none; }
  .author { max-width: 56%; }
  .dl-btn { padding-inline: 7px; }
}
@media (max-width: 360px) {
  .grid { grid-template-columns: 1fr; }
}

/* Explore shell parity with yeyu.ai: compact header, wider board, mobile dock */
.yy-mobile-topbar,.yy-mobile-nav{display:none}
.main{max-width:1600px;padding-inline:clamp(16px,3vw,44px)}
.rank-tabs{position:relative;align-items:center;gap:4px;padding:2px 0 10px}
.rank-tabs::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid var(--v2-text-link);border-top:2px solid var(--v2-text-link);transform:rotate(45deg);opacity:.75}
.rank-tabs button.tab{padding:7px 12px}
.searchbar{max-width:1050px;margin-inline:auto;margin-bottom:16px}
.hero{max-width:1050px;margin:0 auto 20px;padding:18px 22px}
.hero .big{font-size:20px}.hero .sub{font-size:12.5px}.hero .stats{gap:16px}
.grid{max-width:1400px;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:18px}
.card{border-radius:12px}.card .cover{aspect-ratio:1.28}
.card-title{font-size:14px}.card-sum{font-size:12px;min-height:38px}
.result-line{max-width:1400px;margin-inline:auto}
@media (max-width: 700px) {
  body{padding-bottom:68px}
  .sidebar{display:none}
  .main{padding:0 10px 34px}
  .yy-mobile-topbar{display:flex;align-items:center;gap:8px;height:54px;position:sticky;top:0;z-index:10;background:rgba(40,40,40,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(235,219,178,.12)}
  .yy-back,.yy-mobile-action{display:grid;place-items:center;width:34px;height:34px;border:0;background:transparent;color:var(--v2-text-secondary);padding:0}
  .yy-back svg,.yy-mobile-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .yy-mobile-search{display:flex;align-items:center;gap:7px;flex:1;min-width:0;border:1px solid rgba(235,219,178,.15);background:#232323;border-radius:9px;padding:0 10px;color:var(--v2-text-tertiary)}
  .yy-mobile-search svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .yy-mobile-search input{width:100%;border:0;outline:0;background:transparent;color:var(--v2-text-primary);padding:8px 0;font-size:12px}
  .rank-tabs{margin:0 -2px;padding:10px 2px 8px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;scrollbar-width:none}
  .rank-tabs::-webkit-scrollbar{display:none}.rank-tabs::after{display:none}.rank-tabs button.tab{flex:none;font-size:12px;padding:6px 11px}
  .searchbar{display:none}
  .hero{border-radius:10px;padding:14px;margin:0 0 12px;display:block}
  .hero .big{font-size:17px}.hero .sub{font-size:11px;line-height:1.5;margin-top:3px}.hero .stats{display:none}
  .result-line{font-size:11px;margin:0 3px 8px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .card{border-radius:9px}.card .cover{aspect-ratio:1.06}
  .card-body{padding:8px 9px 10px}.card-title{font-size:12px;line-height:1.3}.card-sum{font-size:10.5px;line-height:1.45;min-height:31px}
  .card-stats{display:none}.card-foot{padding-top:7px}.author{font-size:10px;max-width:52%}.author .dot{width:16px;height:16px;flex-basis:16px;font-size:9px}.dl-btn{font-size:10px;padding:4px 7px}
  .heat-badge,.promo-badge{font-size:9px;padding:3px 5px;top:6px}.promo-badge{left:6px}.heat-badge{right:6px}
  .yy-mobile-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 4px 6px;border:1px solid rgba(235,219,178,.14);border-radius:18px;background:rgba(42,40,42,.96);box-shadow:0 10px 28px rgba(0,0,0,.38);backdrop-filter:blur(16px)}
  .yy-mobile-nav a{display:grid;place-items:center;gap:2px;color:var(--v2-text-tertiary);font-size:9px}.yy-mobile-nav a.active{color:var(--v2-text-link)}.yy-mobile-nav svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
}
