/* Copy buttons */
button.runbtn {
    position: absolute;
    display: flex;
    bottom: .3em;
    right: .3em;
    width: 1.7em;
    height: 1.7em;
    user-select: none;
    padding: 0;
    border: none;
    outline: none;
    border-radius: 0.4em;
    /* The colors that GitHub uses */
    border: #1b1f2426 1px solid;
    background-color: #f6f8fa;
    color: #57606a;
}

div.highlight  {
    position: relative;
}

.highlight button.runbtn:hover {
    background-color: rgb(235, 235, 235);
}

.highlight button.runbtn:active {
    background-color: rgb(187, 187, 187);
}

/**
 * A minimal CSS-only tooltip copied from:
 *   https://codepen.io/mildrenben/pen/rVBrpK
 *
 * To use, write HTML like the following:
 *
 * <p class="o-tooltip--left" data-tooltip="Hey">Short</p>
 */
 .o-tooltip--left {
  position: relative;
 }

 .o-tooltip--left:after {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    content: attr(data-tooltip);
    padding: .2em;
    font-size: .8em;
    left: -.2em;
    background: grey;
    color: white;
    white-space: nowrap;
    z-index: 2;
    border-radius: 2px;
    transform: translateX(-102%) translateY(0);
    transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1);
 }

 .o-tooltip--left:has(.pyodide-alert-icon):after {
     opacity: 1;
     visibility: visible;
 }

.o-tooltip--left:hover:after {
    display: block;
    opacity: 1;
    visibility: visible;
    transform: translateX(-100%) translateY(0);
    transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1);
    transition-delay: .5s;
}

/* By default the copy button shouldn't show up when printing a page */
@media print {
    button.runbtn {
        display: none;
    }
}

button.runbtn svg.pyodide-loading-icon {
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation-duration: 3s;
  animation-name: rotate;
  animation-iteration-count: infinite;
}

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

.pyodide-output {
    margin: 1em 0;
    overflow-x: auto;
}

.pyodide-output-wrapper {
    margin-left: 0.5em;
}

.pyodide-stderr {
    background-color: rgba(194, 103, 103, 0.35);
    border: indianred solid 1px;
    display: none;
}

.pyodide-stdout {
    display: none
}

.pyodide-output.embedded {
    border-left: 0.5em solid darkgoldenrod;
    border-radius: 0.4em;
}

.pyodide-output.live {
    border-left: 0.5em solid green;
    border-radius: 0.5em;
}
