        body {
            font-family: 'Open Sans', sans-serif;
                color: white;
                text-shadow:
                -1px -1px 0 #000,  
                1px -1px 0 #000,
                -1px 1px 0 #000,
                1px 1px 0 #000;
            z-index: 0;
        }

        a {
            color: lightcoral;
        }

        hr {
            border: 0;
            height: 1px;
            background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0));
        }

        .header {
            text-align: center;
        }

        .main-container {
            min-height: 700px;
            height: 98vh;
            background-color: rgb(128, 0, 0);
            background-color: rgba(2, 2, 0, .5);
            width: 64.5%;
            min-width: 730px;
            max-width: 1250px;
            margin: 0 auto;
            position: relative;
            overflow: auto;
        }

        .background-container {
            animation: fadein 3s;
            background-image: url("https://randomtouhougen.neocities.org/background.png");
            background-size: cover;
            background-position: center;
            filter: blur(4px) brightness(80%);
            display: block;
            height: 0px;
            min-height: 100%;
            top: 0;
            left: 0;
            right: 0;
            z-index: -1;
            position: fixed;
            transform: scale(1.1);
        }

        .default-background-container {
            background-color:rgb(8, 6, 9);
            min-height: 100%;
            top: 0;
            left: 0;
            right: 0;
            position: fixed;
            z-index: -2;
        }

        @keyframes fadein {
            from { opacity: 0; }
            to   { opacity: 1; }
        }

        .gen-container {
            min-height: 500px;
            max-height: 600px;
            position: relative;
        }

        .gen-child {
            float: left;
            width: 45%;
            padding: 5%;
        }

        .filter {
            width: 40%;
            padding: 2.5%;
        }

        .footer {
            left: 0;
            right: 0;
            margin-left: auto;
            margin-right: auto;
            position: absolute;
            bottom: 2%;
        }

        .footer-text {
            font-size: 0.7rem;
            margin: 0 auto;
        }

        .output {
            position: relative;
            max-height: 100%;
            max-width: 100%;
        }

        #touhou-image {
            display: block;
            margin: auto;
            max-width: 100%;
            max-height: 600px;
            z-index: 10;
        }

        #touhou-title {
            font-size: 2.0rem;
        }

        #touhou-caption {
            font-size: 1.5rem;
        }

        .button {
            cursor: pointer;
            border: none;
            text-align: center;
            display: inline-block;
            text-transform: uppercase;
            text-shadow: 2px 2px 3px black;
            z-index: 1;
            margin: auto;
            width: 100%;
            padding: 15px 32px;
            color: white;
            background-color: rgba(40, 60, 100, 0.7);
            transition: all 0.05s ease;
        }

        .button:hover {
            box-shadow: none;
            background-color: rgba(60, 80, 150, 0.7);
        }

        .button:focus {
            outline: 0;
        }

        button::-moz-focus-inner {
            border: 0;
        }

        .ripple {
            position: relative;
            overflow: hidden;
            transform: translate3d(0, 0, 0);
        }

        .ripple:after {
            content: "";
            display: block;
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            pointer-events: none;
            background-image: radial-gradient(circle, #000 10%, transparent 5%);
            background-repeat: no-repeat;
            background-position: 50%;
            transform: scale(10, 10);
            opacity: 0;
            transition: transform 0.5s, opacity 0.75s;
        }

        .ripple:active::after {
            transform: scale(0, 0);
            opacity: .2;
            transition: 0s;
        }