/* AmoozYar — Front-end (product page & My Account) */
.ay-access-area { margin-top: 14px; }
.ay-account-wrap { direction: rtl; }
.ay-account-badge { display: inline-block; padding: 2px 10px; border-radius: 20px; font-size: .8rem; font-weight: 600; }
.ay-status-fin { background:#dcfce7; color:#15803d; }
.ay-status-exp { background:#fee2e2; color:#b91c1c; }
.ay-status-ip  { background:#dbeafe; color:#1d4ed8; }
.ay-status-ns  { background:#f1f5f9; color:#475569; }

/* ============================================================
   AmoozYar Stats Widget
   ============================================================ */
.ay-widget-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 4px 0;
}
.ay-widget-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: #f8fafc;
  border-radius: 8px;
  border-right: 3px solid #2563eb;
}
.ay-widget-icon  { font-size: 1.4rem; flex-shrink: 0; }
.ay-widget-text  { display: flex; flex-direction: column; }
.ay-widget-number{ font-size: 1.3rem; font-weight: 800; color: #1e293b; line-height: 1; }
.ay-widget-label { font-size: .78rem; color: #64748b; margin-top: 2px; }

.ay-widget-action { margin-top: 12px; text-align: center; }
.ay-widget-btn {
  display: inline-block;
  background: #2563eb;
  color: #fff;
  padding: 8px 20px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  font-size: .9rem;
  width: 100%;
  text-align: center;
  transition: opacity .15s;
}
.ay-widget-btn:hover { opacity: .88; color: #fff; }


/* ============================================================
   AmoozYar Account Exams Page
   ============================================================ */
.ay-account-wrap { direction:rtl; }
.ay-account-notify-bar { display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px; }
.ay-account-notify-item { display:flex;align-items:center;gap:8px;font-size:.88rem; }
.ay-badge-connected   { background:#dcfce7;color:#16a34a;padding:2px 8px;border-radius:20px;font-size:.78rem;font-weight:600; }
.ay-badge-disconnected{ background:#fee2e2;color:#dc2626;padding:2px 8px;border-radius:20px;font-size:.78rem; }
.ay-btn-connect-sm    { background:#2563eb;color:#fff;padding:4px 12px;border-radius:6px;text-decoration:none;font-size:.8rem; }

.ay-account-exam-card { border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;overflow:hidden; }
.ay-account-exam-header { display:flex;align-items:center;justify-content:space-between;padding:14px 18px;gap:14px;flex-wrap:wrap; }
.ay-account-exam-info { display:flex;align-items:center;gap:12px;flex:1;min-width:0; }
.ay-account-exam-thumb { width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0; }
.ay-account-exam-title { font-weight:700;font-size:.95rem;color:#1e293b;margin-bottom:4px; }
.ay-account-exam-stats { display:flex;gap:10px;font-size:.78rem;color:#64748b;flex-wrap:wrap; }
.ay-badge-free { background:#dcfce7;color:#16a34a;padding:2px 8px;border-radius:20px;font-size:.78rem;font-weight:600; }
.ay-remaining-ok   { color:#16a34a;font-weight:600; }
.ay-remaining-zero { color:#dc2626; }

.ay-account-exam-actions { display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap; }
.ay-account-timer { font-size:.82rem;color:#7c3aed;font-weight:600; }
.ay-account-btn { padding:8px 16px;border-radius:8px;text-decoration:none;font-size:.88rem;font-weight:600;display:inline-block;border:none;cursor:pointer; }
.ay-btn-continue { background:#2563eb;color:#fff; }
.ay-btn-start    { background:#16a34a;color:#fff; }
.ay-btn-buy      { background:#f1f5f9;color:#475569;border:1px solid #e2e8f0; }
.ay-btn-disabled { background:#f1f5f9;color:#94a3b8;cursor:default; }

.ay-account-attempts { border-top:1px solid #f1f5f9;padding:0 8px 8px; }
.ay-badge-inprog { background:#eff6ff;color:#2563eb;padding:2px 8px;border-radius:20px;font-size:.78rem; }
.ay-badge-done   { background:#dcfce7;color:#16a34a;padding:2px 8px;border-radius:20px;font-size:.78rem; }
.ay-badge-exp    { background:#fef9c3;color:#ca8a04;padding:2px 8px;border-radius:20px;font-size:.78rem; }

.ay-account-title { margin-top:24px; }
.ay-account-empty { color:#64748b; }
.ay-account-wrap table { width:100%; }
.ay-account-wrap .widefat th, .ay-account-wrap .widefat td { text-align:right; }

/* ============================================================
   AmoozYar Account Exams — v1.9.9 polished list, filters, pagination
   ============================================================ */
.ay-account-wrap {
  --ay-account-primary: #2563eb;
  --ay-account-primary-dark: #1d4ed8;
  --ay-account-success: #16a34a;
  --ay-account-warning: #f59e0b;
  --ay-account-danger: #dc2626;
  --ay-account-text: #1e293b;
  --ay-account-muted: #64748b;
  --ay-account-border: #e2e8f0;
  --ay-account-bg: #f8fafc;
  --ay-account-card: #ffffff;
  direction: rtl;
}
.ay-account-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 14px;
}
.ay-account-title {
  margin: 0 0 6px;
  color: var(--ay-account-text);
  font-size: 1.2rem;
  font-weight: 800;
}
.ay-account-subtitle {
  margin: 0;
  color: var(--ay-account-muted);
  font-size: .9rem;
  line-height: 1.8;
}
.ay-account-help-text { font-size: .78rem; color: var(--ay-account-muted); }
.ay-account-filters {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 18px 0;
  padding: 8px;
  border: 1px solid var(--ay-account-border);
  background: var(--ay-account-bg);
  border-radius: 14px;
}
.ay-account-filter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border-radius: 11px;
  color: #475569;
  text-decoration: none;
  font-size: .88rem;
  font-weight: 700;
  transition: background .15s, color .15s, box-shadow .15s;
}
.ay-account-filter span {
  display: inline-flex;
  min-width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  padding: 0 7px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  font-size: .78rem;
}
.ay-account-filter:hover {
  background: #fff;
  color: var(--ay-account-primary);
}
.ay-account-filter.is-active {
  background: var(--ay-account-primary);
  color: #fff;
  box-shadow: 0 8px 22px rgba(37,99,235,.22);
}
.ay-account-filter.is-active span {
  background: rgba(255,255,255,.22);
  color: #fff;
}
.ay-account-exam-card {
  background: var(--ay-account-card);
  border: 1px solid var(--ay-account-border);
  border-radius: 18px;
  margin-bottom: 16px;
  overflow: hidden;
  box-shadow: 0 8px 26px rgba(15,23,42,.055);
}
.ay-account-exam-card.ay-exam-status-active { border-right: 4px solid var(--ay-account-primary); }
.ay-account-exam-card.ay-exam-status-ready  { border-right: 4px solid var(--ay-account-success); }
.ay-account-exam-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px;
  gap: 14px;
  flex-wrap: wrap;
}
.ay-account-exam-info {
  display: flex;
  align-items: center;
  gap: 13px;
  flex: 1;
  min-width: 230px;
}
.ay-account-exam-thumb {
  width: 58px;
  height: 58px;
  border-radius: 14px;
  object-fit: cover;
  flex-shrink: 0;
  box-shadow: 0 6px 16px rgba(15,23,42,.08);
}
.ay-account-exam-thumb-fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #eff6ff, #eef2ff);
  font-size: 1.45rem;
}
.ay-account-exam-title {
  font-weight: 850;
  font-size: 1rem;
  color: var(--ay-account-text);
  margin-bottom: 7px;
  line-height: 1.6;
}
.ay-account-exam-meta,
.ay-account-exam-stats {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: .8rem;
  color: var(--ay-account-muted);
  flex-wrap: wrap;
}
.ay-status-pill {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 700;
}
.ay-status-pill-active { background: #dbeafe; color: #1d4ed8; }
.ay-status-pill-ready  { background: #dcfce7; color: #15803d; }
.ay-status-pill-done   { background: #f1f5f9; color: #475569; }
.ay-account-exam-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  flex-wrap: wrap;
}
.ay-account-timer {
  background: #f5f3ff;
  color: #6d28d9;
  border: 1px solid #ddd6fe;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: .82rem;
  font-weight: 750;
}
.ay-account-btn,
.ay-account-mini-btn,
.ay-account-report-btn,
.ay-page-btn {
  text-decoration: none !important;
}
.ay-account-btn {
  padding: 10px 18px;
  border-radius: 12px;
  font-size: .9rem;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: none;
  cursor: pointer;
  transition: transform .15s, box-shadow .15s, opacity .15s;
}
.ay-account-btn:hover { transform: translateY(-1px); opacity: .95; }
.ay-btn-continue { background: var(--ay-account-primary); color: #fff !important; box-shadow: 0 8px 18px rgba(37,99,235,.22); }
.ay-btn-start    { background: var(--ay-account-success); color: #fff !important; box-shadow: 0 8px 18px rgba(22,163,74,.2); }
.ay-btn-buy      { background: #fff; color: #475569 !important; border: 1px solid var(--ay-account-border); }
.ay-btn-disabled { background: #f1f5f9; color: #94a3b8 !important; cursor: default; }
.ay-account-attempts {
  border-top: 1px solid #f1f5f9;
  padding: 0;
}
.ay-account-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.ay-account-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 720px;
  font-size: .86rem;
}
.ay-account-table th,
.ay-account-table td {
  padding: 12px 14px;
  text-align: right;
  border-bottom: 1px solid #f1f5f9;
  vertical-align: middle;
}
.ay-account-table th {
  background: #f8fafc;
  color: #475569;
  font-weight: 800;
}
.ay-account-table tr:last-child td { border-bottom: none; }
.ay-score-percent { color: var(--ay-account-muted); font-size: .8rem; }
.ay-account-report-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px 13px;
  border-radius: 11px;
  background: linear-gradient(135deg, #0f172a, #334155);
  color: #fff !important;
  font-size: .82rem;
  font-weight: 800;
  box-shadow: 0 7px 18px rgba(15,23,42,.18);
  transition: transform .15s, box-shadow .15s, opacity .15s;
  white-space: nowrap;
}
.ay-account-report-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(15,23,42,.24);
  opacity: .96;
}
.ay-account-mini-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border-radius: 10px;
  background: #eff6ff;
  color: #1d4ed8 !important;
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
}
.ay-account-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex-wrap: wrap;
  margin: 20px 0 4px;
}
.ay-page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--ay-account-border);
  border-radius: 11px;
  background: #fff;
  color: #475569 !important;
  font-size: .88rem;
  font-weight: 800;
}
.ay-page-btn:hover,
.ay-page-btn.is-current {
  background: var(--ay-account-primary);
  color: #fff !important;
  border-color: var(--ay-account-primary);
}
.ay-account-empty {
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  padding: 18px;
  color: var(--ay-account-muted);
  line-height: 1.9;
}
.ay-order-report-btn {
  background: linear-gradient(135deg, #0f172a, #334155) !important;
  box-shadow: 0 7px 18px rgba(15,23,42,.18);
}

@media (max-width: 700px) {
  .ay-account-filters { align-items: stretch; }
  .ay-account-filter { flex: 1 1 100%; justify-content: space-between; }
  .ay-account-exam-header { align-items: stretch; }
  .ay-account-exam-info { min-width: 100%; }
  .ay-account-exam-actions { width: 100%; }
  .ay-account-btn { width: 100%; }
  .ay-account-timer { width: 100%; text-align: center; }
}
.ay-product-report-btn {
  display: flex !important;
  text-align: center;
  margin-top: 12px;
}


/* AJAX state for My Exams */
.ay-account-wrap { position: relative; }
.ay-account-wrap.is-loading { opacity: .6; pointer-events: none; }
.ay-account-wrap.is-loading::after {
  content: 'در حال بارگذاری...';
  position: absolute;
  inset: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.72);
  border: 1px solid var(--ay-account-border, #e2e8f0);
  border-radius: 16px;
  color: var(--ay-account-primary, #2563eb);
  font-weight: 800;
  z-index: 10;
}
