/* This thing is largely bashed together from SadGrl's layout template (at https://sadgrl.online/projects/layout-builder/) and https://www.w3schools.com/ and some StackOverflow threads */ 

            * {
              box-sizing: border-box;
              margin: 0;
              padding: 0;
            }

            #skip a {
            position: absolute;
            display: inline-block;
            left: 0px;
            top: -1000px;
            overflow: hidden;
            transition: top 0.5s ease;
            background: var(--background);
            color: var(--link);
            z-index: 1000;
            padding: 5px;
          }

          #skip a:focus {
            top: 0;
            transition: top 0.5s ease;
          }

            body {
              font-family: 'IBM Plex Sans',sans-serif;
              margin: 0;
              background-color: #000000;
              color: var(--color);
            }

            html, body {
              margin: 0
            }

            #container {
              max-width: 1070px;
              margin: 0 auto;
            }

            #header {
                width: 100%;
                background-repeat: no-repeat;
                background-size: auto 100%;
                background-position: center;
                background-color: #d4d4d4;
                height: 12vh;
            }

            main {
                max-width: 100%;
                background-color: #fff;
                padding: 1.5em 3.5em;
                /* text-align: justify; */
                border: 1px solid black;
                border-radius: 5px;
            }

            main h1,
            h2,
            h3 {
                color: #000000;
                margin: 0.5em 0;
            }

            h1 {
                font-size: 2em;
                padding-bottom: 0.25em;
                border-bottom: 1px black solid;
            }

            h2 {
                font-size: 1.5em;
                background-color: #d4d4d4;
                padding: 0.5em 15px;
                border-radius: 4px;
            }

            h1, h2 {
                text-align: left;
                width: 100%;
            }

            h3 {
                font-weight: 100;
                text-align: left;
                font-size: 19px;
                margin: 0px;
                width: 100%;
            }

            main ul {
              list-style-position: outside;
              margin: 0.75em 0.5em 0.75em 1.25em;
              }

              main ul li {
                  line-height: 1.5;
              }

            a {
                color: #0066cc;
                font-weight: normal;
                text-decoration:none;
            }

            h1 a, h2 a, h3 a, h4 a, h5 a {
                color: #000000;
                text-decoration:none;
            }

            a:hover {
                color: #75b3f1;
            }

            #toc{
              /* position: block;
              width: 100%; */
              position: sticky;
              top: 10px;
            }

            main p {
              font-size: 18px;
              line-height: 1.5;
              margin: 1em 0;
              padding: 0 0.5em;
            }

            main blockquote{
              border-left: 8px solid #D0D0DB;
              padding: 0.5em 0.75em;
              font-size: 18px;
              font-style: italic;
              letter-spacing: 0.75px;
              margin: 1.5em 0;
            }

            main hr{
              border: 1px solid black;
            }

            #tabs{
              display: flex;
              justify-content: space-evenly;
            }

            footer {
                background-color: #D0D0DB;
                width: 100%;
                height: 40px;
                padding: 10px;
                text-align: center;
            }

            footer a {
              color: #0066cc;
            }

            .spoilers{
              background-color: #fff9e7;
              border: 2px dashed #ea426d80;
              margin: 1em 0.5em;
              padding: 0.75em;
            }

            .spoilers summary{
              color: #ea426d;
              font-weight: bold;
            }

            .imagehere {
                height: 150px;
                width: 150px;
                margin-left:auto;
                margin-right:auto;
                background-repeat: no-repeat;
                background-position: center;
                background-size: auto 100%;
            }

            .charactermain-image {
                height: 350px;
                width: 300px;
                margin-left:auto;
                background-repeat: no-repeat;
                background-size: auto 100%;
                background-position: center;
                /* border: 1px black solid; */
            }

            /* .galleryimage {
              float: left;
              width: 170px;
              height: 170px;
              background-repeat: no-repeat;
              background-size: auto 100%;
              background-position: center;
              margin: 10px;
              border: 1px black solid;
            } */

            


            /* Thanks to LetoLeGaosaure on Pillowfort for pointing this out! */
            h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover {
                color: inherit;
            } 
            /* -------- */

            .box {
                background-color: #E7E9EB;
                border: 1px solid #000000;
                padding: 10px;
            }

            /* .gallery {
                background-color: none;
                padding: 10px;
                overflow: hidden;
            } */

            #toc {
                float: left;
                text-align:left;
                width: 200px;
                margin-right:auto;
                /* margin: 0px 40px 10px 0px; */
                background-color: #E7E9EB;
                border: 1px solid #000000;
            }

            ol {
                padding: 0.35em 1em;
                list-style-type: circle;
                }

            li {
                padding-bottom: 3px;
                }

            .characterprofile {
              /* float: right; */
              width: 300px;
              margin-left:auto;
              margin: 0px 0px 30px 30px;
              background-color: #E7E9EB;
              border: 1px solid black;
            }

            /* Clear floats after the columns */
            .row:after {
              content: "";
              display: table;
              clear: both;
            }

            table {
              border-collapse: collapse;
              width: 100%;
              /* background-color: #eeeef3; */
              /* border-top: 1px solid black; */
              /* border-bottom: 1px solid black; */
            }

            /* tbody {
              margin: 3px 10px;
            } */

            td, th {
              text-align: left;
              padding: 3px 10px;
              /* border-right: 1px solid black;
              border-left: 1px solid black; */
            }

            td:nth-child(2n+1) {
              font-weight: 600;
              text-align: right;
            }

            tr:nth-child(odd) {
              background-color: #D0D0DB;
            }

            button{
              padding: 1em;
              margin: 0 5px;
              background-color: #E7E9EB;
              border: 1px solid black;
              width: 100%;
            }

            /* FLEXBOX */

            .flexcontainer {
              display:flex;
              flex-wrap:wrap;
              margin:auto;
              }

            .full { flex: 1 1 100%;}
            .half { flex: 1 1 50%; }
            .third { flex: 1 1 33%; }
            .twothird { flex: 1 1 66%; }
            .quarter { flex: 1 1 25%; }
            .threequarter { flex: 1 1 75%; }

            /* TABS (source: https://kalechips.net/projects/snippets/tabs) */
              .tabwrap section {
                display: none;
              }

              .tabwrap section:target {
                display:block;
              }

            /* GALLERY (source: https://kalechips.net/projects/snippets/grid) */
            .gallery {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
                grid-gap: 5px;
                margin: 1em 0;
              }

              .galleryitem {
                max-width:100%;
                border: 1px black solid;
                margin: 0.5em 0;
              }

              .galleryitem img {
                max-width:100%;
                display: block;
              }

              .galleryitem figcaption {
                background-color: #d4d4d4;
                text-align: center;
                padding: 0.25em;
              }

            /* MEDIA QUERY */

            @media screen and (min-width: 800px) {
                .flexcontainer {
                    display:block;
                }

                #sidebar{
                  display: none;
                }

                .characterprofile {
                float: right;
              }

            }

            @media only screen and (max-width: 800px) {
              table, .characterprofile {
                /* float: left; */
                width: 100%;
                margin: 10px 0px 0px 00px;
              }
                
            .characterprofile {
                /* float: left; */
                width: 100%;
                margin: 0px 0px 30px 0px;
              }
                
            main {
                padding: 1.5em;
            }
                
            .charactermain-image {
                width: 100%;
                margin: 0px 0px 10px 00px;
              }

            aside{
              display: sticky;
              top: 20px;
            }

            }