.apipnl_request {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto auto;
}

.apipnl_request #apipnl_request_method {
  margin: 0 0.5rem 0 0.5rem;
  font-size: 0.9rem;
}

.apipnl_request #apipnl_request_url {
  margin: 0;
  border: 1px solid #444;
  padding: 0 0.25rem;
}

.apipnl_request #apipnl_request_send {
  margin: 0 0.5rem 0 0;
  border-radius: 0;
  background-color: #444;
  border-color: #000;
  color: #fff;
  border-left-width: 0;
}

.apipnl_request #apipnl_request_paramlist {
  display: flex;
  flex-direction: column;
  margin: 0.5rem;
  
  grid-column: 1/4;
  
  min-height: 9rem;
}

.apipnl_request #apipnl_request_paramlist .apipnl_param {
  display: grid;
  grid-template-columns: 9rem 1fr 3rem;
  
  background-color: #BBB;
  border: 1px solid #444;
  margin: 0.25rem 0;
}

.apipnl_request #apipnl_request_paramlist .apipnl_param.optional {
  grid-template-columns: 1.5rem 7.5rem 1fr 3rem;
}
.apipnl_request #apipnl_request_paramlist .apipnl_param.required label { padding-left: 0.15rem; }

.apipnl_request #apipnl_request_paramlist .apipnl_param span { 
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 2px;
  
  font-size: 0.75rem;
  background-color: #BBB;
  font-weight: bold;
 
}

.apipnl_request #apipnl_request_paramlist .apipnl_param label {
  margin: 0.1rem;
}

.apipnl_request #apipnl_request_paramlist .apipnl_param input {
  background: #FFF;
  border: none;
  padding: 0 0.25rem;
}

.apipnl_request #apipnl_request_paramlist .apipnl_param.required .additional_values { grid-column: 2; }
.apipnl_request #apipnl_request_paramlist .apipnl_param.optional .additional_values { grid-column: 3; }

.apipnl_request #apipnl_request_paramlist .apipnl_param .additional_values
{
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 0.25rem;
}

.apipnl_response_container {
  position: relative;
  
  display: flex;
  flex-direction: column;
}

.apipnl_response #apipnl_response_json {
  background-color: #666;
  border: 1px solid #000;
  color: #FFF;
  padding: 0.1rem;
  height: 20rem;
  font-family: 'Courier New', monospace;
  overflow-x:  auto;
  white-space: pre;
  resize: vertical;
}

.apipnl_response.collapsed {
  display: none;
}

.apipnl_response.status_ok #apipnl_response_json {
  background-color: #464;
  transition-property: background-color;
  transition-duration: 1s;
}

.apipnl_response.status_err #apipnl_response_json {
  background-color: #644;
  transition-property: background-color;
  transition-duration: 1s;
}

#apipnl_response_statuscode {
  position: absolute;
  
  top:   0;
  right: 0;
  
  background: #EEE;
  border: 1px solid #000;
  color: #000;
  padding: 0.1rem;
  min-width: 3rem;
  text-align: center;
  font-weight: bold;
}


#apipnl_response_root .apipnl_response_headers {
  display: grid;
  grid-template-columns: auto 1fr;
  
  background-color: #FFA;
  border: 1px solid #444;
  border-bottom-width: 0;
  margin: 0.5rem 0;
}

#apipnl_response_root .apipnl_response_headers span {
  border: 0 solid #444;
  border-bottom-width: 1px;
  padding: 0.1rem 0.2rem;
  
  display:flex;
  align-items: center;
}


#apipnl_response_root .apipnl_response_headers .key {
  border-right-width: 1px;
  font-weight: bold;
  
  padding-right: 0.5rem;
}

#apipnl_response_root .apipnl_response_headers .val {
  font-family: monospace;
  
  padding-left: 0.5rem;
}

.apipnl_list {
  display: flex;
  flex-direction: column;
  overflow-y: scroll;
  min-height: 10rem;
  height: 0;
  flex-grow: 1;
}

.apipnl_list .apipnl_path {
  display: flex;
  flex-direction: row;
  
  color: #212529;
  border: 1px solid #333;
  background-color: #CCC;
  
  margin: 0.5rem 0;
  
  cursor: pointer;
}

.apipnl_list .apipnl_path:hover {
  background-color: #CCF;
  border: 1px solid #000;
}

.apipnl_list .apipnl_path.active {
  color: #DEDAD6;
  background-color: #333;
  border: 1px solid #000;
}

.apipnl_list .apipnl_path .apipnl_path_method {
  background-color: #888;
  font-weight: bold;
  padding: 0 0.5rem;
  margin-right: 0.5rem;
  min-width: 4rem;
  text-align: center;
}

.apipnl_list .apipnl_path:hover .apipnl_path_method {
  background-color: #88F;
}

.apipnl_list .apipnl_path.active .apipnl_path_method {
  background-color: #888;
}

.apipnl_list .apipnl_path .apipnl_path_name {
  font-weight: bold;
  flex-grow: 1;
}

.apipnl_list .apipnl_path .apipnl_path_url {
  font-style: italic;
  padding-right: 0.25rem;
}

