/* hi! what are you doing here? */
@font-face{
    font-family: 'font1';
    src: url(https://proto-p.neocities.org/font/1.ttf);
  }
@font-face{
    font-family: 'font2';
    src: url(https://proto-p.neocities.org/font/2.ttf);
  }
@font-face{
    font-family: 'font3';
    src: url(https://proto-p.neocities.org/font/Comicoro.ttf);
  }
@font-face{
    font-family: 'font4';
    src: url(https://proto-p.neocities.org/font/SilomBol.ttf);
  }
@font-face{
    font-family: 'font5';
    src: url(https://proto-p.neocities.org/font/FantasyDraft.ttf);
  }
#background, #settingsMenu {
    background: url(https://proto-p.neocities.org/assets/hagiharatakuya2.jpg);
    background-attachment: local;
    background-size: cover;
}
a  {
    color: #88F;
}
#top_banner {
    font-family: "font1";
    font-weight: bolder !important;
    background: #AAF;
    background: linear-gradient(0deg, rgba(170,170,255,1) 0%, rgba(238,238,255,1) 50%, rgba(170,170,255,1) 100%);
    width: calc(100% - 2px);
    border: solid 1px #99E;
    box-shadow: 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 1px #FFF, 0 3px 4px #005;
    text-shadow: 1px 1px 2px #005;
    position: relative;
    z-index: 4;
}
.allMessages {
    background-color: #FFF;
    background-size: 100px 100px;
    box-shadow: 0 0 4px #FFF, 0 0 4px #FFF, 0 0 4px #FFF, 0 0 4px #FFF, 0 0 4px #FFF, 0 3px 4px #005;
    border: 1px solid #88F;
    border-radius: 8px;
    margin: 0 20px 0 20px;
    position: relative;
}
.allMessages.containsOnlyEmojis .emoji {
    height: 50px;
}
.msgWrapper:has(.pm) {
    padding-top: 26px;
}
.allMessages.pm {
    border-color: #F55;
}
.allMessages.pm:after {
    content: "Private Message";
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #F55;
    color: #FFF;
    height: 16px;
    padding: 5px;
    position: absolute;
    right: 5vw;
    bottom: 100%;
    z-index: 5;
    border-radius: 5px 5px 0 0;
}
.msgWrapper + .msgWrapper {
    margin-top: 25px;
    margin-bottom: 15px;
}
#timestamp {
    font-size: 2.25vw;
    margin-top: 10px !important;
}
#input, #nameEntry {
    background-color: #FFF;
    border-radius: 0;
    border-top: 1px solid #AAF;
    font-family:  font1, "font1";
}
#name {
    background-color: #FFF;
    border-radius: 0;
    border: solid 1px #88F;
    padding: 2px;
    font-family:  "font1", Courier, sans-serif;
}
#settings:hover {
    filter: drop-shadow(0 0 3px #FFF) drop-shadow(0 0 3px #FFF) drop-shadow(0 0 3px #FFF);
    transform: rotate(180deg);
}
#settings {
    filter: drop-shadow(0 0 1px #FFF) drop-shadow(0 0 1px #FFF) drop-shadow(0 0 1px #FFF);
    transition: all 250ms linear;
}
#emojiTrayToggle {
    height: 15px;
    width: 15px;
    padding: 6px;
    margin-top: 3px;
    margin-left: 3px;
    background-image: url(https://proto-p.neocities.org/assets/lil_guy.gif) !important;
    opacity: 0.5;
}
#is_typing {
    filter: drop-shadow(0 0 1px #FFF) drop-shadow(0 0 1px #FFF) drop-shadow(0 0 1px #FFF);
    background-color: #FFF;
    border: solid 1px #AAF;
    border-radius: 3px;
    left: unset;
    right: 10px;
    bottom: 27px;
    overflow: visible;
}
#is_typing:hover::after {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    content: "Someone is typing";
    font-size: 10pt;
    position: fixed;
    right: 35px;
    bottom: 0;
    width: 50vw;
    color: #000;
    z-index: 100000;
}
#is_typing > span {
    background-color: #AAF;
    border-radius: 0;
    height: 2px;
    width: 2px;
}

