body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background: hsl(154 50% 5%);
}

h1 {
    font-family: 'Press Start 2P', monospace;
    user-select: none;
    margin-bottom: 20vh;
    color: #00FF00;
    font-size: 10vh;
}

/* Container for the bar and border */
.loading-wrapper {
    position: relative;
    width: 80%;
    max-width: 50vw;
    height: 5vh; /* total height including space for border */
    padding: 5px; /* space between bar and border */
    box-sizing: border-box;
}

/* The floating border around the bar */
.loading-border {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 2px solid #00FF00;
    pointer-events: none;
}

/* Background container of the bar */
.loading-container {
    width: 100%;
    height: 100%;
    background: #444;
    overflow: hidden;
}

/* The actual loading bar */
.loading-bar {
    height: 100%;
    width: 0%;
    background: #00FF00;
    transition: width 0.1s linear;
}