/* static/app.css */
:root { --card-radius: 1rem; }
.card-soft { border: 0; border-radius: var(--card-radius); box-shadow: 0 8px 30px rgba(0,0,0,.07); }
code, pre { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; }
pre { background: #0d1117; color:#e6edf3; padding:1rem; border-radius:.75rem; overflow:auto; }
.badge-pill { border-radius: 999px; padding:.35rem .6rem; font-weight:600; }
.result-header { display:flex; align-items:center; gap:.5rem; }
.permalink { font-size:.9rem; }
.list-group-item-action .text-muted { font-size:.85rem; }
.navbar-brand { letter-spacing:.3px; }
.footer { color:#6c757d; font-size:.9rem; margin:3rem 0 1rem; }
.code-badge{display:inline-block;padding:.25rem .5rem;border-radius:.5rem;background:#111;color:#eee;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;margin:.15rem  .25rem .15rem 0}
.table-sm td,.table-sm th{padding:.4rem .5rem}
pre.code{background:#0b0f14;color:#e6edf3;border-radius:.5rem;padding:1rem;overflow:auto}
.muted{color:#6c757d}

/* DNS values color for both light/dark themes */
.dns-code{color:var(--bs-primary);}


/* ===== Feature cards for tools ===== */
.feature-card {
  position: relative;
  border-radius: .75rem;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  border: 1px solid var(--bs-border-color);
  background: var(--bs-body-bg);
}
.feature-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .75rem 1.25rem rgba(0,0,0,.06);
  border-color: var(--bs-primary);
}

/* Иконка в плашке сверху */
.feature-card .icon-wrap {
  width: 56px; height: 56px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  margin: .5rem auto 0.75rem;
  background: rgba(var(--bs-primary-rgb), .10);
}
.feature-card .icon-wrap svg,
.feature-card .icon-wrap i {
  font-size: 26px;
  color: var(--bs-primary);
  transition: transform .15s ease;
}
.feature-card:hover .icon-wrap svg,
.feature-card:hover .icon-wrap i { transform: scale(1.06); }

/* Заголовок и текст карточки по центру */
.feature-card .card-body { text-align: center; }
.feature-card .card-title { font-weight: 600; }

/* Плавная подсветка кликабельной области Bootstrap .stretched-link */
.feature-card:hover .stretched-link::after {
  box-shadow: inset 0 0 0 .12rem rgba(var(--bs-primary-rgb), .20);
  border-radius: .75rem;
}

/* Пилюли-ссылки снизу (sitemap/robots) */
.link-pill {
  display: inline-block;
  padding: .25rem .6rem;
  border-radius: 999px;
  border: 1px solid var(--bs-border-color);
  color: var(--bs-secondary-color);
  text-decoration: none;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}
.link-pill:hover {
  color: var(--bs-primary);
  border-color: var(--bs-primary);
  background: rgba(var(--bs-primary-rgb), .06);
}

/* Уважать «меньше анимаций» в системе */
@media (prefers-reduced-motion: reduce) {
  .feature-card,
  .feature-card .icon-wrap,
  .stretched-link::after {
    transition: none !important;
  }
}

/* Горизонтальная лента кнопок в моб.меню */
.nav-scroller {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
}
.nav-scroller .btn {
  flex: 0 0 auto;
  border-radius: 999px;
}

/* (опц.) чуть компактнее общий отступ контейнера меню */
#topnav .btn { padding-inline: .75rem; }

/* крупнее тач-таргеты */
.nav-scroller .btn { padding: .45rem .9rem; }

/* липкий навбар */
.navbar { position: sticky; top: 0; z-index: 1030; }

/* ============================= */
/* Ad widget (Yandex RTB/RSYA)  */
/* ============================= */

/* контейнер перед футером */
.before-footer-ad {
}

/* сам рендер-контейнер виджета */
.before-footer-ad [id^="yandex_rtb_"] {
  display: flex;
  justify-content: center;    /* выравниваем по центру */
  align-items: stretch;
  width: 100%;
  min-height: 180px;          /* чтобы не дёргалось до загрузки */
  overflow: hidden;           /* обрезаем всё, что вылезает */
}

/* что бы ни вставил Яндекс (div/iframe), не позволяем шире контейнера */
.before-footer-ad [id^="yandex_rtb_"] > *,
.before-footer-ad [id^="yandex_rtb_"] iframe {
  max-width: 100% !important;
}

/* мобильные мелочи */
@media (max-width: 576px) {
  .before-footer-ad { margin: 12px 0 16px; }
  .before-footer-ad [id^="yandex_rtb_"] { min-height: 150px; }
}
