/* ========= Filters (sidebar) ========= */
.dashboard-filters{
  position: sticky; top: 16px;
  align-self: start;
  background: var(--pylo-card-bg);
  border-radius: var(--pylo-radius);
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  padding: 16px;
  display:flex; flex-direction:column; gap:14px;
  min-width: 240px;
}

/* groups */
.dashboard-filters .filter-group{ display:flex; flex-direction:column; gap:8px; }
.dashboard-filters .filter-group label{
  font-weight:600; font-size:12px; color:var(--pylo-muted);
}

/* controls (select/input) */
.dashboard-filters select,
.dashboard-filters input[type="date"]{
  width:100%;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  background:#fff;
  color:#111827;
  appearance: none;
  transition: box-shadow .15s ease, border-color .15s ease;
}

.dashboard-filters select:focus,
.dashboard-filters input[type="date"]:focus{
  outline:0;
  border-color: var(--pylo-blue);
  box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}

/* multiple selects mais confortáveis */
.dashboard-filters select[multiple]{
  min-height: 132px;
  padding: 8px;
  overflow:auto;
}

/* Custom range (aparece quando "Personalizado…") */
#pyc-custom-range{
  display:none;
  gap:8px;
}
#pyc-custom-range.show{ display:grid; grid-template-columns: 1fr 1fr; }
#pyc-custom-range input[type="date"]{ width:100%; }

/* actions */
.dashboard-filters .actions{ display:flex; gap:8px; }

.btn-apply,
.btn-outline{
  padding:10px 12px;
  border-radius:10px;
  line-height:1;
  cursor:pointer;
  transition: filter .15s ease, background .15s ease, border-color .15s ease;
}

.btn-apply{
  background: var(--pylo-blue);
  color:#fff;
  border:0;
}
.btn-apply:hover{ filter:brightness(1.06); }

.btn-outline{
  background:#fff;
  color:#111827;
  border:1px solid #d1d5db;
}
.btn-outline:hover{
  background:#f9fafb;
  border-color:#cfd3d8;
}

/* responsive: em telas estreitas o custom-range empilha */
@media (max-width: 980px){
  #pyc-custom-range.show{ grid-template-columns: 1fr; }
}

#pyc-custom-range { margin-top: 8px; display:none; }
#pyc-custom-range .date-row { display:flex; flex-direction:column; gap:6px; margin-bottom:8px; }
#pyc-custom-range input[type="date"] { width:100%; padding:10px 12px; border:1px solid #e5e7eb; border-radius:10px; }

.dashboard-filters{ position:sticky; top:12px; align-self:flex-start; }
.btn-apply{ background:#2563eb; color:#fff; border:0; padding:8px 12px; border-radius:10px; font-weight:700; }
.btn-outline{ background:#fff; color:#374151; border:1px solid #e5e7eb; padding:8px 12px; border-radius:10px; }
.btn-outline[disabled]{ opacity:.4; cursor:not-allowed; }

