.wrap-collapsible {
  margin-bottom: 1.2rem 0;
  text-align: left;
  padding: 0.5em;
}

input[type='checkbox'] {
  display: none;
}

.lbl-toggle {
  display: block;

  font-weight: bold;
  font-family: monospace;
  font-size: 1rem;
  text-transform: uppercase;
  text-align: center;

  padding: 1rem;

  color: #FFF;
  background: #000;

  cursor: pointer;

  border-radius: 7px;
  transition: all 0.25s ease-out;
}

.lbl-toggle:hover {
  color: #CCC;
}

.warning .lbl-toggle {
  background: #E69F00;
}

.error .lbl-toggle {
  background: #D55E00;
}

.success .lbl-toggle {
  background: #49E048;
}

@media (prefers-color-scheme: light) {
  .lbl-toggle {
    color: #000;
    background: #FFF;
  }

  .lbl-toggle:hover {
    color: #333;
  }

  .warning .lbl-toggle {
    background: #E69F00;
  }
  
  .error .lbl-toggle {
    background: #D55E00;
  }
  .success .lbl-toggle {
    background: #49E048;
  }
}

.lbl-toggle::before {
  content: ' ';
  display: inline-block;

  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid currentColor;
  vertical-align: middle;
  margin-right: .7rem;
  transform: translateY(-2px);

  transition: transform .2s ease-out;
}

.toggle:checked+.lbl-toggle::before {
  transform: rotate(90deg) translateX(-3px);
}

.collapsible-content {
  max-height: 0px;
  overflow: hidden;
  transition: max-height .25s ease-in-out;
}

.toggle:checked+.lbl-toggle+.collapsible-content {
  max-height: 100vh;
}

.toggle:checked+.lbl-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.collapsible-content .content-inner {
  border-bottom: 1px solid rgba(220, 220, 220, .45);
  border-bottom-left-radius: 7px;
  border-bottom-right-radius: 7px;
  padding: .5rem 1rem;
  text-align: left;
}
