/* ===========================
   BT Panel Consultores - Scope
   Todo adentro de .btpc
   =========================== */

.btpc {
  /* Mini reset contextual para evitar herencias agresivas del tema/Elementor */
  --btpc-text:#1f1f1f;
  --btpc-primary:#2A216D;
  --btpc-primary-600:#4534CF;
  --btpc-border:#e5e7eb;
  --btpc-muted:#f8f9fb;

  color: var(--btpc-text);
}
.btpc * { box-sizing: border-box; }
.btpc a { text-decoration: none; }

/* Panel base */
.btpc .bt-panel{
  background:#fff; 
  border:1px solid var(--btpc-border); 
  border-radius:12px;
  padding:16px; 
  margin:12px 0;
}
.btpc .bt-panel-title{ 
  margin:0 0 8px; 
  font-size:1.15rem; 
  font-weight:700; 
}

/* Estados */
.btpc .bt-ok{ background:#e8fff2; border-color:#b6f0c5; }
.btpc .bt-warn{ background:#fff7e6; border-color:#ffd699; }
.btpc .bt-error{ background:#ffecec; border-color:#ffb3b3; }

/* Botones */
.btpc .bt-button{
  display:inline-block; 
  background:var(--btpc-primary); 
  color:#fff; 
  border:none;
  border-radius:8px; 
  padding:.5rem 1rem; 
  font-weight:700; 
  cursor:pointer;
  text-decoration:none;
  line-height:1; 
}
.btpc .bt-button:hover{ background:var(--btpc-primary-600); }
.btpc .bt-button.bt-ghost{
  background:var(--btpc-muted); 
  color:var(--btpc-primary); 
  border:1px solid var(--btpc-border);
}

/* Formularios en línea */
.btpc .bt-form-inline{ 
  display:flex; 
  flex-wrap:wrap; 
  gap:8px; 
  align-items:center; 
}
.btpc .bt-form-inline input, 
.btpc .bt-form-inline select{
  border:1px solid var(--btpc-border); 
  border-radius:8px; 
  padding:.45rem .6rem;
  background:#fff;
}

/* Tarjeta empresa */
.btpc .bt-card-empresa{
  margin-top:10px; 
  padding:12px; 
  border:1px solid var(--btpc-border); 
  border-radius:10px;
  display:grid; 
  grid-template-columns:1fr auto; 
  gap:12px; 
  align-items:start;
}
.btpc .bt-card-empresa__logo .bt-empresa-logo{
  border-radius:8px; 
  border:1px solid var(--btpc-border); 
  background:#fff; 
  padding:4px;
}
.btpc .bt-grid-empresa{
  display:grid; 
  grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); 
  gap:6px 16px; 
  margin-top:6px;
}

/* Listado */
.btpc .bt-consultas-list{ display:grid; gap:10px; }

.btpc .bt-consulta-item{
  border:1px solid var(--btpc-border); 
  border-radius:10px; 
  padding:12px; 
  background:#fff;
}
.btpc .bt-consulta-item.status-pendiente{ background:#fff8e1; }
.btpc .bt-consulta-item.status-respondida{ background:#e8fff2; }
.btpc .bt-consulta-item.status-cerrada{ background:#f2f4f7; }

.btpc .bt-consulta-head{ 
  display:flex; 
  justify-content:space-between; 
  align-items:center; 
  gap:10px; 
  flex-wrap:wrap; 
}
.btpc .bt-consulta-meta{ 
  display:flex; 
  gap:10px; 
  flex-wrap:wrap; 
  align-items:center; 
  font-size:.95rem; 
}
.btpc .bt-consulta-meta .bt-date{ opacity:.7; }
btpc .bt-consulta-meta .bt-estado{ font-weight:700; }

.btpc .bt-toggle{ 
  background:none; 
  border:none; 
  color:var(--btpc-primary); 
  font-weight:700; 
  cursor:pointer; 
}
.btpc .bt-toggle:hover{ color:var(--btpc-primary-900); }

.btpc .bt-consulta-detalle{ 
  margin-top:10px; 
  padding-top:10px; 
  border-top:1px dashed #d9dde6; 
}
.btpc .bt-consulta-titulo{ font-weight:700; margin-bottom:8px; }
.btpc .bt-consulta-msg, 
.btpc .bt-consulta-resp{
  background:#fff; 
  border:1px solid #eef1f5; 
  border-radius:8px; 
  padding:10px; 
  margin:8px 0;
}

/* Form respuesta */
.btpc .bt-consulta-form textarea{
  width:100%; 
  border:1px solid var(--btpc-border); 
  border-radius:8px; 
  padding:.5rem .6rem;
  background:#fff;
}
.btpc .bt-actions{ 
  display:flex; 
  gap:8px; 
  flex-wrap:wrap; 
  margin-top:6px; 
}

/* Paginación */
.btpc .bt-pager{ margin-top:12px; text-align:center; }

/* Responsive */
@media (max-width:768px){
  .btpc .bt-card-empresa{ grid-template-columns:1fr; }
}
/* ===== Grid formulario Crear consulta (cliente, canal, asignar / asunto abajo) ===== */
.btpc .bt-form-grid--crear {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1.2fr; /* Cliente | Canal | Asignar */
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}

.btpc .bt-form-grid--crear .btpc-field {
  border: 1px solid var(--btpc-border);
  border-radius: 8px;
  padding: .45rem .6rem;
  background: #fff;
  width: 100%;
  min-height: 40px;
}

.btpc .bt-form-grid--crear .col-span-3 {
  grid-column: 1 / -1; /* Asunto ocupa todo el ancho */
}
