/* ===== CoverTrader Design System — animations & bits ===== */
.card-in { animation: cardIn .45s ease-out both; }
.d1 { animation-delay: .08s; } .d2 { animation-delay: .16s; } .d3 { animation-delay: .24s; } .d4 { animation-delay: .32s; }
@keyframes cardIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

.modal-back { animation: fadeIn .2s ease-out both; }
.modal-card { animation: modalIn .25s cubic-bezier(.2,.9,.3,1.2) both; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes modalIn { from { opacity: 0; transform: scale(.94) translateY(8px); } to { opacity: 1; transform: none; } }

.drawer { transition: transform .28s ease; transform: translateX(100%); }
.drawer.open { transform: none; }

#toast { transition: all .25s ease; }

.ring-anim circle:last-child { transition: stroke-dashoffset 1s ease .3s; }

.nav-link { position: relative; }
.nav-link:not(.active):hover { background: #F5F6F8; }

input:focus-visible, button:focus-visible { outline: 2px solid #2d8baa33; outline-offset: 1px; }

.acc-body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .25s ease; }
.acc.open .acc-body { grid-template-rows: 1fr; }
.acc-body > div { overflow: hidden; }
.acc .ri-arrow-down-s-line { transition: transform .25s; }
.acc.open .ri-arrow-down-s-line { transform: rotate(180deg); }

/* ===== Glass نهایی (طرح ۱ + Glass) ===== */
body {
  background:
    radial-gradient(900px 640px at 88% -8%, rgba(45,139,170,.09), transparent 65%),
    radial-gradient(800px 620px at -12% 24%, rgba(45,139,170,.06), transparent 65%),
    radial-gradient(1000px 720px at 55% 115%, rgba(34,110,133,.07), transparent 70%),
    #F2F4F7 !important;
  background-attachment: fixed;
}
.glass {
  background: rgba(255,255,255,.6);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 8px 32px rgba(63,66,84,.07);
}
.glass-strong {
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(20px) saturate(1.1);
  -webkit-backdrop-filter: blur(20px) saturate(1.1);
  border: 1px solid rgba(63,66,84,.08);
  box-shadow: 0 12px 40px rgba(63,66,84,.12);
}
.glass-aside {
  background: rgba(255,255,255,.66);
  backdrop-filter: blur(20px) saturate(1.15);
  -webkit-backdrop-filter: blur(20px) saturate(1.15);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 8px 32px rgba(63,66,84,.08);
}
.glass-bar {
  background: rgba(255,255,255,.62);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 8px 32px rgba(63,66,84,.07);
}
.tnum { font-variant-numeric: tabular-nums; }
@media (prefers-reduced-motion: reduce) { .card-in, .float-in, .modal-card, .modal-back { animation: none !important; } }


/* هاله‌ی رنگی داخل کارت (حس Glass) */
.halo { position: relative; overflow: hidden; }
.halo::before {
  content: ''; position: absolute; top: -70px; left: -70px;
  width: 260px; height: 260px; border-radius: 50%;
  background: rgba(45,139,170,.07); filter: blur(56px); pointer-events: none;
}
.halo-amber::before { background: rgba(245,158,11,.08); }
.halo-emerald::before { background: rgba(16,185,129,.08); }
.halo-rose::before { background: rgba(244,63,94,.07); }

/* Tailwind v4 preflight روی دکمه‌ها cursor نمی‌گذارد — همه‌ی کلیک‌پذیرها pointer */
button:not(:disabled), a, [onclick], label:has(input[type="radio"]), label:has(input[type="checkbox"]),
.plan, .copy-box button, .acc > button { cursor: pointer; }
button:disabled { cursor: not-allowed; }

/* ری‌اکشن کپی: باکس به رنگ برند + «کپی شد!» با انیمیشن pop */
.copy-box { transition: all .25s ease; }
@keyframes copyPop {
  0% { transform: scale(1); }
  40% { transform: scale(1.06); }
  100% { transform: scale(1); }
}
.copy-box.copied {
  background: #2d8baa !important;
  box-shadow: 0 6px 18px rgba(45,139,170,.35);
  animation: copyPop .3s ease;
}
.copy-box.copied, .copy-box.copied * { color: #ffffff !important; }
.copy-box.copied .copy-icon::before { content: "\eb7b"; }


/* جابجایی نرم بین مراحل مودال */
@keyframes stepIn { from { opacity: 0; transform: translateX(-14px); } to { opacity: 1; transform: none; } }
.pstep.step-in { animation: stepIn .28s ease-out both; }
@media (prefers-reduced-motion: reduce) { .pstep.step-in { animation: none; } }

/* تایپوگرافی مشترک محتوای HTML ادمین‌ساخته:
   آموزش‌های CTManager (مودال آموزش اتصال) + بدنه‌ی اطلاعیه‌های پنل */
.help-rich p { margin: 0 0 .75rem; }
.help-rich p:last-child { margin-bottom: 0; }
.help-rich ul, .help-rich ol { margin: 0 0 .75rem; padding-right: 1.25rem; }
.help-rich ul { list-style: disc; }
.help-rich ol { list-style: decimal; }
.help-rich li { margin-bottom: .3rem; }
.help-rich a { color: #2d8baa; text-decoration: underline; }
.help-rich strong { font-weight: 700; }
.help-rich h1, .help-rich h2, .help-rich h3 { font-weight: 700; margin: 1rem 0 .5rem; font-size: 1rem; }
.help-rich img { max-width: 100%; border-radius: .5rem; }
.help-rich blockquote { border-right: 3px solid #E1E3EA; padding-right: .9rem; margin: 0 0 .75rem; color: rgba(63,66,84,.7); }
