/*
SUNDUQ v7.1.2 — True Dark Cards
Жёсткий слой поверх старых стилей.
Цель: убрать белые карточки и сделать внутренние страницы как главную.
*/

:root{
  --td-bg:#06111b;
  --td-card:#0e2132;
  --td-card2:#132c42;
  --td-card3:#0b1a28;
  --td-line:rgba(255,255,255,.10);
  --td-line2:rgba(255,255,255,.18);
  --td-text:#f4f8ff;
  --td-muted:#b8c6d6;
  --td-soft:#91a5bc;
  --td-blue:#60a5fa;
  --td-pink:#f0184f;
  --td-green:#22c55e;
  --td-star:#ffb020;
}

/* 1. Общий фон */
body{
  background:
    radial-gradient(circle at 16% 0%, rgba(96,165,250,.12), transparent 28%),
    radial-gradient(circle at 82% 15%, rgba(240,24,79,.12), transparent 28%),
    #06111b!important;
}

/* 2. Главные контейнеры списков */
.tourismGrid,
.ridesList,
.marketGrid,
.jobsGrid,
.eventsGrid,
.realtyGrid,
.musicGrid,
.directoryGrid,
.datingGrid,
.videosGrid,
.placesGrid,
.cardsGrid,
.resultsGrid,
.itemsGrid,
.listGrid,
[class*="Grid"],
[class*="List"]{
  background:rgba(13,28,43,.55)!important;
  border-color:rgba(255,255,255,.08)!important;
}

/* 3. Карточки — максимально широкий набор классов */
.tourismCard,
.placeCard,
.rideCard,
.marketCard,
.jobCard,
.eventCard,
.realtyCard,
.musicCard,
.directoryCard,
.datingCard,
.videoCard,
.postCard,
.topicCard,
.itemCard,
.resultCard,
.card,
article,
[class*="Card"],
[class*="Item"],
[class*="Tile"]{
  background:linear-gradient(180deg,#10283b,#0b1a28)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:#f4f8ff!important;
  border-radius:24px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.28)!important;
  overflow:hidden!important;
}

/* 4. Отключаем белый фон внутри карточек */
.tourismCard > *,
.placeCard > *,
.rideCard > *,
.marketCard > *,
.jobCard > *,
.eventCard > *,
.realtyCard > *,
.musicCard > *,
.directoryCard > *,
.datingCard > *,
.videoCard > *,
.postCard > *,
.topicCard > *,
.itemCard > *,
.resultCard > *,
.card > *,
article > *,
[class*="Card"] > *,
[class*="Item"] > *,
[class*="Tile"] > *{
  background-color:transparent!important;
}

