/* =========================
   SEARCH (app/Views/search/index.php)
   - sem :root (usas o da main)
   - palete soft / gold (com fallbacks)
======================== */

.search-page{
  max-width: var(--max-w, 1200px);
  margin: 18px auto 26px;
  padding: 0 16px;
}

/* ---------- TOPBAR ---------- */.search-topbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  padding: 10px 4px 14px;
  border-bottom: 1px solid var(--ll-border-soft, rgba(15,23,42,.08));
  margin-bottom: 16px;
}

.search-topbar-left{min-width: 220px;}

.search-h1{
  margin:0;
  font-size:15px;
  font-weight: 600;
  letter-spacing: -.2px;
  color: var(--ll-text-main, #111827);
  display:flex;
  align-items:center;
  gap:10px;
}
.search-h1 i{
  color: var(--ll-accent, #caa24c);
  font-size: 13px;
}
.search-sub{
  margin: 6px 0 0;
  font-size: 10px;
  color: var(--ll-text-muted, #6b7280);
  line-height: 1.35;
}

.search-filter-toggle{
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  background: var(--ll-bg-card, #ffffff);
  color: var(--ll-text-main, #111827);
  border-radius: 12px;
  padding: 9px 12px;
  font-weight: 600;
  font-size: 13px;
  cursor:pointer;
  display:none; /* só mobile */
  gap:8px;
  align-items:center;
  box-shadow: 0 6px 18px rgba(2,6,23,.04);
}
.search-filter-toggle i{color: var(--ll-accent, #caa24c);}

/* ---------- LAYOUT ---------- */
.search-layout{
  display:grid;
  grid-template-columns: 290px 1fr;
  gap: 18px;
  align-items:start;
}

.search-filters{
  position: sticky;
  top: 18px;
  align-self:start;
}


.search-card{
  background: var(--ll-bg-card, #fff);
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  border-radius: 16px;
  padding: 14px;
  box-shadow: 0 10px 28px rgba(2,6,23,.05);
}

.search-card-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom: 12px;
}

.search-card-title{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight: 600;
  font-size: 13px;
  color: var(--ll-text-main, #111827);
}
.search-card-title i{color: var(--ll-accent, #caa24c);}

.btn-ghost-slate{
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  background: rgba(255,255,255,.9);
  color: var(--ll-text-muted, #6b7280);
  padding: 8px 10px;
  border-radius: 12px;
  text-decoration:none;
  font-weight: 600;
  font-size: 12px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
}
.btn-ghost-slate:hover{background: rgba(250,250,250,.95);}

.search-form{
  display:flex;
  flex-direction:column;
  gap: 9px;
}

.lbl{
  font-size: 12px;
  font-weight: 600;
  color: var(--ll-text-muted, #6b7280);
  margin-top: 4px;
}

.in, .sel{
  width:100%;
  border-radius: 12px;
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  background: rgba(255,255,255,.92);
  padding: 10px 12px;
  font-size: 13px;
  color: var(--ll-text-main, #111827);
  outline:none;
  transition: box-shadow .15s ease, border-color .15s ease, background .15s ease;
}

.in:focus, .sel:focus{
  border-color: rgba(202,162,76,.55);
  box-shadow: 0 0 0 3px rgba(202,162,76,.18);
  background: #fff;
}

.btn-amber{
  margin-top: 8px;
  width:100%;
  border: 0;
  border-radius: 12px;
  padding: 11px 12px;
  font-weight: 600;
  font-size: 13px;
  cursor:pointer;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  color: #1b1b1b;
  background: linear-gradient(90deg,
    var(--ll-accent, #caa24c),
    var(--ll-accent-dark, #b38c3e)
  );
  box-shadow: 0 12px 26px rgba(202,162,76,.22);
}
.btn-amber:hover{
  filter: brightness(.98);
  box-shadow: 0 14px 30px rgba(202,162,76,.26);
}
.w-100{width:100%;}

/* ---------- RESULTS HEADER ---------- */
.search-results{
  min-width: 0;
}

.results-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap: 12px;
  margin-bottom: 12px;
}

.results-title{
  margin:0;
  font-size: 10px;
  font-weight: 400;
  color: var(--ll-text-main, #111827);
}

.results-meta{
  margin-top: 8px;
  display:flex;
  gap: 8px;
  flex-wrap:wrap;
}

.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  background: rgba(255,255,255,.85);
  font-size: 12px;
  font-weight: 600;
  color: var(--ll-text-muted, #6b7280);
}
.pill i{color: var(--ll-accent, #caa24c);}

/* ---------- EMPTY ---------- */
.no-results{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 18px;
  border-radius: 16px;
  border: 1px dashed rgba(15,23,42,.18);
  background: rgba(255,255,255,.70);
  color: var(--ll-text-main, #111827);
}
.no-results i{
  font-size: 22px;
  color: var(--ll-accent, #caa24c);
}
.muted{color: var(--ll-text-muted, #6b7280); font-size: 13px;}

/* ---------- CARDS GRID ---------- */
.cards-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
}

/* Card base: mais soft, menos sombra pesada */
.ad-card{
  border-radius: 18px;
  background: rgba(255,255,255,.92);
  border: 1px solid var(--ll-border-soft, rgba(15,23,42,.10));
  overflow:hidden;
  box-shadow: 0 10px 24px rgba(2,6,23,.05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ad-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 14px 32px rgba(2,6,23,.08);
}

/* Diferenciação por plano (bem discreta) */
.ad-card.is-premium{ border-color: rgba(202,162,76,.45); }
.ad-card.is-pro{ border-color: rgba(160,140,90,.22); }
.ad-card.is-free{ border-color: rgba(15,23,42,.10); }

/* Media */
.ad-media{
  position:relative;
  display:block;
  height: 148px;
  background: rgba(17,24,39,.04);
  overflow:hidden;
  text-decoration:none;
}
.ad-media img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
  transform: scale(1);
  transition: transform .35s ease;
}
.ad-card:hover .ad-media img{ transform: scale(1.02); }

.ad-media-empty{
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color: rgba(107,114,128,.9);
  font-weight: 600;
  font-size: 12px;
}

/* ✅ LOGO: pequeno, com fundo, e NUNCA tapa a foto toda */
.ad-logo{
  position:absolute;
  left: 10px;
  bottom: 10px;            /* fica em baixo (menos conflito com badges) */
  width: 42px;
  height: 42px;
  object-fit: contain;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(15,23,42,.12);
  border-radius: 12px;
  padding: 6px;
  box-shadow: 0 10px 22px rgba(2,6,23,.10);
  z-index: 2;
}

/* Badge: pequeno e leve */
.ad-badge{
  position:absolute;
  top: 10px;
  right: 10px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .3px;
  line-height: 1;
  box-shadow: 0 10px 20px rgba(2,6,23,.12);
  z-index: 3;
  border: 1px solid transparent;
  text-transform: uppercase;
}

.ad-badge.premium{
  background: linear-gradient(90deg, #d4af37, #b68a1f);
  color: #fff;
  border-color: rgba(182,138,31,.45);
}

.ad-badge.pro{
  background: linear-gradient(90deg, #4f86c6, #3567a5);
  color: #fff;
  border-color: rgba(53,103,165,.40);
}

.ad-badge.free{
  background: linear-gradient(90deg, #7a7f87, #5f6670);
  color: #fff;
  border-color: rgba(95,102,112,.38);
}


/* ===== SEARCH: força badges finais ===== */
.search-page .ad-media .ad-badge{
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  z-index: 6 !important;
  border: 1px solid transparent !important;
  box-shadow: 0 10px 20px rgba(2,6,23,.14) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* PREMIUM = faixa dourada/brilhante */
.search-page .ad-media .ad-badge.premium{
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #f3d77a 0%, #d9ab34 45%, #b8841f 100%) !important;
  border: 1px solid rgba(160,111,18,.55) !important;
  box-shadow:
    0 10px 20px rgba(2,6,23,.16),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -1px 0 rgba(120,80,10,.18) !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.18) !important;
  overflow: hidden !important;
  z-index: 5 !important;
}

.search-page .ad-media .ad-badge.premium::before{
  content: "";
  position: absolute;
  top: -30%;
  left: -60%;
  width: 38%;
  height: 170%;
  background: linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.18) 35%,
    rgba(255,255,255,.75) 50%,
    rgba(255,255,255,.18) 65%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(22deg);
  animation: llPremiumShine 2.8s linear infinite;
  pointer-events: none;
}


@keyframes llPremiumShine{
  0%{
    left: -60%;
  }
  100%{
    left: 130%;
  }
}

/* PRO = azul */
.search-page .ad-media .ad-badge.pro{
  background: linear-gradient(90deg, #4f86c6 0%, #3567a5 100%) !important;
  color: #ffffff !important;
  border-color: rgba(53,103,165,.42) !important;
}

/* GRATUITO = cinza escuro */
.search-page .ad-media .ad-badge.free{
  background: linear-gradient(90deg, #7b818a 0%, #5f6670 100%) !important;
  color: #ffffff !important;
  border-color: rgba(95,102,112,.40) !important;
}

/* Body */
.ad-body{
  padding: 12px 12px 13px;
  display:flex;
  flex-direction:column;
  gap: 8px;
}

.ad-title{
  margin:0;
  font-size: 14px;
  font-weight: 800;
  color: var(--ll-text-main, #111827);
  line-height: 1.15;
  max-height: 34px;
  overflow:hidden;
}

.ad-meta{
  display: flex;
  flex-direction: column;
  gap: 5px;
  color: var(--ll-text-muted, #6b7280);
  font-size: 12px;
  font-weight: 700;
}

.ad-meta span{
  display: flex;
  align-items: center;
  gap: 7px;
  line-height: 1.25;
}

.ad-meta i{
  color: rgba(202,162,76,.95);
  margin-right: 0;
  width: 14px;
  min-width: 14px;
  text-align: center;
}

.ad-desc{
  margin:0;
  font-size: 12.5px;
  line-height: 1.35;
  color: var(--ll-text-muted, #6b7280);
  min-height: 34px;
}

.ad-actions{
  display:flex;
  gap: 10px;
  margin-top: 6px;
}

.btn-main{
  flex: 1 1 0;
  border-radius: 12px;
  padding: 6px 6px;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  font-weight: 800;
  font-size: 12px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(17,24,39,.86) !important;
  color: #fff;
}
.btn-main:hover{ background: rgba(17,24,39,.92); }

.btn-ghost{
  flex: 1 1 0;
  border-radius: 12px;
  padding: 9px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  font-weight: 800;
  font-size: 12px;
  cursor:pointer;
  border: 1px solid rgba(202,162,76,.35);
  background: rgba(202,162,76,.12);
  color: #6b4f16;
}
.btn-ghost:hover{
  background: rgba(202,162,76,.16);
  border-color: rgba(202,162,76,.45);
}

/* ---------- PAGER ---------- */
.pager{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: 12px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--ll-border-soft, rgba(15,23,42,.08));
}

.pg-btn{
  border-radius: 12px;
  padding: 9px 12px;
  text-decoration:none;
  font-weight: 800;
  font-size: 12px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.9);
  color: var(--ll-text-main, #111827);
  display:inline-flex;
  align-items:center;
  gap: 8px;
}
.pg-btn:hover{ background: #fff; }
.pg-btn.is-disabled{
  
  pointer-events:none;
}

.pg-pages{
  display:flex;
  align-items:center;
  gap: 8px;
  flex-wrap:wrap;
  justify-content:center;
}

.pg-num{
  min-width: 38px;
  height: 36px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.9);
  color: var(--ll-text-main, #111827);
  text-decoration:none;
  font-weight: 800;
  font-size: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pg-num:hover{background:#fff;}
.pg-num.is-active{
  background: rgba(202,162,76,.18);
  border-color: rgba(202,162,76,.45);
  color: #6b4f16;
}
.pg-dots{color: rgba(107,114,128,.85); font-weight: 900;}

/* ---------- MODAL (Orçamento) ---------- */
.ll-modal{
  position:fixed;
  inset:0;
  display:none;
  justify-content:center;
  align-items:center;
  background: rgba(17,24,39,.45);
  backdrop-filter: blur(6px);
  z-index: 9999;
  padding: 16px;
}

.ll-modal .modal-dialog{
  width:100%;
  max-width: 560px;
  border-radius: 18px;
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(15,23,42,.12);
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
  padding: 18px;
  position:relative;
}

.ll-modal .modal-close{
  position:absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.85);
  cursor:pointer;
  font-size: 18px;
  font-weight: 900;
  color: rgba(17,24,39,.75);
}
.ll-modal .modal-close:hover{ background:#fff; }

.ll-modal .modal-grid{
  display:flex;
  flex-direction:column;
  gap: 10px;
  margin-top: 10px;
}

.ll-modal input,
.ll-modal textarea{
  width:100%;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.12);
  background: rgba(17,24,39,.03);
  padding: 10px 12px;
  font-size: 13px;
  outline:none;
}
.ll-modal textarea{ min-height: 110px; resize: vertical; }

.ll-modal input:focus,
.ll-modal textarea:focus{
  border-color: rgba(202,162,76,.55);
  box-shadow: 0 0 0 3px rgba(202,162,76,.18);
  background:#fff;
}

.modal-actions{
  display:flex;
  justify-content:flex-end;
  gap: 10px;
  margin-top: 4px;
}

.ll-modal .btn{
  border: 0;
  border-radius: 12px;
  padding: 10px 14px;
  font-weight: 950;
  font-size: 13px;
  cursor:pointer;
  color: #1b1b1b;
  background: linear-gradient(90deg,
    var(--ll-accent, #caa24c),
    var(--ll-accent-dark, #b38c3e)
  );
}
.ll-modal .btn:hover{ filter: brightness(.98); }

.modal-feedback{
  margin-top: 10px;
  display:none;
  font-weight: 900;
  font-size: 13px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.85);
}
.modal-feedback.is-ok{
  border-color: rgba(16,185,129,.22);
  background: rgba(16,185,129,.10);
  color: rgba(6,95,70,.95);
}
.modal-feedback.is-error{
  border-color: rgba(239,68,68,.22);
  background: rgba(239,68,68,.10);
  color: rgba(153,27,27,.95);
}




/* ===== FIX DEFINITIVO DO LOGO (anti-css-global) ===== */

/* garante contexto para o absolute do logo */
.search-page .ad-media{
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

/* a imagem principal continua normal */
.search-page .ad-media > img:not(.ad-logo){
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* LOGO: neutraliza img{width:100%} e afins */
.search-page .ad-media > img.ad-logo{
  position: absolute !important;
  left: 10px !important;
  bottom: 10px !important;
  z-index: 5 !important;

  width: 70px !important;
  height: 50px !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;

  object-fit: contain !important;
  background: rgba(255,255,255,.92) !important;
  padding: 4px !important;
  border-radius: 10px !important;
  border: 2px solid rgba(255,255,255,.95) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.14) !important;
}
/* mobile menor */
@media (max-width: 560px){
  .search-page .ad-media > img.ad-logo{
    width: 28px !important;
    height: 28px !important;
  }
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 992px){
  .search-layout{ grid-template-columns: 1fr; }
  .search-filters{ position: static; }
  .search-filter-toggle{ display:inline-flex; }

  /* caixa de filtros vira colapsável */
  #filtersBox{ display:none; }
  #filtersBox.is-open{ display:block; }
}

@media (max-width: 560px){
  .search-page{ padding: 0 12px; }
  .cards-grid{ grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
  .ad-media{ height: 132px; }
  .ad-logo{ width: 60px; height: 40px; padding: 5px; border-radius: 11px; }
  .ad-actions{ flex-direction:row; }
}



/* =========================================================
   SEARCH — THEME OVERRIDE (CORES/FOCUS/HOVER) | SAFE
   - não altera layout, só palete + estados
   ========================================================= */

/* ---------- Topbar / títulos ---------- */
.search-topbar{
  border-bottom-color: var(--ll-border);
}
.search-h1,
.results-title{
  color: var(--ll-text);
}
.search-sub,
.muted{
  color: var(--ll-muted);
}
.search-h1 i,
.search-card-title i,
.pill i,
.no-results i{
  color: var(--ll-brand);
}

/* ---------- Cards / superfícies ---------- */
.search-card{
  background: var(--ll-surface);
  border-color: var(--ll-border);
  box-shadow: var(--ll-shadow-sm);
}
.pill{
  border-color: var(--ll-border);
  background: rgba(255,255,255,.70);
  color: var(--ll-muted);
}

/* ---------- Inputs / selects (focus no brand) ---------- */
.in, .sel{
  border-color: var(--ll-border);
  background: rgba(255,255,255,.86);
  color: var(--ll-text);
}
.in:focus, .sel:focus{
  border-color: color-mix(in srgb, var(--ll-brand) 55%, var(--ll-border));
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--ll-brand) 18%, transparent);
  background: #fff;
}

/* ---------- Botões "ghost" (vidro leve) ---------- */
.btn-ghost-slate,
.pg-btn,
.pg-num{
  border-color: var(--ll-border);
  background: rgba(255,255,255,.60);
  color: var(--ll-text);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 10px 22px rgba(15,23,42,.08);
}
.btn-ghost-slate:hover,
.pg-btn:hover,
.pg-num:hover{
  background: rgba(255,255,255,.78);
}

/* ---------- Botão PESQUISAR (destaque) ---------- */
/* mantém a classe .btn-amber, mas vira "brand" */
.btn-amber{
  color: #fff;
  background: linear-gradient(90deg, var(--ll-brand), var(--ll-brand-2));
  box-shadow: 0 14px 30px rgba(15,23,42,.14);
}
.btn-amber i{ color:#fff; }
.btn-amber:hover{
  filter: brightness(.98);
  box-shadow: 0 18px 40px rgba(15,23,42,.18);
}
.btn-amber:active{ transform: translateY(1px); }

/* ---------- Cards de anúncios ---------- */
.cards-grid .ad-card{
  background: rgba(255,255,255,.92);
  border-color: var(--ll-border);
  box-shadow: 0 10px 24px rgba(2,6,23,.06);
}
.cards-grid .ad-card:hover{
  border-color: color-mix(in srgb, var(--ll-brand) 22%, var(--ll-border));
  box-shadow: 0 16px 34px rgba(2,6,23,.10);
}

/* Diferenciação por plano (discreta e coerente) */
.ad-card.is-premium{
  border-color: rgba(212,175,55,.45);
}

.ad-card.is-pro{
  border-color: rgba(79,134,198,.35);
}

.ad-card.is-free{
  border-color: rgba(122,127,135,.22);
}

/* Media */
.ad-media{
  background: color-mix(in srgb, var(--ll-bg) 55%, var(--ll-surface));
}

/* Badge (troca gold) */
.ad-badge{
  border-color: rgba(15,23,42,.10);
  color: #fff;
}
.ad-badge.premium{
  background: linear-gradient(90deg, var(--ll-accent), var(--ll-accent-dark));
  color:#fff;
}
.ad-badge.pro{
  background: linear-gradient(90deg, var(--ll-pro), var(--ll-pro-dark));
  color:#fff;
  border-color: color-mix(in srgb, var(--ll-pro) 24%, rgba(15,23,42,.12));
}
.ad-badge.free{
  background: rgba(15,23,42,.10);
  color: rgba(15,23,42,.78);
}

/* Textos no card */
.ad-title{ color: var(--ll-text); }
.ad-meta,
.ad-desc{ color: var(--ll-muted); }
.ad-meta i{
  color: var(--ll-brand);
}

/* ---------- Ações no card ---------- */
/* btn-main continua escuro, mas com “brand ring” no hover */
.btn-main{
  flex: 1 1 0;
  border-radius: 12px;
  padding: 6px 6px;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  font-weight: 800;
  font-size: 12px;
  border: 1px solid rgba(15,23,42,.10);
  background: linear-gradient(90deg, #4b5563, #374151) !important;
  color: #fff;
  box-shadow: 0 8px 18px rgba(15,23,42,.12);
}

.btn-main:hover{
  background: linear-gradient(90deg, #374151, #1f2937) !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.16);
}

/* btn-ghost deixa de ser dourado e passa para brand soft */
.btn-ghost{
  border-color: color-mix(in srgb, var(--ll-brand) 26%, var(--ll-border));
  background: color-mix(in srgb, var(--ll-brand) 10%, #fff);
  color: color-mix(in srgb, var(--ll-brand) 70%, #000);
}
.btn-ghost:hover{
  background: color-mix(in srgb, var(--ll-brand) 14%, #fff);
  border-color: color-mix(in srgb, var(--ll-brand) 34%, var(--ll-border));
}

/* ---------- Paginação ativa ---------- */
.pg-num.is-active{
  background: color-mix(in srgb, var(--ll-brand) 14%, #fff);
  border-color: color-mix(in srgb, var(--ll-brand) 34%, var(--ll-border));
  color: color-mix(in srgb, var(--ll-brand) 75%, #000);
}

/* ---------- Empty / no results ---------- */
.no-results{
  border-color: color-mix(in srgb, var(--ll-border-strong) 80%, transparent);
  background: rgba(255,255,255,.70);
  color: var(--ll-text);
}

/* ---------- Modal (orçamento) — coerente com theme ---------- */
.ll-modal{
  background: rgba(15,23,42,.45);
}
.ll-modal .modal-dialog{
  background: rgba(255,255,255,.92);
  border-color: var(--ll-border);
}
.ll-modal input,
.ll-modal textarea{
  border-color: var(--ll-border-strong);
  background: color-mix(in srgb, var(--ll-bg) 55%, #fff);
  color: var(--ll-text);
}
.ll-modal input:focus,
.ll-modal textarea:focus{
  border-color: color-mix(in srgb, var(--ll-brand) 55%, var(--ll-border));
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--ll-brand) 18%, transparent);
  background:#fff;
}
.ll-modal .btn{
  color:#fff;
  background: linear-gradient(90deg, var(--ll-brand), var(--ll-brand-2));
}
.ll-modal .modal-close{
  border-color: var(--ll-border);
  background: rgba(255,255,255,.70);
  color: rgba(15,23,42,.70);
}

/* ---------- Toggle filtros (mobile) ---------- */
.search-filter-toggle{
  border-color: var(--ll-border);
  background: rgba(255,255,255,.70);
  color: var(--ll-text);
}
.search-filter-toggle i{ color: var(--ll-brand); }

/* ---------- CSS para a loclizacao deprocura ---------- */
.active-filter{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(85,107,47,.08);
  border:1px solid rgba(85,107,47,.18);
  color:#556b2f;
  font-weight:700;
  font-size:14px;
}



@media (max-width: 768px){

  .search-page{
    margin-top: 8px !important;
    padding-top: 8px !important;
  }

  .search-topbar{
    padding-top: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 12px !important;
  }

  .search-layout,
  .search-results{
    margin-top: 0 !important;
  }

  .search-page .ad-media > img.ad-logo{
    width: 50px !important;
    height: 36px !important;
  }
}



@media (max-width: 768px){
  body .search-page{
    margin-top: 14px !important;
    padding-top: 6px !important;
  }
}

@media (max-width: 768px){
  .search-h1{
    font-size: 20px !important;
    line-height: 1.2;
  }

  .search-sub{
    font-size: 10px;
  }
}


/* =====================================================
   SEARCH — BOTÃO VER DETALHES MAIS ELEGANTE NO MOBILE
===================================================== */

.search-page .ad-actions{
  display:flex;
  gap:8px;
  margin-top:10px;
}

.search-page .btn-main,
.search-page .btn-ghost{
  min-height:38px !important;
  height:38px !important;
  padding:0 12px !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;

  border-radius:12px !important;
  font-size:11.5px !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.search-page .btn-main i,
.search-page .btn-ghost i{
  font-size:12px !important;
}

/* Apenas mobile */
@media (max-width:560px){

  .search-page .ad-actions{
    margin-top:12px;
    gap:8px !important;
  }

  .search-page .btn-main{
    width:100%;
    min-height:46px !important;
    height:46px !important;
    padding:0 16px !important;

    border-radius:15px !important;
    font-size:13px !important;
    font-weight:850 !important;

    background:linear-gradient(
      135deg,
      #4b5563,
      #374151
    ) !important;

    border:1px solid rgba(15,23,42,.10) !important;

    box-shadow:
      0 7px 16px rgba(15,23,42,.14) !important;
  }

  .search-page .btn-main i{
    font-size:14px !important;
  }

  .search-page .btn-main:active{
    transform:scale(.985);
    background:linear-gradient(
      135deg,
      #374151,
      #293241
    ) !important;
  }
}
