:root {
  color-scheme: light dark;
}
body {
  color: light-dark(#333b3c, #efefec);
  background-color: light-dark(#efedea, #223a2c);
  font-family: "Open Sans", sans-serif;
}

.auth-builder label {
  border: 1px solid rgba(0,0,0,0.3);
  box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  border-radius: 10px;
  background-color: rgba(255,255,255,0.4);
  padding: 1px 10px 1px 3px;
  display: inline-block;
  margin: 1px;
}
.auth-builder label:hover {
  background-color: rgba(50,255,50,0.2);
}
.auth-builder label:has(input:checked) {
  background-color: rgba(50,200,50,0.5);
}

.auth-builder h4 { margin: 0}

.payload-links {
  display: flex;
  justify-content: space-around;
}
a.auth-type, .payload-link {
  width: 400px;
  height: 180px;
  display: inline-flex;
  color: #000;
  border: 1px solid rgba(0,0,0,0.3);
  box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  border-radius: 10px;
  background-color: rgba(255,255,255,0.4);
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  flex-direction: column;
  align-items: center;
  align-content: center;
  justify-content: center;
  font-size: 0.95em;
  margin: 15px 5px 5px 5px;
}
.payload-endpoint {
  width: 600px;
  margin: 5px;
  text-align: center;
}
.payload-endpoint .payload-info {
  text-align: left;
}
a.auth-type.mini, .payload-link.mini {
  width: 300px;
  height: 100px;
}
a.auth-type.micro, .payload-link.micro {
  width: 300px;
  height: 40px;
}
a.auth-type:hover, .payload-link:hover {
  background-color: rgba(100,130,20,0.3);
  border-color: rgba(0,0,0,0.1);
}
a.auth-type .auth-title { font-weight: bold; }
a.auth-type .auth-example {
  font-family: monospace;
  font-size: 0.9em;
  margin-top: 8px;
  text-align: left;
  display: inline-block;
  padding: 10px 20px;
}
.payload-legend {
  margin-top: 10px;
  margin-left: 10px;
  font-size: 0.6em;
  line-height: 1.2em;
}
.payload-legend .color-box {
  display: inline-block;
  width: 10px;
  margin-bottom: 2px;
}

.payload-endpoint {
  border-left: 2px solid rgba(0,0,0,0.2);
  border-right: 2px solid rgba(0,0,0,0.2);
  background-color: rgba(80,80,0,0.05);
}
details .payload-example {
  font-family: monospace;
  font-size: 0.9em;
}
details .payload-example .endpoint {
  margin: 10px;
}
details .payload-example fieldset {
  margin: 5px 0;
}

details {
  padding: 10px;
}
details > summary {
  font-size: 1.05em;
  font-weight: bold;
  cursor: pointer;
}
details > section {
  display: flex;
  padding: 10px;
}

span.var {
  border-radius: 3px;
  padding: 0 1px;
}
span.var.known {
  background-color: #9c9;
}
span.var.unknown {
  background-color: #d45e19;
  color: #fff;
}