html {
  overflow: hidden;
}  

#body{
    display: flex;
    background-color: #fff7fb;
    font-family: 'font1';
    color:#5e5e5e;
    font-size:13px;
    margin: 0;
    padding: 0;
    max-height: 100vh;
    overflow: hidden;
}
#container{
    display: flex;
    overflow: hidden;
    align-items: center;
    flex-direction: column;
    height: 100vh;
    box-sizing: border-box;
} 
#box{
    max-width: 850px;
    width: 60vw;
    height: 450px;
    max-height: 95vh;
    color: #000;
    border: 1px solid #ff668a;
    border-radius: 20px;
    background: radial-gradient(#ffdd75, #f06e6e);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
#header{
    padding: 10px;
    background: #f06e6e;
    color: #fff;
    letter-spacing: 3px;
    font-family: 'font4';
    flex-shrink: 0;
}
#header h1{
    margin: 0px;
}
#content-wrapper {
    display: flex;
    flex: 1;
    overflow: hidden;
    min-height: 0;
}
#side{
    display: flex;
    flex-direction: column;
    width: 203px;
    margin: 5px 5px 5px 10px;
    flex-shrink: 0;
    overflow-y: auto;
    overflow-x: hidden;
}
.sidebox{
    background-color: #fffcfa;
    flex-shrink: 0;
    border: 2px solid #8ab800;
    border-radius: 4px;
}
.sidebox2{
    text-align: center;
} 
.side-fill{
    flex-grow:1;
}
.sidecontent{
    color: #6e5057;
    padding: 0;
    font-family: 'font2';
    font-size: 22px;
    letter-spacing: 1px;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}
.sidecontent ul, li{
    margin: 0;
    padding-left: 0;
    list-style-type: none;
}
a{
    text-decoration: none;
    color: #ff668a;
}
a:visited{
    color: #ff668a;
}
a:hover{
    color: #fff;
    text-shadow: 0 0 5px #c71263, 0 0 7px #e86841;
}
#main{
    width: 510px;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
}
.mainboxes{
    min-width: 10vh;
    height: 350px;
    margin: 5px 0 5px 5px;
    box-sizing: border-box;
    border: 2px solid #9ec445;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    border-style: outset;
}
.subheader{
    background-image: linear-gradient(to right, #9ec445, #accc4e);
    border: 1px solid #9ec445;
    padding: 4px 3px 4px 6px;
    color: #fff;
    font-family: 'font4';
    letter-spacing: 3px;
}
.subheader h3{
    margin: 0;
}
 
.mainboxescontent{
    overflow: hidden;
    height: 315px;
    border: 2px solid #9ec445;
    border-style: inset;
    padding: 0 15px 0px 15px;
    color: #6e5057;
    font-size: 22px;
    font-family: 'font2';
    background-color: #fffafa;
}
#footer{
    padding: 3px 10px 3px 0;
    background: #f06e6e;
    color: #fff;
    font-size: 14px;
    font-family: 'font1';
    flex-shrink: 0;
} 
#footer p{
    margin: 0;
}
#main::-webkit-scrollbar {
    width: 2px;
}
#main::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}
#main::-webkit-scrollbar-thumb {
    background: #ff668a;
    border-radius: 4px;
}
#main::-webkit-scrollbar-thumb:hover {
    background: #e6598a;
}
.mainboxescontent::-webkit-scrollbar {
    width: 2px;
}
.mainboxescontent::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}
.mainboxescontent::-webkit-scrollbar-thumb {
    background: #9ec445;
    border-radius: 3px;
}
.mainboxescontent::-webkit-scrollbar-thumb:hover {
    background: #8ab800;
}