/* 5. Если старый CSS красит конкретный блок в белый */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:white"],
[style*="background: white"],
[style*="background-color:#fff"],
[style*="background-color: #fff"],
[style*="background-color:white"],
[style*="background-color: white"],
[style*="background: rgb(255"],
[style*="background-color: rgb(255"]{
  background:linear-gradient(180deg,#10283b,#0b1a28)!important;
  color:#f4f8ff!important;
}

/* 6. Заголовки */
h1,h2,h3,h4,
.title,
.cardTitle,
.itemTitle,
.placeTitle,
.rideTitle,
.eventTitle,
.marketTitle,
.jobTitle,
.realtyTitle,
.musicTitle,
.directoryTitle,
.tourismTitle,
[class*="Title"]{
  color:#fff!important;
  opacity:1!important;
  font-weight:900!important;
  text-shadow:none!important;
}

/* 7. Заголовки именно внутри белых старых карточек */
.tourismCard h1,.tourismCard h2,.tourismCard h3,
.placeCard h1,.placeCard h2,.placeCard h3,
.rideCard h1,.rideCard h2,.rideCard h3,
.marketCard h1,.marketCard h2,.marketCard h3,
.jobCard h1,.jobCard h2,.jobCard h3,
.eventCard h1,.eventCard h2,.eventCard h3,
.realtyCard h1,.realtyCard h2,.realtyCard h3,
.musicCard h1,.musicCard h2,.musicCard h3,
.card h1,.card h2,.card h3,
article h1,article h2,article h3,
[class*="Card"] h1,[class*="Card"] h2,[class*="Card"] h3,
[class*="Item"] h1,[class*="Item"] h2,[class*="Item"] h3{
  color:#fff!important;
  opacity:1!important;
}

/* 8. Описание */
p,
.description,
.desc,
.cardText,
.itemText,
.placeDesc,
.rideDesc,
.eventDesc,
[class*="Description"],
[class*="Desc"],
[class*="Text"]{
  color:#c7d3e0!important;
  opacity:1!important;
}

/* 9. Метаданные */
small,
time,
.meta,
.cardMeta,
.itemMeta,
.placeMeta,
.rideMeta,
.eventMeta,
.marketMeta,
.jobMeta,
.realtyMeta,
.musicMeta,
[class*="Meta"],
[class*="Info"],
[class*="Date"],
[class*="Price"]{
  color:#95aac0!important;
  opacity:1!important;
}

/* 10. Рейтинги и цены */
.rating,
.stars,
[class*="Rating"],
[class*="Stars"]{
  color:#ffb020!important;
  opacity:1!important;
}
.price,
[class*="Price"]{
  color:#f4f8ff!important;
  font-weight:900!important;
}

/* 11. Даты справа в поездках */
.rideCard .date,
.rideCard time,
[class*="DateBox"],
[class*="DateCol"]{
  color:#22c55e!important;
  font-weight:1000!important;
}

/* 12. Фильтры */
.filters,
.filterPanel,
.sidebar,
.searchPanel,
.leftPanel,
.formPanel,
[class*="Filter"],
[class*="Sidebar"],
[class*="Panel"]{
  background:rgba(13,28,43,.88)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#f4f8ff!important;
  border-radius:22px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.22)!important;
}

/* 13. Поля */
input,
select,
textarea{
  background:#07131f!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
}
input::placeholder,
textarea::placeholder{
  color:#8fa3b8!important;
}

