py-config {
  display: none;
}

py-script:not(:defined) {
  display: none;
}

py-repl:not(:defined) {
  display: none;
}

py-title:not(:defined) {
  display: none;
}

py-inputbox:not(:defined) {
  display: none;
}

py-button:not(:defined) {
  display: none;
}

py-box:not(:defined) {
  display: none;
}

html {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  line-height: 1.5;
}

.spinner:after {
  content: "";
  box-sizing: border-box;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  position: absolute;
  top: calc(40% - 20px);
  left: calc(50% - 20px);
}

.spinner.smooth:after {
  border-top: 4px solid #fff;
  border-left: 4px solid #fff;
  border-right: 4px solid #fff0;
  animation: .6s linear infinite spinner;
}

@keyframes spinner {
  to {
    transform: rotate(360deg);
  }
}

.label {
  text-align: center;
  color: #fffc;
  width: 100%;
  margin-top: 6rem;
  font-size: .8rem;
  display: block;
}

.py-overlay {
  color: visible;
  visibility: hidden;
  opacity: 1;
  visibility: visible;
  opacity: 1;
  background: #00000080;
  justify-content: center;
  align-items: center;
  transition: opacity .5s;
  display: flex;
  position: fixed;
  inset: 0;
}

.py-pop-up {
  text-align: center;
  width: 600px;
}

.py-pop-up p {
  margin: 5px;
}

.py-pop-up a {
  color: #fff;
  font-size: 200%;
  text-decoration: none;
  position: absolute;
  top: 3.5%;
  right: 5%;
}

.alert-banner {
  margin: 5px 0;
  padding: .5rem 1.5rem .5rem .5rem;
  position: relative;
}

.alert-banner p {
  margin: 0;
}

.py-error {
  color: #9d041c;
  background-color: #ffe9e8;
  border: solid #f0625f;
}

.py-warning {
  color: #794700;
  background-color: #fff4e5;
  border: solid #ffa016;
}

.alert-banner.py-error > #alert-close-button {
  color: #9d041c;
}

.alert-banner.py-warning > #alert-close-button {
  color: #794700;
}

#alert-close-button {
  cursor: pointer;
  background: none;
  border: none;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.py-box {
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.py-box div.py-box-child * {
  max-width: 100%;
}

.py-repl-box {
  flex-direction: column;
}

.py-repl-editor {
  --tw-border-opacity: 1;
  border-color: rgba(209, 213, 219, var(--tw-border-opacity));
  --tw-ring-inset: var(--tw-empty,   );
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #3b82f680;
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  box-sizing: border-box;
  border: 1px solid #d1d5db;
  position: relative;
}

.editor-box:hover button {
  opacity: 1;
}

.py-repl-run-button {
  opacity: 0;
  line-height: inherit;
  color: inherit;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  text-rendering: auto;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  text-indent: 0;
  text-shadow: none;
  text-align: center;
  cursor: default;
  box-sizing: border-box;
  background-color: #0000;
  background-image: none;
  background-color: -internal-light-dark(#efefef, #3b3b3b);
  border: 0;
  align-items: flex-start;
  margin: 0;
  padding: 1px 6px;
  font-family: inherit;
  font-size: 100%;
  line-height: normal;
  display: inline-block;
  position: absolute;
  bottom: .25rem;
  right: .25rem;
}

.py-repl-run-button:hover {
  opacity: 1;
}

.py-title {
  text-transform: uppercase;
  text-align: center;
}

.py-title h1 {
  font-size: 1.875rem;
  font-weight: 700;
}

.py-input {
  --tw-border-opacity: 1;
  border-color: rgba(209, 213, 219, var(--tw-border-opacity));
  border-style: solid;
  border-width: 1px;
  border-radius: .25rem;
  width: auto;
  margin-right: .75rem;
  padding: .5rem;
}

.py-box input.py-input {
  width: -webkit-fill-available;
}

.central-content {
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}

input {
  text-rendering: auto;
  color: -internal-light-dark(black, white);
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  text-indent: 0;
  text-shadow: none;
  text-align: start;
  appearance: auto;
  -webkit-rtl-ordering: logical;
  background-color: -internal-light-dark(#fff, #3b3b3b);
  border-style: inset;
  border-width: 2px;
  border-color: -internal-light-dark(#767676, #858585);
  border-image: initial;
  margin: 0;
  padding: 1px 2px;
  line-height: normal;
  display: inline-block;
}

.py-button {
  --tw-text-opacity: 1;
  color: rgba(255, 255, 255, var(--tw-text-opacity));
  --tw-bg-opacity: 1;
  background-color: rgba(37, 99, 235, var(--tw-bg-opacity));
  --tw-border-opacity: 1;
  border-color: rgba(37, 99, 235, var(--tw-border-opacity));
  cursor: pointer;
  border-width: 1px;
  border-radius: .25rem;
  padding: .5rem;
}

.py-li-element p {
  margin: 5px;
  display: inline;
}

button, input, optgroup, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
}

.line-through {
  text-decoration: line-through;
}

.py-terminal {
  color: #fff;
  background-color: #000;
  min-height: 10em;
  padding: .5rem;
  overflow: auto;
}

.py-terminal-hidden {
  display: none;
}

/*# sourceMappingURL=index.2e61927b.css.map */
