.dc-wc-cat-cascade{
  width:100%;
  max-width:100%;
}
.dc-wc-cat-cascade *{box-sizing:border-box}
.dc-wc-cat-cascade__label{
  margin:0 0 12px;
  font-weight:600;
  font-size:16px;
}
.dc-wc-cat-cascade__row{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
  width:100%;
  align-items:start;
}
@media (max-width: 900px){
  .dc-wc-cat-cascade__row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 520px){
  .dc-wc-cat-cascade__row{grid-template-columns:1fr}
}

/* More "premium" select styling */
.dc-wc-cat-cascade__select{
  /* Use browser default/native select UI (no custom caret) */
  appearance: auto;
  -webkit-appearance: menulist;
  -moz-appearance: menulist;

  width: 100%;
  max-width: 100%;

  /* Let the browser draw the arrow */
  background-image: none;
  background-repeat: initial;
  background-position: initial;
  background-size: initial;

  /* Keep minimal, unobtrusive layout styling */
  padding: 12px 14px;
  min-height: 46px;

  border: 1px solid rgba(0,0,0,.14);
  border-radius: 12px;
  background-color: #fff;

  font-size: 16px;
  line-height: 1.2;
  color: #111;

  box-shadow: 0 1px 0 rgba(0,0,0,.04);
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.dc-wc-cat-cascade__select:hover{
  border-color:rgba(0,0,0,.22);
}
.dc-wc-cat-cascade__select:focus{
  outline:none;
  border-color:rgba(0,0,0,.35);
  box-shadow:0 0 0 3px rgba(0,0,0,.08);
}
.dc-wc-cat-cascade__select:disabled{
  opacity:.55;
  cursor:not-allowed;
  background-color:rgba(255,255,255,.8);
}

.dc-wc-cat-cascade__loader{
  margin-top:10px;
  width:100%;
  height:2px;
  background:rgba(0,0,0,.08);
  position:relative;
  overflow:hidden;
  border-radius:999px;
}
.dc-wc-cat-cascade__loader::after{
  content:"";
  position:absolute;
  left:-30%;
  top:0;
  height:100%;
  width:30%;
  background:rgba(0,0,0,.25);
  animation:dcwcload 1s infinite;
}
@keyframes dcwcload{0%{left:-30%}100%{left:100%}}

.dc-wc-cat-cascade__error{
  margin-top:10px;
  color:#b00020;
  font-size:14px;
}

/* Force native arrow even if the theme disables it globally */
.dc-wc-cat-cascade .dc-wc-cat-cascade__select{
  appearance: auto !important;
  -webkit-appearance: menulist !important;
  -moz-appearance: menulist !important;
  background-image: none !important;
}


/* Hide unused levels dynamically */
.dc-wc-cat-cascade__select[hidden]{display:none !important;}
