/* ===== Layout base ===== */
.msc-wrap { max-width: 1100px; margin: 0 auto; }
.msc-form { margin: 0 0 1rem; }
.msc-top { display: grid; gap: .75rem; }

/* ===== Inputs ===== */
.msc-input {
  padding: .6rem .75rem;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  color: #111827;
  min-height: 44px;
  width: 100%;
}

.msc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  border-radius: 12px;
  padding: .65rem 1rem;
  border: 1px solid #e5e7eb;
  background: #fff;
  color: #111827;
  cursor: pointer;
  text-decoration: none;
  font-weight: 600;
}
.msc-btn:hover { background: #f9fafb; }
.msc-btn-block { width: 100%; }

.msc-btn-primary {
  background: #111827;
  border-color: #111827;
  color: #fff;
}
.msc-btn-primary:hover { filter: brightness(1.08); }

.msc-btn-ghost {
  background: #fff;
  color: #111827;
}

/* Link-styled button */
.msc-btn-link {
  background: transparent;
  border-color: transparent;
  color: #6b46c1;
  font-weight: 600;
}
.msc-btn-link:hover { text-decoration: underline; }

/* ===== Filtros avançados (details) ===== */
.msc-adv { margin-top: .25rem; }
.msc-adv > summary {
  list-style: none;
}
.msc-adv > summary::-webkit-details-marker { display: none; }

/* chevron no botão summary */
.msc-adv > summary::after {
  content: '';
  width: 12px; height: 12px;
  margin-left: .5rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
  /* ícone chevron (down) em SVG inline */
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 8l4 4 4-4' stroke='%23111827' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  transition: transform .15s ease;
}
.msc-adv[open] > summary::after { transform: rotate(180deg); }

.msc-adv-panel {
  margin-top: .75rem;
  padding: .75rem;
  border: 1px dashed #e5e7eb;
  border-radius: 12px;
  background: #fff;
  display: grid;
  gap: .75rem;
}

.msc-label { font-size: 12px; color: #4b5563; display: grid; gap: .35rem; }
.msc-check { display: inline-flex; gap: .5rem; align-items: center; font-size: 14px; color: #111827; }

/* Select estilizado com chevron à direita */
.msc-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: .6rem .75rem;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  color: #111827;
  min-height: 44px;
  width: 100%;
  background-image:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 7l4 4 4-4' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px 16px;
  padding-right: 2.5rem; /* espaço pro chevron */
}

/* Ações do painel avançado */
.msc-adv-actions { display: flex; gap: .5rem; flex-wrap: wrap; }

/* ===== Grid de cards ===== */
.msc-grid { display: grid; gap: 1rem; }
.msc-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.msc-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.msc-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.msc-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.msc-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 900px){ .msc-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px){ .msc-grid{ grid-template-columns: repeat(1, minmax(0,1fr)); } }

.msc-card {
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:16px;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  transition:transform .12s ease, box-shadow .12s ease
}
.msc-card:hover{ transform:translateY(-2px); box-shadow:0 6px 16px rgba(0,0,0,.08) }
.msc-card a{ color:inherit; text-decoration:none }
.msc-card-header{ display:flex; align-items:center; gap:.75rem; margin-bottom:.5rem }
.msc-card-icon{ width:40px; height:40px; border-radius:8px; object-fit:cover; background:#f3f4f6; display:inline-flex; align-items:center; justify-content:center; font-size:18px }
.msc-card-title{ font-weight:600; font-size:16px; margin:0 }
.msc-card-desc{ color:#6b7280; font-size:13px; margin:.25rem 0 0 }
.msc-card-footer{ margin-top:.75rem; font-size:12px; color:#6b7280 }

/* ===== Paginação ===== */
.msc-pagination{ display:flex; gap:.35rem; flex-wrap:wrap; align-items:center; justify-content:center; margin-top:1rem }
.msc-page{ border:1px solid #e5e7eb; background:#fff; border-radius:10px; padding:.4rem .7rem; text-decoration:none; color:#111827 }
.msc-page.is-active{ background:#111827; color:#fff; border-color:#111827 }

/* Mensagem vazio */
.msc-empty { margin: .5rem 0 0; color:#6b7280 }
