:root {
    --light-pink: hsl(286, 50%, 70%);
    --pink: hsl(286, 50%, 50%);
  }

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: 100%;
}

body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    color: #000000;
    min-height: 100svh;
    line-height: 1.6;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
  margin: 0;
}

img,
picture,
svg,
video {
    display: block;
    max-width: 100%;
}

#main {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    background-color: #ffffff;
    min-height: 100svh;
}

.footer{
    clear: both;
}

.image {
    margin: 0 auto;
}

.logo_text {
    font-size: 3rem;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-weight: bold;
    
}

.upper_case{
    text-transform: uppercase;
}

.large_font{
    font-size: 1.2rem;
}

a.logo_text {
    text-decoration: none;
    color: #000000;
}



.grid_2,
.grid_comments,
.page_bar,
.forum_thread_container,
.post_header {
    display: grid;
    gap: 4px;
}

.grid_2 {
    grid-template-columns: 1fr 1fr;

}

.grid_comments {
    grid-template-columns: 1fr 4fr 1fr;
}

.page_bar {
    grid-template-columns: 6fr 2fr;
}

.flex_container {
    display: flex;
    gap: .5rem;
}

.flex_cell {
    flex: 1;
}

.forum_thread_container {
    grid-template-columns: 5fr 1fr 2fr;
    border: 1px solid grey;
    margin: 4px 0;
}

.post_header {
    grid-template-columns: 9fr 1fr;
}

.margin_bottom{
    margin-bottom: 1rem; 
}

.margin_top{
    margin-top: 1rem; 
}

.margin_vert{
    margin: 1rem auto;
}

.border_top{
    border-top: 1px solid var(--light-pink);
}

.border_bottom{
    border-bottom: 1px solid var(--light-pink);
}

.nsfw_text {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    min-width: 80%;
    color: #000;
    z-index: 100;
    font-size: .95rem;
    background-color: rgba(240, 248, 255, 0.25);
    margin: 4px;
    pointer-events: none;
    padding: 4px;

}

.nsfw_container {
    position: relative;
}

.content {
    width: 100%;
}

.align_center {
    text-align: center;
}

.padded_cell {
    padding: .5rem;

}

.cta_button{
    display: block;
    margin: 1rem auto;
    background-color: var(--pink);
    padding: .5rem;
    border: .25rem solid var(--light-pink);
    width: 100%;
    max-width: 300px;    
    color: #ffffff;
    text-transform: uppercase;
    text-align: center;
    border-radius: .5rem;
    text-decoration: none;
    font-weight: bold;
}

.float_right{
    float: right;
}

.comments_fields,
.comments_button,
.comments_textarea {
    width: 100%;

}

.comments_textarea {
    height: 150px;

}




.post_subject {
    font-weight: bold;
}

.post_body {
    text-align: left;
}

.forum_pages {
    display: inline-block;
    padding: 0 4px 0 0;
}

.nav_links {
    display: inline-block;
    padding: 0 1rem 0 0;
}

.forum_page {
    font-size: 1.1em;
    font-weight: bold;
}

.mail_icon,
.red_mail_icon {
    margin-left: 4px;
    text-decoration: none;
}

.mail_icon {
    color: gray;
}

.red_mail_icon {
    color: red;
}



.post_container {
    border: 1px solid grey;
    margin: 4px 0;
    padding: 4px;
}


.search_cell {
    text-align: right;
}

.admin_cell {
    font-size: .8em;
}

.forum_thread_container:nth-child(odd),
.post_container:nth-child(odd) {
    background-color: rgb(240, 240, 240);
}

.forum_cell,
.post_subject,
.post_body,
.post_author,
.post_date,
.post_image,
.admin_cell {
    padding: 4px;
}

ul {
    list-style: none;
    clear: left;
    width: 100%;
    margin: 0px;
    padding: 0px;
}

ul#images li {
    float: left;
    height: 240px;
    width: 150px;
    margin: 0px;
    text-align: center;
}

ul#memimages li {
    float: left;
    height: 240px;
    width: 190px;
    margin: 0px;
    text-align: center;
}

ul#model_images li {
    float: left;
    height: 340px;
    width: 250px;
    margin: 0px;
    text-align: center;
}

ul#arclinks li {
    float: left;
    height: 20px;
    width: 190px;
    margin: 0px;
    text-align: center;
}

ul#video li {
    float: left;
    height: 160px;
    width: 150px;
    margin: 0px;
    text-align: center;
}

.fplist {
    text-align: left;
    font-size: 28px;
}

.homelinks {
    font-size: 3rem;
}

.col_5 {
    max-width: 20%;
    display: inline-block;
    width: 100%;
    vertical-align: top;
    margin-bottom: 10px;
    padding: 2px;
    text-align: center;
}

a.smaller:visited,
a.smaller:link,
.smaller {
    font-size: 24px;
    font-weight: bold;
    color: #FFFFFF;
}

a.smaller:hover {
    color: #eeeeee;
}

.fpimageleft {
    float: left;
    margin-right: 5px;
    margin-bottom: 5px;
}

.fpimageright {
    float: right;
    margin-left: 5px;
    margin-bottom: 5px;
}

.model_text {
    text-align: center;
    clear: both;
}

.initial {
    display: inline-block;
    width: 25px;
    background-color: #CCCCCC;
    margin: 0px 1px 1px 1px;
    text-align: center;
    font-weight: bold;
    padding: 5px;
}


@media screen and (max-width: 799px) {
    .grid_2,
    .flex_container {
        display: block;
    }
}