/*
 * User Visual Design User Shell — Phase 3D.2.1
 * Shared user-facing page structure contract. This file provides prefixed,
 * opt-in layout classes and Phase 3D.2.1 simple-page bridges; theme files own final appearance.
 */

.uvd-user-page {
  direction: rtl;
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
  color: var(--uvd-user-text, var(--uvd-text, #1f2937));
  min-width: 0;
}

.uvd-user-shell {
  width: min(var(--uvd-user-shell-max, 1040px), calc(100% - var(--uvd-user-shell-gutter, 32px)));
  margin: var(--uvd-user-shell-margin-y, 24px) auto;
  padding: var(--uvd-user-shell-padding, 24px);
  box-sizing: border-box;
  border-radius: var(--uvd-user-shell-radius, var(--uvd-radius-xl, 22px));
  border: 1px solid var(--uvd-user-shell-border, transparent);
  background: var(--uvd-user-shell-bg, transparent);
  box-shadow: var(--uvd-user-shell-shadow, none);
  min-width: 0;
}

.uvd-user-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 18px;
  min-width: 0;
}

.uvd-user-page-head__copy,
.uvd-user-page-copy {
  min-width: 0;
}

.uvd-user-title {
  margin: 0;
  font-family: var(--uvd-font-display, var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif));
  font-size: clamp(22px, 3.2vw, 34px);
  line-height: 1.45;
  color: var(--uvd-user-title, var(--uvd-text-strong, #111827));
  overflow-wrap: anywhere;
}

.uvd-user-subtitle {
  margin: 7px 0 0;
  color: var(--uvd-user-muted, var(--uvd-muted, #64748b));
  font-size: clamp(13px, 2.2vw, 15px);
  line-height: 1.9;
  overflow-wrap: anywhere;
}

.uvd-user-toolbar {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}

.uvd-user-grid {
  display: grid;
  grid-template-columns: repeat(var(--uvd-user-grid-columns, 1), minmax(0, 1fr));
  gap: var(--uvd-user-grid-gap, 16px);
  min-width: 0;
}

.uvd-user-card {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  min-width: 0;
  padding: var(--uvd-user-card-padding, 20px);
  border-radius: var(--uvd-user-card-radius, var(--uvd-radius-lg, 15px));
  border: 1px solid var(--uvd-user-card-border, var(--uvd-border, rgba(57,117,196,.16)));
  background: var(--uvd-user-card-bg, var(--uvd-surface, #fff));
  box-shadow: var(--uvd-user-card-shadow, var(--uvd-shadow-card, 0 10px 25px rgba(0,0,0,.15)));
  color: var(--uvd-user-card-text, inherit);
  overflow: hidden;
}

.uvd-user-card > * {
  position: relative;
  z-index: 1;
}

.uvd-user-form {
  display: grid;
  gap: var(--uvd-user-form-gap, 14px);
  min-width: 0;
}

.uvd-user-field {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.uvd-user-label {
  font-size: 13px;
  font-weight: 900;
  color: var(--uvd-user-label, var(--uvd-text-strong, #111827));
}

.uvd-user-input,
.uvd-user-select,
.uvd-user-textarea {
  width: 100%;
  box-sizing: border-box;
  min-height: 46px;
  padding: 10px 13px;
  border-radius: var(--uvd-user-input-radius, 14px);
  border: 1px solid var(--uvd-user-input-border, var(--uvd-border, rgba(57,117,196,.18)));
  background: var(--uvd-user-input-bg, var(--uvd-surface, #fff));
  color: var(--uvd-user-input-text, var(--uvd-text, #1f2937));
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
  font-size: 14px;
  outline: none;
  transition: border-color var(--uvd-motion-fast, 160ms) ease, box-shadow var(--uvd-motion-fast, 160ms) ease, background var(--uvd-motion-fast, 160ms) ease;
}

.uvd-user-input:focus,
.uvd-user-select:focus,
.uvd-user-textarea:focus {
  border-color: var(--uvd-user-focus-border, var(--uvd-primary, #3975C4));
  box-shadow: var(--uvd-user-focus-shadow, 0 0 0 3px rgba(57,117,196,.16));
}

.uvd-user-textarea {
  min-height: 118px;
  resize: vertical;
  line-height: 1.9;
}

.uvd-user-button,
.uvd-user-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 16px;
  border-radius: var(--uvd-user-button-radius, 14px);
  border: 1px solid var(--uvd-user-button-border, var(--uvd-border-strong, rgba(57,117,196,.26)));
  background: var(--uvd-user-button-bg, var(--uvd-primary, #3975C4));
  color: var(--uvd-user-button-text, var(--uvd-inverse-text, #fff));
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.4;
  text-decoration: none;
  cursor: pointer;
  box-shadow: var(--uvd-user-button-shadow, none);
  transition: transform var(--uvd-motion-fast, 160ms) ease, filter var(--uvd-motion-fast, 160ms) ease, box-shadow var(--uvd-motion-fast, 160ms) ease;
}

.uvd-user-button:hover,
.uvd-user-back:hover {
  transform: translateY(-1px);
  filter: saturate(1.06);
}

.uvd-user-button--secondary {
  background: var(--uvd-user-button-secondary-bg, var(--uvd-surface-soft, #f0f4ff));
  color: var(--uvd-user-button-secondary-text, var(--uvd-primary, #3975C4));
  border-color: var(--uvd-user-button-secondary-border, var(--uvd-border, rgba(57,117,196,.18)));
}

.uvd-user-list {
  display: grid;
  gap: var(--uvd-user-list-gap, 12px);
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.uvd-user-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--uvd-user-card-radius, var(--uvd-radius-lg, 15px));
  border: 1px solid var(--uvd-user-table-border, var(--uvd-border, rgba(57,117,196,.16)));
  background: var(--uvd-user-table-bg, var(--uvd-surface, #fff));
}

.uvd-user-table {
  width: 100%;
  min-width: var(--uvd-user-table-min-width, 620px);
  border-collapse: collapse;
  color: var(--uvd-user-table-text, inherit);
}

.uvd-user-table th,
.uvd-user-table td {
  padding: 12px 14px;
  text-align: right;
  border-bottom: 1px solid var(--uvd-user-table-row-border, rgba(148,163,184,.18));
  vertical-align: middle;
}

.uvd-user-table th {
  font-size: 12px;
  font-weight: 950;
  color: var(--uvd-user-muted, var(--uvd-muted, #64748b));
  background: var(--uvd-user-table-head-bg, rgba(57,117,196,.06));
}

.uvd-user-alert,
.uvd-user-empty {
  box-sizing: border-box;
  width: 100%;
  padding: 15px 16px;
  border-radius: var(--uvd-user-alert-radius, 16px);
  border: 1px solid var(--uvd-user-alert-border, var(--uvd-border, rgba(57,117,196,.18)));
  background: var(--uvd-user-alert-bg, var(--uvd-surface-soft, #f0f4ff));
  color: var(--uvd-user-alert-text, var(--uvd-text, #1f2937));
  line-height: 1.9;
  overflow-wrap: anywhere;
}

.uvd-user-alert[data-uvd-state="error"],
.uvd-user-alert--error {
  border-color: var(--uvd-user-alert-error-border, rgba(220,38,38,.24));
  background: var(--uvd-user-alert-error-bg, rgba(254,226,226,.86));
  color: var(--uvd-user-alert-error-text, #991b1b);
}

.uvd-user-alert[data-uvd-state="success"],
.uvd-user-alert--success {
  border-color: var(--uvd-user-alert-success-border, rgba(22,163,74,.24));
  background: var(--uvd-user-alert-success-bg, rgba(220,252,231,.86));
  color: var(--uvd-user-alert-success-text, #166534);
}

.uvd-user-empty {
  text-align: center;
  color: var(--uvd-user-empty-text, var(--uvd-user-muted, var(--uvd-muted, #64748b)));
}

@media (min-width: 860px) {
  .uvd-user-grid--two {
    --uvd-user-grid-columns: 2;
  }
  .uvd-user-grid--three {
    --uvd-user-grid-columns: 3;
  }
}

@media (max-width: 720px) {
  .uvd-user-shell {
    width: min(100% - 18px, 100%);
    margin-top: 14px;
    margin-bottom: 18px;
    padding: var(--uvd-user-shell-mobile-padding, 14px);
  }
  .uvd-user-page-head {
    flex-direction: column;
    align-items: stretch;
  }
  .uvd-user-toolbar {
    width: 100%;
    justify-content: stretch;
  }
  .uvd-user-toolbar .uvd-user-button,
  .uvd-user-toolbar .uvd-user-back {
    flex: 1 1 auto;
  }
}

/* ==========================================================
   Phase 3D.2.1 — Simple User Pages Theme Expansion
   Shared component bridges for change_password.php and notifications.php.
   Logic hooks/IDs stay intact; selectors remain page-scoped and prefixed.
   ========================================================== */
.uvd-simple-page {
  position: relative;
  z-index: 1;
  min-height: calc(100vh - 110px);
  padding: 1px 0 34px;
}

.uvd-simple-shell {
  isolation: isolate;
}

.uvd-simple-page-head {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--uvd-user-section-border, rgba(148,163,184,.16));
}

.uvd-change-password-shell {
  --uvd-user-shell-max: min(var(--uvd-user-shell-max, 720px), 720px);
}

.uvd-password-card {
  width: min(560px, 100%);
  margin: 0 auto;
}

.uvd-password-form {
  gap: 16px;
}

.uvd-password-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.uvd-password-inline-strength {
  color: var(--uvd-user-muted, #64748b);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.uvd-password-strength {
  height: 10px;
  border-radius: 999px;
  background: var(--uvd-user-meter-bg, rgba(148,163,184,.14));
  border: 1px solid var(--uvd-user-meter-border, rgba(148,163,184,.16));
  overflow: hidden;
  margin-top: 10px;
}

.uvd-password-strength__bar {
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(239,68,68,.95), rgba(185,28,28,.95));
  transition: width .25s ease, background .25s ease;
}

.uvd-password-strength__text {
  min-height: 21px;
  margin-top: 7px;
  font-size: 12px;
  color: var(--uvd-user-muted, #64748b);
  font-weight: 900;
}

.uvd-password-rules {
  list-style: none;
  padding: 0;
  margin: 10px 0 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.uvd-password-rules li {
  min-width: 0;
  padding: 10px 10px;
  border-radius: 14px;
  border: 1px solid var(--uvd-user-rule-border, rgba(148,163,184,.16));
  background: var(--uvd-user-rule-bg, rgba(148,163,184,.07));
  color: var(--uvd-user-rule-text, var(--uvd-user-card-text, inherit));
  font-size: 12px;
  font-weight: 900;
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.6;
}

.uvd-password-rules li::before {
  content: "•";
  opacity: .65;
}

.uvd-password-rules li.valid {
  border-color: var(--uvd-user-success-border, rgba(34,197,94,.24));
  background: var(--uvd-user-success-bg, rgba(34,197,94,.10));
  color: var(--uvd-user-success-text, #166534);
}

.uvd-password-rules li.valid::before {
  content: "✅";
  opacity: 1;
}

.uvd-password-rules li.invalid {
  border-color: var(--uvd-user-error-border, rgba(239,68,68,.24));
  background: var(--uvd-user-error-bg, rgba(239,68,68,.08));
  color: var(--uvd-user-error-text, #991b1b);
}

.uvd-password-rules li.invalid::before {
  content: "❌";
  opacity: 1;
}

.uvd-password-submit {
  width: 100%;
}

.uvd-password-message {
  display: none;
  margin-top: 14px;
  font-weight: 900;
  font-size: 13px;
}

.uvd-password-message.success {
  display: block;
  border-color: var(--uvd-user-success-border, rgba(34,197,94,.24));
  background: var(--uvd-user-success-bg, rgba(34,197,94,.10));
  color: var(--uvd-user-success-text, #166534);
}

.uvd-password-message.error {
  display: block;
  border-color: var(--uvd-user-error-border, rgba(239,68,68,.24));
  background: var(--uvd-user-error-bg, rgba(239,68,68,.10));
  color: var(--uvd-user-error-text, #991b1b);
}

.uvd-notifications-shell {
  --uvd-user-shell-max: 1200px;
}

.uvd-notifications-table {
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0 10px;
  min-width: 880px;
}

.uvd-notifications-table th {
  text-align: center;
  border: 1px solid var(--uvd-user-table-head-border, var(--uvd-user-table-row-border, rgba(148,163,184,.18)));
  border-radius: 14px;
}

.uvd-notifications-table .th-msg { width: 52%; text-align: right; }
.uvd-notifications-table .th-file { width: 14%; }
.uvd-notifications-table .th-status { width: 12%; }
.uvd-notifications-table .th-date { width: 14%; }
.uvd-notifications-table .th-act { width: 8%; }

.uvd-notifications-table tbody td {
  border: 1px solid var(--uvd-user-notification-row-border, var(--uvd-user-table-row-border, rgba(148,163,184,.18)));
  border-radius: 16px;
  background: var(--uvd-user-notification-row-bg, var(--uvd-user-card-bg, #fff));
  box-shadow: var(--uvd-user-notification-row-shadow, 0 8px 20px rgba(15,23,42,.08));
  transition: transform var(--uvd-motion-fast, 160ms) ease, box-shadow var(--uvd-motion-fast, 160ms) ease, border-color var(--uvd-motion-fast, 160ms) ease, opacity var(--uvd-motion-fast, 160ms) ease;
  overflow: hidden;
}

.uvd-notifications-table tr:hover td {
  transform: translateY(-2px);
  border-color: var(--uvd-user-notification-row-hover-border, var(--uvd-user-focus-border, rgba(57,117,196,.30)));
  box-shadow: var(--uvd-user-notification-row-hover-shadow, var(--uvd-user-card-shadow, none));
}

.uvd-notifications-table tr.new td {
  background: var(--uvd-user-notification-new-bg, var(--uvd-user-notification-row-bg, var(--uvd-user-card-bg, #fff)));
}

.uvd-notifications-table tr.seen td {
  background: var(--uvd-user-notification-seen-bg, var(--uvd-user-notification-row-bg, var(--uvd-user-card-bg, #fff)));
  color: var(--uvd-user-notification-seen-text, var(--uvd-user-muted, #64748b));
}

.uvd-notifications-table .col-msg { text-align: right; }
.uvd-notifications-table .col-file,
.uvd-notifications-table .col-status,
.uvd-notifications-table .col-date,
.uvd-notifications-table .col-act { text-align: center; }

.uvd-notifications-table .msg {
  line-height: 1.95;
  word-break: break-word;
  color: var(--uvd-user-notification-msg-text, var(--uvd-user-card-text, inherit));
}

.uvd-notifications-page .status-badge,
.uvd-notifications-page .date-pill,
.uvd-notifications-page .legacy-file-locked,
.uvd-notifications-page .btnx {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  gap: 8px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 12px;
  line-height: 1.5;
  white-space: nowrap;
}

.uvd-notifications-page .status-badge,
.uvd-notifications-page .date-pill,
.uvd-notifications-page .legacy-file-locked {
  padding: 7px 10px;
  border: 1px solid var(--uvd-user-chip-border, rgba(148,163,184,.18));
  background: var(--uvd-user-chip-bg, rgba(148,163,184,.08));
  color: var(--uvd-user-chip-text, var(--uvd-user-card-text, inherit));
}

.uvd-notifications-page .status-new {
  border-color: var(--uvd-user-new-border, var(--uvd-user-focus-border, rgba(57,117,196,.26)));
  background: var(--uvd-user-new-bg, rgba(57,117,196,.12));
  color: var(--uvd-user-new-text, var(--uvd-user-card-text, inherit));
}

.uvd-notifications-page .status-seen {
  color: var(--uvd-user-muted, #64748b);
}

.uvd-notifications-page .legacy-file-locked {
  white-space: normal;
  border-color: var(--uvd-user-warning-border, rgba(245,158,11,.26));
  background: var(--uvd-user-warning-bg, rgba(245,158,11,.10));
  color: var(--uvd-user-warning-text, #92400e);
}

.uvd-notifications-page .btnx {
  min-height: 40px;
  padding: 9px 12px;
  border: 1px solid var(--uvd-user-button-secondary-border, var(--uvd-user-button-border, rgba(57,117,196,.24)));
  background: var(--uvd-user-button-secondary-bg, var(--uvd-user-button-bg, #3975C4));
  color: var(--uvd-user-button-secondary-text, var(--uvd-user-button-text, #fff));
  text-decoration: none;
  cursor: pointer;
  border-radius: 14px;
  transition: transform var(--uvd-motion-fast, 160ms) ease, box-shadow var(--uvd-motion-fast, 160ms) ease, border-color var(--uvd-motion-fast, 160ms) ease, opacity var(--uvd-motion-fast, 160ms) ease;
}

.uvd-notifications-page .btnx:hover {
  transform: translateY(-1px);
  border-color: var(--uvd-user-focus-border, rgba(57,117,196,.30));
  box-shadow: var(--uvd-user-button-shadow, 0 10px 22px rgba(15,23,42,.12));
}

.uvd-notifications-page .btnx:active {
  transform: scale(.98);
  opacity: .92;
}

.uvd-notifications-page .btn-mark {
  background: var(--uvd-user-button-bg, #3975C4);
  color: var(--uvd-user-button-text, #fff);
  border-color: var(--uvd-user-button-border, rgba(57,117,196,.30));
}

.uvd-notifications-page .btn-watch {
  border-color: var(--uvd-user-success-border, rgba(34,197,94,.24));
  background: var(--uvd-user-success-bg, rgba(34,197,94,.10));
}

.uvd-notifications-page .btn-dl {
  border-color: var(--uvd-user-focus-border, rgba(57,117,196,.26));
}

.uvd-notifications-page .dash {
  opacity: .62;
}

.uvd-notifications-page .uvd-empty-emoji {
  font-size: 34px;
  margin-bottom: 8px;
}

.uvd-notifications-page .uvd-empty-title {
  font-weight: 900;
  font-size: 15px;
  margin-bottom: 6px;
  color: var(--uvd-user-title, inherit);
}

.uvd-notifications-page .uvd-empty-sub {
  font-size: 13px;
  color: var(--uvd-user-muted, #64748b);
  line-height: 1.9;
}

body.uvd-page-key-notifications #iosVideoLoading {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.65);
  z-index: 20000;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

body.uvd-page-key-notifications #iosVideoLoading .box {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

body.uvd-page-key-notifications #iosVideoLoading .inner {
  width: min(420px, 92vw);
  background: var(--uvd-user-download-dialog-bg, rgba(2,6,23,.82));
  border: 1px solid var(--uvd-user-download-dialog-border, rgba(255,255,255,.15));
  border-radius: 18px;
  padding: 18px 16px;
  text-align: center;
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
  color: var(--uvd-user-download-dialog-text, #fff);
}

body.uvd-page-key-notifications #iosVideoLoading .spinner {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255,255,255,.25);
  border-top-color: #fff;
  border-radius: 999px;
  margin: 0 auto 12px;
  animation: iosSpin 1s linear infinite;
}

@keyframes iosSpin { to { transform: rotate(360deg); } }
body.uvd-page-key-notifications .ios-title { font-weight: 900; font-size: 15px; margin-bottom: 6px; }
body.uvd-page-key-notifications .ios-sub { opacity: .85; font-size: 13px; line-height: 1.9; }

body.uvd-page-key-notifications .download-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

body.uvd-page-key-notifications .download-box {
  width: min(440px, 92vw);
  background: var(--uvd-user-download-dialog-bg, var(--uvd-user-card-bg, rgba(2,6,23,.80)));
  border: 1px solid var(--uvd-user-download-dialog-border, var(--uvd-user-card-border, rgba(148,163,184,.18)));
  padding: 16px;
  border-radius: 18px;
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
  box-shadow: var(--uvd-user-download-dialog-shadow, 0 18px 60px rgba(0,0,0,.45));
  color: var(--uvd-user-download-dialog-text, var(--uvd-user-card-text, inherit));
  position: relative;
}

body.uvd-page-key-notifications .download-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

body.uvd-page-key-notifications .download-title {
  margin: 0;
  font-weight: 900;
  font-size: 13px;
  color: var(--uvd-user-download-dialog-text, inherit);
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.uvd-page-key-notifications .dl-close {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  border: 1px solid var(--uvd-user-button-secondary-border, rgba(148,163,184,.18));
  background: var(--uvd-user-button-secondary-bg, rgba(148,163,184,.10));
  color: var(--uvd-user-button-secondary-text, inherit);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 900;
}

body.uvd-page-key-notifications .download-bar {
  height: 10px;
  background: var(--uvd-user-meter-bg, rgba(148,163,184,.12));
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid var(--uvd-user-meter-border, rgba(148,163,184,.12));
}

body.uvd-page-key-notifications .download-bar > div {
  height: 100%;
  width: 0%;
  background: var(--uvd-user-progress-bg, linear-gradient(135deg, rgba(59,130,246,.95), rgba(37,99,235,.95)));
  transition: width .15s linear;
}

body.uvd-page-key-notifications .download-meta {
  margin-top: 10px;
  font-size: 12.5px;
  opacity: .9;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--uvd-user-muted, inherit);
}

body.uvd-page-key-notifications .download-actions {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
}

body.uvd-page-key-notifications .dl-cancel {
  padding: 9px 12px;
  border-radius: 14px;
  border: 1px solid var(--uvd-user-error-border, rgba(239,68,68,.24));
  background: var(--uvd-user-error-bg, rgba(239,68,68,.14));
  color: var(--uvd-user-error-text, #991b1b);
  cursor: pointer;
  font-weight: 900;
  font-family: var(--uvd-font-base, Vazirmatn, Tahoma, sans-serif);
}

@media (max-width: 768px) {
  .uvd-notifications-table-wrap {
    border: none;
    background: transparent;
  }

  .uvd-notifications-table,
  .uvd-notifications-table tbody {
    display: block;
    width: 100%;
    min-width: 0;
  }

  .uvd-notifications-table thead { display: none; }

  .uvd-notifications-table tr {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 14px;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid var(--uvd-user-notification-row-border, rgba(148,163,184,.16));
    box-shadow: var(--uvd-user-notification-row-shadow, 0 14px 34px rgba(15,23,42,.14));
    background: var(--uvd-user-notification-row-bg, var(--uvd-user-card-bg, #fff));
  }

  .uvd-notifications-table tbody td {
    display: block;
    width: 100%;
    padding: 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: transparent !important;
  }

  .uvd-notifications-table tbody td.col-msg {
    width: 100%;
    padding: 12px 12px 10px;
    border-bottom: 1px solid var(--uvd-user-table-row-border, rgba(148,163,184,.14));
  }

  .uvd-notifications-table tbody td.col-file,
  .uvd-notifications-table tbody td.col-status,
  .uvd-notifications-table tbody td.col-date,
  .uvd-notifications-table tbody td.col-act {
    display: inline-flex;
    width: 25%;
    padding: 10px 8px 12px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }

  .uvd-notifications-table tbody td.col-file,
  .uvd-notifications-table tbody td.col-status,
  .uvd-notifications-table tbody td.col-date {
    border-left: 1px solid var(--uvd-user-table-row-border, rgba(148,163,184,.14));
  }

  .uvd-notifications-page .btnx,
  .uvd-notifications-page .date-pill,
  .uvd-notifications-page .status-badge {
    width: 100%;
    min-width: 0;
    padding: 8px 7px;
    border-radius: 12px;
    font-size: 11.5px;
    line-height: 1.35;
  }
}

@media (max-width: 520px) {
  .uvd-password-rules {
    grid-template-columns: 1fr;
  }

  .uvd-password-label-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .uvd-notifications-table tbody td.col-file,
  .uvd-notifications-table tbody td.col-status,
  .uvd-notifications-table tbody td.col-date,
  .uvd-notifications-table tbody td.col-act {
    width: 50%;
  }

  .uvd-notifications-table tbody td.col-file,
  .uvd-notifications-table tbody td.col-date {
    border-left: 1px solid var(--uvd-user-table-row-border, rgba(148,163,184,.14));
  }

  .uvd-notifications-table tbody td.col-status {
    border-left: none;
  }
}
