@media (max-width: 760px) {
  body { min-width: 0; font-size: 14px; overflow-x: hidden; }
  header { height: 56px; gap: 12px; padding: 0 12px; }
  .brand { min-width: 0; font-size: 16px; overflow: hidden; text-overflow: ellipsis; }
  header nav { display: none; }
  #account { margin-left: auto; }
  .login { padding: 7px 10px; font-size: 12px; }
  main { width: 100%; padding: 12px; }
  .crumb { display: none; }
  .hero { margin: -12px -12px 20px; padding: 30px 20px; border-radius: 0 0 14px 14px; }
  .hero h1 { font-size: 27px; }
  .hero p { margin-bottom: 0; }
  .video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .cover { font-size: 24px; margin-bottom: 6px; }
  .video-card { min-width: 0; }
  .video-card h3 { margin: 0; font-size: 14px; line-height: 1.4; }
  .watch-grid { grid-template-columns: minmax(0, 1fr); border-radius: 7px; }
  .danmaku-list { border-left: 0; border-top: 1px solid #e3e5e7; max-height: 260px; }
  .video-info, .comments { margin-top: 12px; padding: 16px; border-radius: 7px; }
  .video-info h1 { font-size: 18px; line-height: 1.4; }
  .comment-head { flex-wrap: wrap; gap: 7px; }
  .comment-head h2 { width: 100%; margin: 0 0 2px; font-size: 18px; }
  .composer { gap: 8px; align-items: flex-start; }
  .composer .avatar { width: 34px; height: 34px; font-size: 13px; }
  .composer textarea { min-width: 0; height: 72px; }
  .composer > button { padding: 8px 10px; }
  .comment { gap: 9px; padding: 13px 0; }
  .comment .avatar { width: 34px; height: 34px; }
  .meta { gap: 11px; flex-wrap: wrap; }
  .replies { margin-left: -2px; margin-right: -2px; padding: 0 9px; }
  .pagination { gap: 4px; overflow-x: auto; justify-content: flex-start; }
  .dialog { width: min(350px, calc(100vw - 28px)); padding: 22px 18px; }
  .admin-grid { grid-template-columns: 1fr; gap: 14px; }
  .admin section, .admin-panel { padding: 14px; }
  .admin-tabs { overflow-x: auto; padding-bottom: 3px; }
  .admin-tabs button { flex: none; }
  .video-form { padding: 14px; }
  .admin-row { align-items: flex-start; gap: 8px; }
  .admin-row span { white-space: normal; }
  .cover-preview { width: 100%; }
}

@media (max-width: 390px) {
  .video-grid { grid-template-columns: 1fr; }
  .brand { max-width: 160px; }
}

/* 手机播放页：优先保证播放、发送和列表阅读的触控体验。 */
@media (max-width: 760px) {
  .player-wrap { border-radius: 8px; }
  .watch-grid { gap: 10px; background: transparent; overflow: visible; }
  .controls { min-height: 46px; padding: 0 9px; gap: 7px; }
  .controls button { min-width: 28px; min-height: 36px; }
  .sendbar { min-height: 46px; padding: 5px 7px; }
  .sendbar input:not([type=range]) { min-width: 0; font-size: 13px; }
  .sendbar > button:last-of-type { min-height: 34px; padding: 7px 12px; }
  .danmaku-list { max-height: 220px !important; border: 1px solid #e3e5e7; border-radius: 8px; }
  .side-title { min-height: 42px; }
  .danmaku-table-head, .danmaku-item { grid-template-columns: 47px minmax(0, 1fr) 61px !important; }
  .danmaku-item { min-height: 37px; }
  .related-video-pages { margin-top: 12px !important; }
  .related-video-list { max-height: 290px !important; }
  .related-video-card { padding: 9px 2px !important; }
  .related-cover { width: 120px !important; height: 68px !important; }
  .related-copy b { font-size: 14px !important; }
  .related-copy small { font-size: 12px !important; }
  .video-info, .comments { box-shadow: 0 1px 3px #00000008; }
  .comments { padding-bottom: 22px; }
  .composer { margin: 14px 0 20px; }
}
