/* 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 */ 

body {
                font-family: 'IBM Plex Sans',sans-serif;
                margin: 0;
                background-color: #000000;
                color: #000000;
            }

html, body {margin: 0}

            * {
                box-sizing: border-box;
            }

            #container {
                max-width: 1070px;
                margin: 0 auto;
            }

            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;
            }


            #header {
                width: 100%;
                background-repeat: no-repeat;
                background-size: cover;
                background-position: center;
                background-color: #d4d4d4;
                height: 150px;
            }

            main {
                background-color: #fff;
                padding: 20px 20px 20px 80px;
                text-align: justify;
            }

            h1, h2 {
                text-align: left;
                border-bottom: 1px black solid;
                width: 100%;
            }

            h4 {
                text-align: left;
                font-size: 19px;
                margin: 0px;
                width: 100%;
            }

            footer {
                background-color: #E7E9EB;
                width: 100%;
                height: 40px;
                padding: 10px;
                text-align: center;
            }

            .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;
            }

            h1,
            h2,
            h3 {
                color: #000000;
            }

            h1 {
                font-size: 40px;
            }

            h2 {
                font-size: 25px;
            }

            h4 {
                font-weight: 100;
            }


            /* 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-left: 8%;
                list-style-type: circle;
                }

            li {
                padding-bottom: 3px;
                }

            .characterprofile {
              float: right;
              width: 300px;
              margin-left:auto;
              margin: 0px 0px 30px 30px;
              background-color: #E7E9EB;
            }

            /* Clear floats after the columns */
            .row:after {
              content: "";
              display: table;
              clear: both;
            }


/* Wrap tables in a container to keep them responsive */
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Keep your existing table styles */
table {
  width: 100%;
  table-layout: auto;           /* or "fixed" if you want strict column widths */
  border-collapse: collapse;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

td, th {
  padding: 3px 10px;
  border-right: 1px solid #000;
  border-left:  1px solid #000;
  word-wrap: break-word;
}

/* Optional: keep odd rows shaded, like your theme */
tr:nth-child(odd) {
  background-color: #e0e2e4;
}
/*Tooltips*/
          .tooltip {
              position: relative;
              display: inline-block;
              cursor: pointer;
          }
            .tooltiptext {
            visibility: hidden;
            width: 130px;
            background-color: black;
            color: #fff;
            text-align: center;
            border-radius: 6px;
            padding: 5px 0;
            position: absolute;
            z-index: 1;
            }

            .tooltip:hover .tooltiptext {
            visibility: visible;
            }
            /* MEDIA QUERY */

            @media only screen and (max-width: 1350px) {
              main {
                float: left;
                width: 100%;
                margin-left: auto;
                margin-right: auto;
                margin: 10px 0px 0px 00px;
                padding: 0px;
              }
            }

            @media only screen and (max-width: 1100px) {
              table, .characterprofile {
                float: left;
                width: 100%;
                margin: 10px 0px 0px 00px;
              }
                
            .characterprofile {
                float: left;
                width: 100%;
                margin: 0px 0px 30px 0px;
              }
                
            main {
                padding: 20px;
            }
                
            .charactermain-image {
                width: 100%;
                margin: 0px 0px 10px 00px;
              }

            }
            /* === Character Wiki Sections === /

/* --- Relationships and Abilities Box --- */
.info-box {
  background-color: #E7E9EB;
  border: 1px solid #000;
  padding: 10px 15px;
  margin-bottom: 25px;
}

/* --- Relationships Table --- */
.relationships {
  width: 100%;
  table-layout: auto;           /* or "fixed" if you want strict column widths */
  border-collapse: collapse;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.relationships th,
.relationships td {
  padding: 3px 10px;
  border-right: 1px solid #000;
  border-left:  1px solid #000;
  word-wrap: break-word;
}

.relationships th {
  background-color: #d4d4d4;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.5px;
}

.relationships tr:nth-child(odd) {
  background-color: #e0e2e4;
}

/* --- Color Palette --- */
.color-palette {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.color-swatch {
  width: 60px;
  height: 60px;
  border: 1px solid #000;
  position: relative;
}

.color-code {
  position: absolute;
  bottom: -20px;
  font-size: 12px;
  width: 100%;
  text-align: center;
}

/* --- Abilities List --- */
.abilities-list {
  list-style-type: none;
  padding-left: 0;
}

.abilities-list li {
  margin-bottom: 8px;
  padding: 5px 8px;
  background-color: #E7E9EB;
  border: 1px solid #000;
}
