/* Preferred Location checkbox-tree — reuses --apf-* variables already defined in apf-wrap */

.apf-wrap .apf-tree{ position:relative!important; }

.apf-wrap .apf-tree-panel{
  display:none!important;position:relative!important;margin-top:8px!important;
  background:#fff!important;border:1.5px solid var(--apf-line)!important;border-radius:12px!important;
  box-shadow:var(--apf-shadow)!important;max-height:320px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:6px!important;
}
.apf-wrap .apf-tree-panel.open{ display:block!important; }

.apf-wrap .apf-tree-state{
  display:flex!important;align-items:center!important;gap:10px!important;padding:10px 10px!important;
  border-radius:8px!important;cursor:pointer!important;background:#fafbfb!important;margin:2px 0!important;
  font-weight:500!important;color:var(--apf-teal)!important;min-width:0!important;width:100%!important;
}
.apf-wrap .apf-tree-state:hover{ background:rgba(14,43,38,.06)!important; }

.apf-wrap .apf-tree-state-label{
  flex:1!important;min-width:0!important;overflow-wrap:break-word!important;word-break:break-word!important;
}

.apf-wrap .apf-field .apf-tree-panel input.apf-tree-checkbox{
  width:18px!important;height:18px!important;padding:0!important;border-radius:4px!important;
  flex-shrink:0!important;accent-color:var(--apf-crimson)!important;cursor:pointer!important;
}

.apf-wrap .apf-tree-cities{ padding:2px 0 6px 34px!important; }

.apf-wrap .apf-tree-top-label{
  font-family:var(--apf-mono)!important;font-size:10.5px!important;letter-spacing:.1em!important;
  text-transform:uppercase!important;color:var(--apf-muted)!important;margin:6px 0 4px!important;
}

.apf-wrap .apf-tree-city{
  display:flex!important;align-items:center!important;gap:10px!important;padding:8px 8px!important;
  border-radius:8px!important;cursor:pointer!important;font-size:14px!important;color:var(--apf-ink)!important;
  min-width:0!important;width:100%!important;
}
.apf-wrap .apf-tree-city:hover{ background:rgba(14,43,38,.06)!important; }

.apf-wrap .apf-tree-city span{
  flex:1!important;min-width:0!important;overflow-wrap:break-word!important;word-break:break-word!important;
}

.apf-wrap .apf-tree-empty{ padding:12px!important;font-size:13px!important;color:var(--apf-muted)!important; }

.apf-wrap .apf-tree-panel mark{
  background:rgba(232,51,74,.14)!important;color:var(--apf-crimson-deep)!important;font-weight:600!important;border-radius:3px!important;
}