/* ========================
   STICKY FOOTER
   Без flex на body — не ломает layout страниц
======================== */

html {
  height: 100%;
}

body {
  min-height: 100vh;
  /* НЕТ display:flex — он ломает grid и layout внутри страниц */
}

/* Контент-враппер растягивается чтобы футер был внизу */
.main,
.page-wrap,
.profile-wrap {
  min-height: calc(100vh - 64px - 220px);
  /* 64px = navbar, 220px ≈ footer */
}

.rt-footer {
  margin-top: 0;
}

/* ========================
   FOOTER — .rt-footer
======================== */
.rt-footer {
    background: #010f1f;
    border-top: 1px solid rgba(0, 212, 255, 0.15);
    padding: 48px 0 32px;
    font-family: 'Rajdhani', 'Open Sans', sans-serif;
}
.rt-footer-inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start;
}
.rt-footer-col { flex: 1 1 160px; min-width: 140px; }
.rt-footer-col-right { flex: 1 1 260px; display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.rt-footer-title { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.15em; color: rgba(255,255,255,0.4); margin-bottom: 18px; text-transform: uppercase; display: block; }
.rt-footer-links { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.rt-footer-links a { color: rgba(255,255,255,0.55); text-decoration: none; font-size: 0.9rem; transition: color 0.2s; }
.rt-footer-links a:hover { color: #00bfff; }
.rt-footer-socials { display: flex; flex-direction: row; gap: 12px; margin-top: 4px; }
.rt-footer-social { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.6); text-decoration: none; transition: all 0.22s; }
.rt-footer-social:hover { background: rgba(0,191,255,0.12); border-color: rgba(0,191,255,0.3); color: #00bfff; transform: translateY(-2px); }
.rt-footer-social svg { width: 18px; height: 18px; fill: currentColor; display: block; }
.rt-footer-payments { display: flex; flex-wrap: wrap; flex-direction: row; gap: 8px; justify-content: flex-end; }
.rt-payment-badge { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 6px 12px; font-size: 0.78rem; color: rgba(255,255,255,0.6); white-space: nowrap; display: inline-block; }
.rt-footer-status { display: flex; flex-direction: row; align-items: center; gap: 8px; font-size: 0.85rem; color: rgba(255,255,255,0.6); }
.rt-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #4ade80; box-shadow: 0 0 8px #4ade80; flex-shrink: 0; display: inline-block; }
.rt-footer-copy { font-size: 0.8rem; color: rgba(255,255,255,0.25); }

@media (max-width: 768px) {
    .rt-footer-inner { flex-direction: column; gap: 28px; }
    .rt-footer-col-right { align-items: flex-start; }
    .rt-footer-payments { justify-content: flex-start; }
}

/* ========================
   FOOTER — .site-footer (старый)
======================== */
.site-footer { background: #010f1f; border-top: 1px solid rgba(0,212,255,0.15); padding: 48px 0 32px; margin-top: 0 !important; display: block; }
.site-footer .footer-inner { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; max-width: 1440px; margin: 0 auto; padding: 0 24px; }
.site-footer .footer-col { flex: 1 1 160px; min-width: 140px; list-style: none; }
.site-footer .footer-col--right { flex: 1 1 260px; display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.site-footer .footer-title { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; color: #00d4ff; margin-bottom: 18px; text-transform: uppercase; display: block; }
.site-footer .footer-links { list-style: none; display: flex; flex-direction: column; gap: 10px; padding: 0; margin: 0; }
.site-footer .footer-links a { color: rgba(255,255,255,0.55); text-decoration: none; font-size: 0.9rem; }
.site-footer .footer-links a:hover { color: #00d4ff; }
.site-footer .footer-socials { display: flex; gap: 14px; margin-top: 4px; }
.site-footer .footer-social-link { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: rgba(0,212,255,0.08); border: 1px solid rgba(0,212,255,0.2); color: rgba(255,255,255,0.7); text-decoration: none; }
.site-footer .footer-payments { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.site-footer .payment-badge { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; padding: 6px 12px; font-size: 0.78rem; color: rgba(255,255,255,0.75); white-space: nowrap; display: inline-block; }
.site-footer .footer-status { display: flex; align-items: center; gap: 8px; font-size: 0.85rem; color: rgba(255,255,255,0.7); }
.site-footer .status-dot { width: 9px; height: 9px; border-radius: 50%; background: #00e676; box-shadow: 0 0 8px #00e676; flex-shrink: 0; display: inline-block; }
.site-footer .footer-copy { font-size: 0.82rem; color: rgba(255,255,255,0.35); }

@media (max-width: 768px) {
    .site-footer .footer-inner { flex-direction: column; gap: 28px; }
    .site-footer .footer-col--right { align-items: flex-start; }
    .site-footer .footer-payments { justify-content: flex-start; }
}