/* CSS RESET */
/* as from piccalli.li */


/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove default margin in favour of better control in authored CSS */
body, h1, h2, h3, h4, p,
figure, blockquote, dl, dd {
  margin-block-end: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
  list-style: none;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}

/* Set shorter line heights on headings and interactive elements */
h1, h2, h3, h4,
button, input, label {
  line-height: 1.1;
}

/* Balance text wrapping on headings */
h1, h2,
h3, h4 {
  text-wrap: balance;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}


/* ... */
:root {
  --color1a: #d0cfd4;
  --color1b: #b4b8bb;
  --color2: #37353c;
  --color3: ;
}

* {
    font-family: Arial, sans-serif;
    color: var(--color1b);
    font-size: 14px;
    scrollbar-width: none;
}

h2 {
  margin-top: 3px;
  margin-bottom: 9px;
}

main p, main a, main b, main i, main span, main ::marker {
  margin-top: 0;
  font-size: 12px;
  margin-bottom: 3px;
}

.flex {
  display: flex;
}

#bg {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); 
    
    min-width: 100%; 
    min-height: 100%;
    width: auto;
    height: auto;
    
    z-index: -100; 
    
    object-fit: cover; 
}

#bg-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9); 
    z-index: -90;
}


body {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
}

body>div {
    display: flex;
    flex-direction: column;
    width: 55rem;
    height: 44rem;
    padding: 2rem 3rem 1rem 3rem;
}

header>.flex {
  justify-content: center;
}

#title {
    text-align: center;
    margin-bottom: 1.2rem;
}

#title>a {
    text-decoration: none;
    font-size: 26px;
    color: rgb(231, 231, 231);
}

nav {
    display: flex;
    justify-content: center;
}

nav>ul {
    display: flex;
    justify-content: center;
    list-style: none;
    gap: 1rem;
    border-radius: 1rem 1rem 0 0;
    padding: 4px 1.5rem 2px 1.5rem;
    margin: 0;
    background-color: var(--color1a);
}

nav>ul>li {
    color: var(--color2);
}

nav>ul>li>a {
    text-decoration: none;
    font-weight: bold;
}

main {
    height: 484px;
    background-color: #201f23;
    border-radius: 1rem;
    border: 4px solid rgb(156,155,159);
    padding: 2rem;
}

footer {
    margin-top: auto;
    margin-left: 12px;
}

footer>p {
    font-size: x-small;
    margin-top: 0;
}

/* ABOUT */

#about-container {
  flex-direction: column;
  height: 100%;
  position: relative;
}

#about-site-container, #about-me-container {
  height: 50%;
}

#about-container #pfp {
  height: 133px;
  width: 133px;
  position: absolute;
  bottom: -28px;
  right: -36px;
}

/* JOURNAL */

#journal-container, #logs-container {
  height: 100%;
  display: flex;
}

#journal-list-container {
  width: 66px;
  overflow-y: scroll;
  height: 100%;
}

#journal-list-container li, #logs-list-container li {
  list-style: none;
  margin: 0;
  padding: 0;
}

#journal-list-container a, #logs-entry-container a {
  text-decoration: none;
  font-size: 13px;
}

#journal-list-container a:visited, #logs-list-container a:visited {
  color: rgb(131, 130, 133);
}

#journal-list-container a .selected, #logs-list-container a .selected {
  font-weight: bold;
}

#journal-list-container ul, #logs-list-container ul {
  padding: 0;
  margin: 0;
}

#journal-entry-container, #logs-entry-container {
  padding-left: 33px;
  overflow-y: scroll;
  width: 100%;
  height: 100%;
}

/* JOURNAL ENTRY */
/*
  classes change every fetch for any styling except 
    stuff that has an html tag, .title, and .subtitle.
  giving up colored text and highlighting; 
    workaround for bold, italic, and underline using h3=b h4=i h5=u.
  other elements work perfectly, surprisingly, except drawings.
*/

#journal-entry-container .title, #journal-entry-container .subtitle,
#logs-entry-container .title, #logs-entry-container .subtitle {
  display: none;
}

#journal-entry-container h1, #journal-entry-container h1>*,
#logs-entry-container h1, #logs-entry-container h1>* {
  font-size: 15px;
  font-weight: bold;
  margin-top: 9px;
  margin-bottom: 9px;
}

#journal-entry-container h2, #journal-entry-container h2>*,
#logs-entry-container h2, #logs-entry-container h2>* {
  font-size: 13px;
  font-weight: bold;
  margin-top: 6px;
  margin-bottom: 6px;
}

#journal-entry-container h3, #journal-entry-container h3>*,
#logs-entry-container h3, #logs-entry-container h3>* {
  font-size: 12px;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 3px;
}

#journal-entry-container h4, #journal-entry-container h4>*,
#logs-entry-container h4, #logs-entry-container h4>* {
  font-size: 12px;
  font-weight: normal;
  font-style: italic;
  margin-top: 0;
  margin-bottom: 3px;
}

#journal-entry-container h5, #journal-entry-container h5>*,
#logs-entry-container h5, #logs-entry-container h5>* {
  font-size: 12px;
  font-weight: normal;
  text-decoration: underline;
  margin-top: 0;
  margin-bottom: 3px;
}

#journal-entry-container ul, #journal-entry-container ol,
#logs-entry-container ul, #logs-entry-container ol {
  margin-top: 9px;
}

table, th, td {
  border: 1px solid gray;
  border-collapse: collapse;
}

td {
  padding: 6px;
}

#journal-container img,
#logs-container img {
  background-color: white;
}

#journal-entry-times-container,
#logs-entry-times-container {
  display: flex;
  justify-content: space-between;
  border-top: 1px gray solid;
  padding-top: 3px;
  padding-left: 3px;
  padding-right: 3px;
  margin-top: 12px;
}

#journal-entry-times-container p {
  color: gray;
  font-size: 11px;
}

#logs-list-container {
  width: 166px;
  overflow-y: scroll;
  height: 100%;
}
