/* Файл: assets/css/app.css
   Назначение: стили проекта поверх Bootstrap 5.
   Здесь мы приводим интерфейс к единому виду: отступы, цвета, карточки, сайдбар.
*/

:root{
  --av-bg: #f3f6fb;
  --av-card: #ffffff;
  --av-border: rgba(15, 23, 42, .08);
  --av-text: #0f172a;
  --av-muted: #64748b;
  --av-primary: #111827; /* почти чёрный, как у тебя на кнопках */
  --av-success: #16a34a;
}

html, body { height: 100%; }
body{
  background: var(--av-bg);
  color: var(--av-text);
}

/* Общие мелочи */
a { color: inherit; }
a:hover { color: inherit; opacity: .9; }
.text-muted { color: var(--av-muted) !important; }

.av-shell{
  min-height: 100vh;
}

/* Сайдбар */
.av-sidebar{
  width: 280px;
  flex: 0 0 280px;      /* фиксированная ширина */
  flex-shrink: 0;       /* НЕ сжимать */
  background: var(--av-card);
  border-right: 1px solid var(--av-border);
}
.av-brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 16px 16px;
  border-bottom: 1px solid var(--av-border);
}
.av-brand__logo{
  width:36px; height:36px;
  border-radius: 12px;
  background: #111827;
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-weight:700;
}
.av-nav{
  padding: 12px 10px;
}
.av-nav-title{
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--av-muted);
  padding: 10px 10px 6px;
}
.av-nav a{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 12px;
  text-decoration:none;
  color: var(--av-text);
}
.av-nav a:hover{
  background: rgba(2, 6, 23, .04);
}
.av-nav a.active{
  background: rgba(17, 24, 39, .08);
  font-weight: 600;
}

/* Верхняя панель */
.av-topbar{
  background: var(--av-card);
  border-bottom: 1px solid var(--av-border);
}
.av-search{
  max-width: 560px;
}
.av-pill{
  border-radius: 999px !important;
}

/* Карточки/блоки */
.av-card{
  background: var(--av-card);
  border: 1px solid var(--av-border);
  border-radius: 18px;
}
.av-shadow{
  box-shadow: 0 8px 28px rgba(2, 6, 23, .06);
}

/* Карточка объявления */
.av-ad-card{
  border: 1px solid var(--av-border);
  border-radius: 18px;
  overflow:hidden;
  background: var(--av-card);
  box-shadow: 0 10px 30px rgba(2, 6, 23, .06);
  transition: transform .12s ease, box-shadow .12s ease;
}
.av-ad-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 40px rgba(2, 6, 23, .10);
}
.av-ad-img{
  aspect-ratio: 4/3;
  object-fit: cover;
  width: 100%;
}
.av-price{
  position:absolute;
  top: 12px; left: 12px;
  background: var(--av-success);
  color:#fff;
  font-weight: 800;
  padding: 6px 12px;
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(22, 163, 74, .25);
}
.av-ad-meta{
  font-size: 12px;
  color: var(--av-muted);
}

/* Табличка характеристик */
.av-spec{
  font-size: 13px;
}
.av-spec-row{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px dashed rgba(15, 23, 42, .10);
}
.av-spec-row:last-child{ border-bottom:0; }
.av-spec-row span:first-child{ color: var(--av-muted); }

/* Кнопки */
.btn-dark{
  background: var(--av-primary);
  border-color: var(--av-primary);
}

/* Адаптив: сайдбар на мобиле будет сверху (позже сделаем offcanvas, если захочешь) */
@media (max-width: 992px){
  .av-sidebar{ display:none; }
}
