/* YTNanny 4.3.1 - Stability CSS */

/* Score clarity */
.ytn-score-stack {
  display: grid;
  gap: 4px;
}
.ytn-score-stack .muted,
.ytn-score-note {
  color: #94a3b8 !important;
  font-size: 12px;
}

/* Keep forms/buttons clickable and visible */
button, a, input, select, textarea {
  pointer-events: auto;
}

/* Mobile: do not let desktop shell push content down */
@media (max-width: 768px) {
  html, body {
    width: 100% !important;
    overflow-x: hidden !important;
  }

  .main,
  .main-content,
  .admin-main,
  .portal-main,
  .content,
  .page-content,
  main {
    margin-left: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .page-header,
  .admin-page-header,
  .portal-page-header,
  .content-header {
    margin: 0 !important;
    padding: 18px 16px 14px !important;
    min-height: auto !important;
  }

  .page-body,
  .dashboard-content,
  .portal-content,
  .admin-content,
  .content-inner,
  .container,
  .container-fluid {
    padding: 14px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .login-page,
  .auth-page,
  .auth-shell,
  .login-shell {
    min-height: calc(100dvh - 72px) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: 18px 14px !important;
  }

  .login-card,
  .auth-card,
  .card.login-card {
    width: min(100%, 440px) !important;
    margin: 0 auto !important;
  }

  /* Only the Videos table becomes cards. No global table hijack. */
  .video-table-wrap table.video-table,
  .video-table-wrap table.video-table tbody,
  .video-table-wrap table.video-table tr,
  .video-table-wrap table.video-table td {
    display: block !important;
    width: 100% !important;
  }

  .video-table-wrap table.video-table thead {
    display: none !important;
  }

  .video-table-wrap table.video-table tr {
    margin: 0 0 14px !important;
    padding: 14px !important;
    border: 1px solid rgba(148,163,184,.25) !important;
    border-radius: 18px !important;
    background: rgba(15,23,42,.88) !important;
  }

  .video-table-wrap table.video-table td {
    border: 0 !important;
    padding: 7px 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .video-table-wrap table.video-table td:nth-child(1)::before { content: "ID: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(4)::before { content: "Final Risk: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(5)::before { content: "AI: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(6)::before { content: "Thumb AI: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(7)::before { content: "Status: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(8)::before { content: "Reason: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(9)::before { content: "Views: "; font-weight: 900; color: #94a3b8; }
  .video-table-wrap table.video-table td:nth-child(10)::before { content: "Scanned: "; font-weight: 900; color: #94a3b8; }

  .video-table-wrap table.video-table img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
  }

  .video-table-wrap table.video-table td:last-child {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .channel-modal-card,
  .ytn-modal-card,
  .video-modal-card,
  .modal-card {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  .channel-modal-body,
  .ytn-modal-body,
  .video-modal-body,
  .modal-body {
    max-height: calc(100dvh - 96px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}
