/* ═══════════════════════════════════════════════
   styles.css — CTR Telegram Suite
   Mirror of Google Request Hit Bot styles (orange → telegram blue)
   ═══════════════════════════════════════════════ */

:root {
  --tg-blue: #2AABEE;
  --tg-blue-light: #4DBCF5;
  --tg-blue-hover: #3BB5F2;
}

*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  background: #0a0a0a;
  color: #fff;
  font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  background: rgba(42, 171, 238, 0.3);
}

.section-padding {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
@media (min-width: 768px) {
  .section-padding {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

/* ── Telegram Blue Gradient Text ── */
.tg-gradient-text {
  background: linear-gradient(135deg, #4DBCF5 0%, #2AABEE 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Telegram Blue Gradient Background ── */
.bg-tg-gradient {
  background: linear-gradient(135deg, #4DBCF5 0%, #2AABEE 100%);
}
.bg-tg-gradient:hover {
  background: linear-gradient(135deg, #5DC4F7 0%, #3BB5F2 100%);
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #0a0a0a; }
::-webkit-scrollbar-thumb {
  background: linear-gradient(135deg, #4DBCF5 0%, #2AABEE 100%);
  border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(135deg, #5DC4F7 0%, #3BB5F2 100%);
}

/* ── Animations ── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.animate-fade-in-up {
  animation: fadeInUp 0.6s ease-out forwards;
}

/* ── FAQ Accordion ── */
.faq-content {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.faq-content.open {
  max-height: 400px;
  opacity: 1;
}
.faq-chevron {
  transition: transform 0.3s ease;
}
.faq-chevron.open {
  transform: rotate(180deg);
}

/* ── Header ── */
.header-scrolled {
  background: rgba(10, 10, 10, 0.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(42, 171, 238, 0.1);
}
.header-transparent {
  background: transparent;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media (min-width: 768px) {
  .header-transparent {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

/* ── Mobile Menu Overlay ── */
.mobile-menu-overlay {
  position: fixed;
  inset: 0;
  background: #0a0a0a;
  z-index: 40;
  display: flex;
  flex-direction: column;
  padding-top: 6rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  animation: fadeIn 0.2s ease-out;
}

/* ── Code Block (Scraper specific) ── */
.code-block {
  background: #111;
  border: 1px solid rgba(42, 171, 238, 0.1);
  border-radius: 0.75rem;
  padding: 1.25rem 1.5rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.75rem;
  line-height: 1.85;
  overflow-x: auto;
  color: #c9d1d9;
}
.code-block .kw { color: #ff7b72; }
.code-block .fn { color: #d2a8ff; }
.code-block .str { color: #a5d6ff; }
.code-block .cmt { color: #6e7681; }
.code-block .num { color: #79c0ff; }
.code-block .var { color: #ffa657; }

/* ── Toast ── */
.toast-container {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 9999;
}
.toast {
  padding: 1rem 1.5rem;
  border-radius: 0.75rem;
  font-weight: 600;
  font-size: 0.875rem;
  animation: fadeInUp 0.3s ease-out;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}
.toast-success {
  background: #141414;
  border: 1px solid rgba(42, 171, 238, 0.5);
  color: #fff;
}
