.ffx-loc{--ffx-orange:#f7941d;--ffx-green:#5a9a2a;--ffx-line:#e2e2e2;margin:10px 0 30px;font-size:16px}
.ffx-loc *{box-sizing:border-box}
.ffx-loc-bar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;background:#f2f2f2;padding:16px 18px;margin:0}
.ffx-loc-field{display:flex;flex-direction:column;gap:4px}
.ffx-loc-field label{font-weight:700;margin:0}
.ffx-loc-where{flex:1 1 240px}
.ffx-loc-field input,.ffx-loc-field select{height:46px;padding:0 12px;border:1px solid #ccc;border-radius:4px;background:#fff;font-size:16px;width:100%}
.ffx-loc-actions{display:flex;gap:8px;flex-wrap:wrap}
.ffx-loc-btn{height:46px;padding:0 20px;border:1px solid #c9c9c9;border-radius:4px;background:#e9e9e9;color:#333;font-size:16px;cursor:pointer}
.ffx-loc-btn:hover{background:#ddd}
.ffx-loc-btn-alt{background:#fff}
.ffx-loc-status{margin:12px 2px;color:#444}
.ffx-loc-body{display:grid;grid-template-columns:minmax(260px,38%) 1fr;gap:16px;align-items:start}
.ffx-loc-map{height:540px;border:1px solid var(--ffx-line);z-index:0}
.ffx-loc-list{list-style:none;margin:0;padding:0;max-height:540px;overflow-y:auto}
.ffx-loc-list:empty{display:none}
.ffx-loc-list:empty + .ffx-loc-map{grid-column:1 / -1}
.ffx-loc-list li{border-bottom:1px solid var(--ffx-line);padding:12px 4px;display:flex;flex-direction:column;gap:6px}
.ffx-loc-item{display:flex;gap:10px;text-align:left;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit;line-height:1.45}
.ffx-loc-n{flex:0 0 26px;height:26px;border-radius:50%;background:var(--ffx-orange);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;margin-top:2px}
.ffx-loc-d{color:#666}
.ffx-loc-dir{margin-left:36px;font-size:15px}
.ffx-loc-pop{line-height:1.45}
.ffx-loc-all{margin-top:36px}
.ffx-loc-all h3{margin-bottom:10px}
.ffx-loc-all details{border-bottom:1px solid var(--ffx-line);padding:10px 2px}
.ffx-loc-all summary{cursor:pointer;font-weight:700}
.ffx-loc-all summary span{font-weight:400;color:#777}
.ffx-loc-all ul{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.ffx-loc-all li{line-height:1.45;font-size:15px}
@media (max-width:767px){
  .ffx-loc-body{grid-template-columns:1fr}
  .ffx-loc-map{height:380px;order:-1}
  .ffx-loc-list{max-height:none}
  .ffx-loc-actions{width:100%}
  .ffx-loc-actions .ffx-loc-btn{flex:1}
  .ffx-loc-field:not(.ffx-loc-where){flex:1 1 40%}
}
