@media (max-width: 1180px) {
  .top2-nav { gap: 12px; font-size: 14px; }
  .top2-player-shell { grid-template-columns: 1fr; }
  .top2-now-playing { display: none; }
  .top2-rank-layout { grid-template-columns: 1fr; }
  .top2-topic-row { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
  body { background: radial-gradient(circle at 20% -6rem, rgba(229, 9, 20, .22), transparent 18rem), #050505; }
  .top2-container { width: min(100% - 24px, 720px); }
  .top2-page { padding-top: 54px; padding-bottom: 72px; }
  .top2-reference-home { margin-top: -54px; }
  .top2-header { background: rgba(3,3,3,.98); }
  .top2-header .top2-container { padding: 0 12px; }
  .top2-header-inner { min-height: 54px; gap: 8px; overflow: hidden; }
  .top2-logo { min-width: 0; }
  .top2-wordmark-logo { width: 92px; }
  .top2-nav { display: none; }
  .top2-mobile-more.top2-h5-only { display: inline-flex; flex: 0 0 auto; gap: 4px; color: #fff; }
  .top2-mobile-more::before { content: "⌄"; font-size: 14px; line-height: 1; transform: translateY(-1px); }
  .top2-mobile-actions.top2-h5-only { display: flex; flex: 0 0 auto; gap: 4px; }
  .top2-mobile-action { width: 25px; height: 32px; min-width: 25px; font-size: 12px; color: #fff; }
  .top2-mobile-action:hover, .top2-mobile-action:focus-visible, .top2-mobile-more:hover, .top2-mobile-more:focus-visible { background: rgba(255,255,255,.08); }
  .top2-mobile-client { min-height: 34px; padding: 0 11px; font-size: 12px; }
  .top2-header-actions { display: none; }
  .top2-search-trigger { min-width: auto; width: 42px; padding: 0; overflow: hidden; text-indent: -999px; position: relative; }
  .top2-search-trigger::after { content: "搜"; position: absolute; inset: 0; display: grid; place-items: center; text-indent: 0; color: #fff; }
  .top2-menu-trigger.top2-h5-only { display: inline-flex; }
  .top2-hero { padding: 0 0 8px; }
  .top2-home-spotlight .top2-container { width: 100%; }
  .top2-hero-slider { grid-auto-columns: 100%; gap: 0; }
  .top2-hero-card { min-height: 252px; border-radius: 0; background-position: center top; box-shadow: inset 0 -150px 120px rgba(0,0,0,.90), inset 0 70px 60px rgba(0,0,0,.35); }
  .top2-hero-copy { width: 100%; padding: 118px 16px 18px; }
  .top2-home-spotlight .top2-hero-card { min-height: 560px; background-position: center; }
  .top2-home-spotlight .top2-hero-copy { width: 100%; margin-left: 0; padding: 330px 16px 24px; }
  .top2-kicker { min-height: 24px; padding: 0 8px; font-size: 12px; letter-spacing: 0; }
  .top2-hero h1 { max-width: 92%; margin: 9px 0 7px; font-size: 26px; line-height: 1.05; letter-spacing: -.04em; }
  .top2-hero p { max-width: 92%; min-height: 0; margin: 0 0 12px; font-size: 13px; line-height: 1.45; -webkit-line-clamp: 2; }
  .top2-hero-actions { gap: 10px; }
  .top2-hero-actions .top2-btn { flex: 0 0 auto; min-height: 39px; border-radius: 999px; padding: 0 18px; }
  .top2-section { padding: 16px 0; }
  .top2-section-title { font-size: 20px; }
  .top2-announcement { padding-top: 10px; }
  .top2-announcement-list { gap: 9px; }
  .top2-announcement-item { border-radius: 4px; }
  .top2-announcement-toggle { min-height: 47px; padding: 0 10px; font-size: 14px; }
  .top2-announcement-rich { padding: 4px 12px 15px; font-size: 13px; line-height: 1.62; }
  .top2-announcement-rich h2 { font-size: 17px; }
  .top2-announcement-links a { flex: 1 1 auto; text-align: center; }
  .top2-hot-track { grid-auto-columns: 88vw; gap: 12px; }
  .top2-hot-slide { grid-template-columns: 112px minmax(0, 1fr); min-height: 160px; border-radius: 12px; padding: 8px; }
  .top2-hot-copy strong { font-size: 15px; }
  .top2-hot-copy p { -webkit-line-clamp: 4; font-size: 12px; line-height: 1.55; }
  .top2-grid, .top2-poster-row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
  .top2-shelf .top2-poster-row[data-top2-carousel] { grid-template-columns: none; grid-auto-columns: minmax(136px, 42vw); gap: 10px; margin-right: -12px; padding-right: 12px; }
  .top2-card { border-radius: 12px; }
  .top2-card-body { min-height: 56px; padding: 8px; }
  .top2-card-title { font-size: 13px; }
  .top2-meta { font-size: 12px; }
  .top2-card-play { display: none; }
  .top2-card-badge { bottom: 48px; font-size: 11px; }
  .top2-detail { grid-template-columns: 108px 1fr; gap: 14px; padding: 20px 0; }
  .top2-detail-poster-wrap .top2-poster { border-radius: 14px; }
  .top2-detail-play { min-height: 36px; padding: 0 10px; }
  .top2-detail-main h1 { font-size: 25px; }
  .top2-score-row strong { font-size: 28px; }
  .top2-rating-row { display: none; }
  .top2-synopsis { font-size: 14px; }
  .top2-source-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px; }
  .top2-source-tab { flex: 0 0 auto; }
  .top2-episode-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
  .top2-episode { min-height: 38px; border-radius: 10px; padding: 8px 6px; font-size: 13px; }
  .top2-play-detail { grid-template-columns: 112px minmax(0, 1fr); gap: 14px; margin-bottom: 22px; }
  .top2-play-detail-copy h1 { font-size: 28px; }
  .top2-play-detail-copy h3 { font-size: 16px; }
  .top2-current-play h2 { font-size: 24px; }
  .top2-player { border-radius: 14px; }
  .top2-play-tools { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 7px; }
  .top2-play-tools button { min-height: 36px; padding: 0 5px; font-size: 12px; }
  .top2-topic-row { grid-template-columns: repeat(2, 1fr); }
  .top2-news-list { grid-template-columns: 1fr; }
  .top2-fact-list ul { grid-template-columns: 1fr; }
  .top2-drawer-card { width: 100%; border-left: 0; padding: 18px 14px 90px; }
  .top2-drawer-search { grid-template-columns: auto minmax(0, 1fr) 58px; min-height: 54px; }
  .top2-search-type-trigger { min-height: 52px; padding-left: 16px; font-size: 14px; }
  .top2-drawer-search input { height: 52px; font-size: 14px; }
  .top2-search-submit { min-height: 54px; font-size: 16px; }
  .top2-notice-modal { align-items: end; padding: 12px; }
  .top2-notice-card { max-height: 78vh; overflow-y: auto; border-radius: 22px 22px 16px 16px; padding: 18px; }
  .top2-notice-links { gap: 8px; }
  .top2-notice-links a { flex: 1 1 auto; text-align: center; }
  .top2-float-actions { right: 9px; bottom: 82px; gap: 8px; }
  .top2-float-actions button { width: 34px; height: 34px; font-size: 12px; }
  .top2-bottom-nav.top2-h5-only { position: fixed; left: 0; right: 0; bottom: 0; width: 100vw; z-index: 90; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); overflow: hidden; background: rgba(9,9,9,.98); border-top: 1px solid rgba(255,255,255,.10); backdrop-filter: blur(16px); }
  .top2-bottom-nav a { min-width: 0; min-height: 58px; border: 0; background: transparent; color: rgba(255,255,255,.74); display: grid; place-items: center; font-size: 12px; }
  .top2-bottom-nav a:first-child { color: var(--top2-accent); font-weight: 800; }
}

@media (max-width: 430px) {
  .top2-grid, .top2-poster-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .top2-shelf .top2-poster-row[data-top2-carousel] { grid-template-columns: none; grid-auto-columns: minmax(132px, 44vw); }
  .top2-detail { grid-template-columns: 96px 1fr; }
  .top2-topic-row { grid-template-columns: 1fr; }
}
