/* ============================================================
   BUSCA TOP 1 — Cadeira de Escritório IND
   Prefixo: .bt1-*  (para evitar conflito com qualquer tema)
   Paleta padrão: grafite #111827 (premium, autoridade)
   ============================================================ */

:root{
  --bt1-primary: #111827;
  --bt1-primary-dark: #000000;
  --bt1-text: #0F1115;
  --bt1-text-soft: #4B5563;
  --bt1-bg: #FFFFFF;
  --bt1-bg-soft: #F6F7F9;
  --bt1-border: #E3E6EB;
  --bt1-shadow: 0 6px 24px rgba(15,17,21,.08);
  --bt1-radius: 14px;
  --bt1-radius-pill: 999px;
  --bt1-success: #1A7F37;
  --bt1-hot: #fe3c3c;
}

.bt1-section{
  background: linear-gradient(180deg,#FFFFFF 0%,#F8F9FB 100%);
  padding: 28px 16px 32px;
  border-bottom: 1px solid var(--bt1-border);
  box-sizing: border-box;
}
.bt1-section *,
.bt1-section *::before,
.bt1-section *::after { box-sizing: border-box; }

.bt1-wrap{ max-width: 920px; margin: 0 auto; }

/* Variante compacta (para header / widget) */
.bt1-variant-compact{
  padding: 10px 12px;
  background: transparent;
  border-bottom: 0;
}
.bt1-variant-compact .bt1-wrap{ max-width: 640px; }
.bt1-variant-compact .bt1-kicker,
.bt1-variant-compact .bt1-tags,
.bt1-variant-compact .bt1-trust{ display:none; }

/* Sticky opcional */
.bt1-sticky .bt1-form{ position: sticky; top: 56px; z-index: 40; }

/* Kicker */
.bt1-kicker{
  display:flex; align-items:center; gap:8px;
  font-size:14px; color:var(--bt1-text-soft);
  margin:0 0 12px; font-weight:500;
}
.bt1-kicker strong{ color: var(--bt1-text); font-weight:700;}
.bt1-dot{
  width:8px; height:8px; border-radius:50%;
  background: var(--bt1-success);
  box-shadow: 0 0 0 4px rgba(26,127,55,.15);
  display:inline-block;
}

/* Form */
.bt1-form{ position:relative; margin-bottom: 14px; }
.bt1-box{
  display:flex; align-items:center; gap:8px;
  background: var(--bt1-bg);
  border: 2px solid var(--bt1-border);
  border-radius: var(--bt1-radius);
  padding: 6px 6px 6px 14px;
  box-shadow: var(--bt1-shadow);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.bt1-box:focus-within{
  border-color: var(--bt1-primary);
  box-shadow: 0 0 0 4px rgba(17,24,39,.10), var(--bt1-shadow);
}
.bt1-icon{ color: var(--bt1-text-soft); flex-shrink:0; }
.bt1-input{
  flex:1; border:0; outline:0; background:transparent;
  font-size: 17px; font-weight:500; color: var(--bt1-text);
  padding: 14px 6px; min-width:0;
  -webkit-appearance:none; appearance:none;
}
.bt1-input::placeholder{ color:#8B93A1; font-weight:400; }
.bt1-input::-webkit-search-decoration,
.bt1-input::-webkit-search-cancel-button,
.bt1-input::-webkit-search-results-button,
.bt1-input::-webkit-search-results-decoration{ display:none; }

.bt1-clear{
  border:0; background:transparent;
  color: var(--bt1-text-soft);
  width:32px; height:32px; border-radius:50%;
  cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
}
.bt1-clear:hover{ background: var(--bt1-bg-soft); color: var(--bt1-text); }

.bt1-btn{
  display:inline-flex; align-items:center; gap:8px;
  background: var(--bt1-primary); color:#fff;
  border:0; border-radius: 10px;
  padding: 12px 20px;
  font-size: 15px; font-weight:700; letter-spacing:.2px;
  cursor:pointer; white-space:nowrap;
  transition: background .2s ease, transform .05s ease;
  font-family: inherit;
}
.bt1-btn:hover{ background: var(--bt1-primary-dark); }
.bt1-btn:active{ transform: translateY(1px); }

/* Suggest */
.bt1-suggest{
  position:absolute; left:0; right:0; top: calc(100% + 8px);
  background:#fff;
  border:1px solid var(--bt1-border);
  border-radius: var(--bt1-radius);
  box-shadow: 0 14px 40px rgba(15,17,21,.12);
  padding: 14px 16px;
  z-index: 1000;
  max-height: 70vh; overflow-y:auto;
}
.bt1-suggest-title{
  font-size: 12px; text-transform: uppercase; letter-spacing: 1px;
  color: var(--bt1-text-soft); margin: 0 0 8px; font-weight: 700;
}
.bt1-suggest-block{ margin-bottom: 10px; }
.bt1-suggest-block:last-child{ margin-bottom: 0; }

.bt1-suggest-chips{
  list-style:none; padding:0; margin:0;
  display:flex; flex-wrap:wrap; gap:6px;
}
.bt1-suggest-chips a{
  display:inline-block; padding: 7px 12px;
  background: var(--bt1-bg-soft); color: var(--bt1-text);
  border-radius: var(--bt1-radius-pill);
  font-size:14px; text-decoration:none;
  border:1px solid transparent; transition: all .15s ease;
}
.bt1-suggest-chips a:hover{
  background:#fff; border-color: var(--bt1-primary); color: var(--bt1-primary);
}

.bt1-suggest-products{ list-style:none; padding:0; margin:0; }
.bt1-suggest-products li{
  display:flex; align-items:center; gap:12px;
  padding:10px 6px; border-radius:8px;
  cursor:pointer; text-decoration:none; color: var(--bt1-text);
  transition: background .15s ease;
}
.bt1-suggest-products li:hover,
.bt1-suggest-products li.bt1-active{ background: var(--bt1-bg-soft); }
.bt1-suggest-products img{
  width:48px; height:48px; object-fit:cover;
  border-radius:8px; background:#eee; flex-shrink:0;
}
.bt1-prod-info{ flex:1; min-width:0; }
.bt1-prod-title{
  font-size:14px; font-weight:600;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.bt1-prod-price{ font-size:13px; color: var(--bt1-primary); font-weight:700; }

.bt1-suggest-viewall{
  display:block; margin-top:10px; text-align:center; padding:10px;
  font-weight:700; color: var(--bt1-primary); text-decoration:none;
  border-top: 1px solid var(--bt1-border);
}
.bt1-suggest-viewall:hover{ background: var(--bt1-bg-soft); }

.bt1-suggest-empty{ padding: 4px; font-size:14px; color: var(--bt1-text-soft); }
.bt1-suggest-loading{ padding: 4px; font-size:14px; color: var(--bt1-text-soft); display:flex; align-items:center; gap:8px; }

.bt1-spin{
  display:inline-block; width:14px; height:14px;
  border:2px solid var(--bt1-border); border-top-color: var(--bt1-primary);
  border-radius:50%; animation: bt1-spin .8s linear infinite;
}
@keyframes bt1-spin{ to { transform: rotate(360deg);} }

/* Tags rápidas */
.bt1-tags{
  display:flex; flex-wrap:wrap; align-items:center; gap:6px;
  margin-top: 6px;
}
.bt1-tags-label{
  font-size:13px; color: var(--bt1-text-soft); font-weight:600; margin-right:4px;
}
.bt1-tag{
  display:inline-block; padding: 6px 12px;
  border:1px solid var(--bt1-border);
  border-radius: var(--bt1-radius-pill);
  font-size:13px; color: var(--bt1-text); background:#fff;
  text-decoration:none; transition: all .15s ease; font-weight:500;
}
.bt1-tag:hover{ border-color: var(--bt1-primary); color: var(--bt1-primary); background:#fff; }
.bt1-tag-hot{
  background: var(--bt1-hot); color:#fff; border-color: var(--bt1-hot); font-weight:700;
}
.bt1-tag-hot:hover{ background:#d92626; color:#fff; border-color:#d92626; }
.bt1-tag-alt{ background: var(--bt1-bg-soft); }

/* Trust */
.bt1-trust{
  list-style:none; padding:0; margin:14px 0 0;
  display:flex; flex-wrap:wrap; gap:14px;
  font-size:13px; color: var(--bt1-text-soft); font-weight:500;
}
.bt1-trust li{ white-space:nowrap; }
.bt1-trust li::before{ content:"✓ "; color: var(--bt1-success); font-weight:800; }

/* Screen reader */
.bt1-sr{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* Focus visible */
.bt1-btn:focus-visible,
.bt1-tag:focus-visible,
.bt1-suggest-chips a:focus-visible,
.bt1-clear:focus-visible{
  outline: 3px solid #fe3c3c; outline-offset: 2px;
}

/* Mobile */
@media (max-width: 640px){
  .bt1-section{ padding: 18px 12px 22px; }
  .bt1-input{ font-size: 16px; padding: 12px 4px; } /* 16px evita zoom iOS */
  .bt1-btn-text{ display:none; }
  .bt1-btn{ padding: 12px 14px; }
  .bt1-kicker{ font-size:13px; }
  .bt1-trust{ gap:10px; font-size:12px; }
  .bt1-tags-label{ width:100%; margin-bottom:4px; }
}

/* Correções defensivas para temas que zeram margin/padding agressivamente */
.bt1-section ul.bt1-trust,
.bt1-section ul.bt1-suggest-chips,
.bt1-section ul.bt1-suggest-products{ list-style:none !important; padding-left:0 !important; }
.bt1-section .bt1-form input[type="search"]{ background: transparent; }

/* ============================================================
 * Hero wrapper (injeção automática na home via wp_body_open)
 * ============================================================ */
.bt1-hero-wrapper{
    display:block;
    width:100%;
    padding:28px 20px 24px;
    background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%);
    border-bottom:1px solid #eef2f7;
    box-sizing:border-box;
}
.bt1-hero-wrapper .bt1-section{
    max-width:960px;
    margin:0 auto;
}
@media (max-width:640px){
    .bt1-hero-wrapper{ padding:20px 14px 18px; }
}