/* 14. Кнопки */
button,
.btn,
.primaryBtn,
[class*="Btn"]{
  color:#fff!important;
}
.tourismCard button,
.placeCard button,
.rideCard button,
.marketCard button,
.jobCard button,
.eventCard button,
.realtyCard button,
.musicCard button,
.card button,
article button,
[class*="Card"] button,
[class*="Item"] button{
  background:#102131!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.tourismCard button:hover,
.placeCard button:hover,
.rideCard button:hover,
.marketCard button:hover,
.jobCard button:hover,
.eventCard button:hover,
.realtyCard button:hover,
.musicCard button:hover,
.card button:hover,
article button:hover,
[class*="Card"] button:hover,
[class*="Item"] button:hover{
  background:#f0184f!important;
}

/* 15. Hover */
.tourismCard,
.placeCard,
.rideCard,
.marketCard,
.jobCard,
.eventCard,
.realtyCard,
.musicCard,
.card,
article,
[class*="Card"],
[class*="Item"]{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.tourismCard:hover,
.placeCard:hover,
.rideCard:hover,
.marketCard:hover,
.jobCard:hover,
.eventCard:hover,
.realtyCard:hover,
.musicCard:hover,
.card:hover,
article:hover,
[class*="Card"]:hover,
[class*="Item"]:hover{
  transform:translateY(-2px);
  border-color:rgba(240,24,79,.45)!important;
  box-shadow:0 22px 60px rgba(240,24,79,.14),0 18px 45px rgba(0,0,0,.30)!important;
}

/* 16. Пустые состояния */
.empty,
.emptyState,
.emptyBox,
.noItems,
.noResults,
[class*="Empty"],
[class*="NoItems"],
[class*="NoResults"]{
  background:linear-gradient(135deg,#10283b,#0b1a28)!important;
  border:1px dashed rgba(255,255,255,.18)!important;
  color:#b8c6d6!important;
  border-radius:24px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.22)!important;
}
.empty::before,
.emptyState::before,
.noItems::before,
.noResults::before{
  content:"📦";
  display:block;
  font-size:38px;
  margin-bottom:8px;
  opacity:.8;
}
.empty h1,.empty h2,.empty h3,
.emptyState h1,.emptyState h2,.emptyState h3,
.noItems h1,.noItems h2,.noItems h3,
.noResults h1,.noResults h2,.noResults h3{
  color:#fff!important;
}

/* 17. Секционные блоки, где внутри была белая карточка */
section{
  color:#f4f8ff;
}

/* 18. Туризм: делаем карточку как в макете */
.tourismCard,
.placeCard{
  min-height:360px;
}
.tourismCard img,
.placeCard img,
.tourismCard .image,
.placeCard .image,
.tourismCard [class*="Image"],
.placeCard [class*="Image"],
.tourismCard [class*="Cover"],
.placeCard [class*="Cover"]{
  border-radius:0!important;
}

/* 19. Если карточка туризма имеет верхний цветной блок и нижний белый — красим нижний */
.tourismCard > div,
.placeCard > div{
  color:#f4f8ff!important;
}
.tourismCard > div:not(:first-child),
.placeCard > div:not(:first-child){
  background:linear-gradient(180deg,#10283b,#0b1a28)!important;
}

/* 20. Поездки: горизонтальные карточки */
.rideCard{
  background:linear-gradient(90deg,#10283b,#0b1a28)!important;
}
.rideCard > div,
.rideCard .content,
.rideCard [class*="Content"]{
  background:transparent!important;
}

/* 21. Старые белые блоки с очень специфичным цветом */
[style*="background: #ffffff"],
[style*="background:#ffffff"],
[style*="background-color: #ffffff"],
[style*="background-color:#ffffff"]{
  background:linear-gradient(180deg,#10283b,#0b1a28)!important;
}

/* 22. Принудительно исправить слишком светлый текст */
[style*="color:#eef"],
[style*="color: #eef"],
[style*="color:#f1f5"],
[style*="color: #f1f5"],
[style*="color:#f8"],
[style*="color: #f8"],
[style*="color:white"],
[style*="color: white"],
[style*="color:#fff"],
[style*="color: #fff"]{
  color:#fff!important;
}

/* 23. Но внутри тёмных кнопок белый текст оставляем */
button [style],
.btn [style]{
  color:inherit!important;
}

/* 24. Карточки с событиями, где справа дата */
.eventCard{
  background:linear-gradient(90deg,#10283b,#0b1a28)!important;
}

/* 25. Убрать огромные белые прямоугольники, даже если нет класса */
main section > div[style],
main article[style]{
  color:#f4f8ff!important;
}

/* 26. Если блок всё ещё белый из-за более сильного селектора */
main .tourismCard,
main .placeCard,
main .rideCard,
main .marketCard,
main .jobCard,
main .eventCard,
main .realtyCard,
main .musicCard,
main .card{
  background:linear-gradient(180deg,#10283b,#0b1a28)!important;
}

/* 27. Мелкие бейджи */
.badge,
.tag,
.chip,
[class*="Badge"],
[class*="Tag"],
[class*="Chip"]{
  background:rgba(96,165,250,.12)!important;
  border:1px solid rgba(96,165,250,.25)!important;
  color:#dbeafe!important;
}

/* 28. Адаптив */
@media(max-width:760px){
  .tourismCard,
  .placeCard,
  .rideCard,
  .marketCard,
  .jobCard,
  .eventCard,
  .card,
  article,
  [class*="Card"]{
    border-radius:18px!important;
  }
}
