.cc-dasf-wrap{
  margin:0 0 14px;
  padding:12px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(17,24,39,.04);
}
.cc-dasf-toolbar-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:10px;
}
.cc-dasf-title{margin:0;font-size:1rem;line-height:1.2}
.cc-dasf-subtitle{margin-top:4px;font-size:.83rem;color:#6b7280}
.cc-dasf-actions-top{display:flex;gap:8px;align-items:center}
.cc-dasf-mobile-toggle,
.cc-dasf-btn,
.cc-dasf-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 12px;
  border-radius:10px;
  text-decoration:none;
  cursor:pointer;
  font-size:.88rem;
}
.cc-dasf-mobile-toggle,
.cc-dasf-reset{background:#fff;color:#111827;border:1px solid rgba(0,0,0,.14)}
.cc-dasf-btn{background:#111827;color:#fff;border:1px solid #111827}
.cc-dasf-panel{display:block}
.cc-dasf-top-row{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(180px,1fr));
  gap:8px;
  margin-bottom:8px;
}
.cc-dasf-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  align-items:start;
}
.cc-dasf-col-wide,
.cc-dasf-col-narrow{display:contents}
.cc-dasf-field{display:flex;flex-direction:column;gap:5px}
.cc-dasf-field label,
.cc-dasf-card-title{font-weight:600;font-size:.86rem;color:#111827}
.cc-dasf-field input[type="text"],
.cc-dasf-field input[type="number"],
.cc-dasf-field select{
  width:100%;
  min-height:38px;
  padding:8px 11px;
  border:1px solid rgba(0,0,0,.14);
  border-radius:10px;
  background:#fff;
  font-size:.92rem;
}
.cc-dasf-filter-card{
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  background:#fafafa;
  overflow:hidden;
}
.cc-dasf-filter-card summary{
  list-style:none;
  cursor:pointer;
  padding:10px 12px;
  font-weight:700;
  font-size:.88rem;
  color:#111827;
  position:relative;
}
.cc-dasf-filter-card summary::-webkit-details-marker{display:none}
.cc-dasf-filter-card summary::after{
  content:'+';
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  font-size:1rem;
}
.cc-dasf-filter-card[open] summary::after{content:'−'}
.cc-dasf-filter-card.is-plain{padding:10px 12px;background:#fafafa}
.cc-dasf-filter-card.is-plain .cc-dasf-check{display:inline-flex;margin-right:12px}
.cc-dasf-options{
  max-height:220px;
  overflow:auto;
  padding:0 12px 12px;
  display:grid;
  gap:7px;
}
.cc-dasf-options.is-tree{gap:5px}
.cc-dasf-check{
  display:flex;
  align-items:flex-start;
  gap:8px;
  font-size:.88rem;
  line-height:1.25;
  color:#1f2937;
}
.cc-dasf-check input{margin-top:2px}
.cc-dasf-term.depth-1{padding-left:14px}
.cc-dasf-term.depth-2{padding-left:28px}
.cc-dasf-term.depth-3{padding-left:42px}
.cc-dasf-filter-dropdown{position:relative;overflow:visible;background:#fff}
.cc-dasf-filter-dropdown summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px}
.cc-dasf-filter-dropdown summary small{font-weight:500;font-size:.78rem;color:#6b7280;padding-right:16px}
.cc-dasf-filter-dropdown .cc-dasf-options{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  max-height:240px;
  padding:10px 12px 12px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  background:#fff;
  box-shadow:0 14px 34px rgba(17,24,39,.12);
  z-index:30;
}
.cc-dasf-filter-dropdown:not([open]) .cc-dasf-options{display:none}
.cc-dasf-active-bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px dashed rgba(0,0,0,.12);
}
.cc-dasf-active-label{font-weight:600;color:#111827;font-size:.86rem}
.cc-dasf-chips{display:flex;flex-wrap:wrap;gap:6px}
.cc-dasf-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.1);
  background:#fff;
  cursor:pointer;
  font-size:.83rem;
  line-height:1.15;
}
.cc-dasf-chip strong{font-size:.95rem;line-height:1}
.cc-dasf-bottom-bar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-top:10px;
}
.cc-dasf-range-note{font-size:.81rem;color:#6b7280}
.cc-dasf-submit-wrap{display:flex;gap:8px;align-items:center}
.cc-dasf-results-shell{position:relative}
.cc-dasf-results-shell.is-loading{opacity:.5;pointer-events:none}
.cc-dasf-results-shell.is-loading::before{
  content:attr(data-loading-text);
  position:absolute;
  inset:10px auto auto 10px;
  z-index:5;
  background:#111827;
  color:#fff;
  padding:7px 10px;
  border-radius:999px;
  font-size:.78rem;
}
@media (min-width:981px){
  .cc-dasf-mobile-toggle{display:none}
}
@media (max-width:1280px){
  .cc-dasf-top-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cc-dasf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:980px){
  .cc-dasf-wrap{padding:12px;border-radius:12px}
  .cc-dasf-top-row,
  .cc-dasf-grid{grid-template-columns:1fr}
  .cc-dasf-toolbar-head,
  .cc-dasf-bottom-bar{flex-direction:column;align-items:stretch}
  .cc-dasf-panel{display:none}
  .cc-dasf-panel.is-open{display:block}
  .cc-dasf-actions-top{width:100%;justify-content:space-between}
  .cc-dasf-filter-dropdown .cc-dasf-options{position:static;box-shadow:none;border:none;border-top:1px solid rgba(0,0,0,.08);padding:10px 12px 12px;margin-top:0}
}
