html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
  }
  /* HTML5 display-role reset for older browsers */
  article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
  }
  body p{
    line-height: 1.3em;
  }
  ol, ul {
    list-style: none;
  }
  blockquote, q {
    quotes: none;
  }
  blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
@font-face {
    font-family:"Comic Sans";
    src: url("fonts/Comic.ttf") format('truetype');
}
@font-face {
    font-family:"Cozette";
    src: url("fonts/CozetteVector.ttf") format('truetype');
}
@font-face {
    font-family: Fira Code;
    src: url("fonts/FiraCode-VariableFont_wght.ttf") format('truetype');
}
@font-face {
    font-family: Lexend Exa;
    src: url("fonts/LexendExa-VariableFont_wght.ttf") format('truetype');
}
@font-face {
    font-family: Lexend Mega;
    src: url("fonts/LexendMega-VariableFont_wght.ttf") format('truetype');
}
@font-face {
    font-family: OpenDyslexic-Regular;
    src: url("fonts/OpenDyslexic-Regular.otf") format('opentype');
}
@font-face {
    font-family: Papyrus;
    src: url("fonts/papyrus.ttf") format('truetype');
}
@font-face {
    font-family: Verdana;
    src: url("fonts/verdana.ttf") format('truetype');
}
@font-face {
    font-family: Wingdings;
    src: url("fonts/wingding.ttf") format('truetype');
}


/* Scrollbar CSS ---> */
/* Firefox */
* {
    scrollbar-width: auto;
    scrollbar-color: #97ba91 #000;
    box-sizing: border-box;
}
/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
    width: 15px;
}
*::-webkit-scrollbar-track {
    background: #000;
}
*::-webkit-scrollbar-thumb {
    background-color: #97ba91;
    border-radius: 0;
    border: 0 ridge #fff;
}
::selection {
    background: rgba(201, 219, 97, 0.6); /* WebKit/Blink Browsers */
  }
  ::-moz-selection {
    background: rgba(201, 219, 97, 0.6); /* Gecko Browsers */
  }
html:before {
    content: " ";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: linear-gradient( rgba(201, 221, 230, 0) 50%, rgba(13, 6, 37, 0.24) 50% );
    z-index: 4;
    background-size: 100% 2px,4px 100%;
    pointer-events: none;
}
html {
    background-color: rgb(13, 44, 47);
    background-image: url("images/test5.2.jpg");
    background-size: cover;
    image-rendering: pixelated;
    background-attachment: fixed;
}
body {
    color: #fdf5e6;
    font-family: "Fira Code";
}
.container_logo img {
    position: top;
    justify-content: center; /* Horizontal centering */
    align-items: center;     /* Vertical centering */
    max-width: 1000px;
    width: 100%;
    height: 550%;
    display: block;  /* Essential for margin: auto to work */
    margin: 0 auto;  /* Centers the block horizontally */
}

.container {
    padding:20px 20px 15px 20px;
    position: relative;
    display: flex;
    justify-content: space-between;
    
}
.outer {
    width:14%;
}
#box {
    border-radius: 13px 13px 0 0;
    box-shadow : 0 0 0 3px rgba(244, 128, 128, 1),
    0 0 0 5px #f5e8ea,
    0 0 0 15px rgba(255, 255, 255, 0);

  }
.grid {
    display: grid;
    grid-template-columns: 0.35fr 1.6fr; 
    grid-template-areas: 
      "header header"
      "side main"
      "footer footer"; 
    max-width:1350px;
    position: relative;
}
/* #contain_moon{
  background-color:gray;
  color:white;
  font-family:Arial;
}
   */
#header {
    display:flex;
    flex-direction: row;
    grid-area: header;
    position: relative;
    height: 60px;
    padding-top:6px;
    margin: 0;
    border-bottom: 3px ridge #f5e8ea;
    border-radius: 9px 9px 0 0;
    background-image: linear-gradient(0deg, #f37474, #dd4444 60%, rgba(221, 68, 68, 1) 80%, rgba(244, 128, 128, 1) 100%);
    color: #fff;
    letter-spacing: 3px;
    font-family: "Cozette";
    font-size:42px;
    z-index:2;
}
#header img {
    height: 200%;
    margin: -26px -5px -28px -48px;
    vertical-align: middle;
    filter: drop-shadow(0 0 15px rgba(172, 209, 239, 0.6)) brightness(1.05);
    image-rendering: auto;
}

#side {
    grid-area: side;
    display: flex;
    flex-direction: column;
    gap: 0;
    background-color: rgba(15, 9, 31, 0.3);
    backdrop-filter: blur(2.8px);
    border-left: 3px ridge #f5e8ea;
    border-right:3px ridge #f5e8ea;
    z-index:1;
}
.sidebox {
    border:2px ridge #f5e8ea;
    border-radius: 6px 6px 0 0;
    height:fit-content;
    padding: 0;
    margin:10px;

    box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -webkit-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -moz-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
}

.sidebox .subheader {
    image-rendering:auto;
    background-image: linear-gradient(0deg, rgb(243, 116, 116), rgba(221, 68, 68, 1) 60%, rgba(221, 68, 68, 1) 80%, rgba(244, 128, 128, 1) 100%);
    border-radius: 4px 4px 0 0;
    border-bottom: 2px ridge #f5e8ea;
    font-size: 18px;
}
.subheader {
    background-image: linear-gradient(to right,rgb(29, 89, 97), rgb(30, 76, 83));
    width: 100%;
    padding: 4px 10px;
    border-radius: 2px 2px 0px 0px;
    border-bottom: 2px outset rgba(4, 29, 24, 0.4);
    font-family: "Cozette";
    font-size: 18px;
    font-weight:500;
    color: white;
    text-align: left;
}
.sidecontent {
    padding: 0 0 5px 5px;
    background-image: linear-gradient(to right, rgba(144, 224, 224, 0.9),  rgba(131, 223, 215, 0.9));
    backdrop-filter: blur(2.5px);
    line-height:1.5;
}

.sidecontent a {
    padding: 3px 5px 0 5px;
    border-left: 1px dotted black;
    border-bottom: 1px dotted black;

    color:rgb(13, 26, 29);
    font-size:14px;
    font-weight:600px;
    text-decoration:none;
}
.sidecontent a:hover {
    background-color:rgba(173, 245, 245, 0.7);
    color:rgb(73, 38, 201);
    font-size:14px;
    font-weight:600px;
    text-decoration:none;
}
.sidecontent a:active {
    background-color:rgba(37, 77, 78, 0.6);
    color:rgb(236, 131, 145);
}
.sidecontent a:focus {
    border-left:none;
    border-bottom:1px dotted white;
}

nav {
    display: flex;
    flex-direction: column;
}
.mborder {
    height:calc(100% + 10px);
    margin:-5px 0 -15px -10px;
    border: 10px outset rgba(15, 17, 17, 0.6);
    padding:5px;
}

main {
    grid-area: main;
    position: relative;
    display: flex;
    flex-direction: column;
    background-color: rgb(18, 18, 22);

    backdrop-filter: blur(2.6px);
    border-right:3px ridge #f5e8ea;
    padding-left:10px;
    padding-bottom: -10px;
}
main:first-of-type {
    padding-top:5px;
}
main:last-of-type {
    padding-bottom:5px;
}
.mainbox {
    border: 2px outset rgba(21, 90, 77, 0.4);
    border-radius: 4px 4px 0 0;
    margin:10px 20px 10px 20px;
    height:fit-content;

    box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -webkit-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -moz-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
}
.mainbox a:hover {
    transition: 0.3s;
}
.flexrow {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
}

.maincontent{
    margin: 0;
    padding: 10px 20px 10px 20px;
    background-color: rgb(15, 66, 73);
    
}
.maincontent h3 {
    text-align: center;
    color: rgb(234, 240, 161);

    text-shadow:
    0 0 5px rgba(183, 231, 80, 0.5), 0 0 10px rgba(183, 231, 80, 0.5),
  0 0 15px rgba(183, 231, 80, 0.5), 0 0 20px rgba(183, 231, 80, 0.5);
    margin-bottom:5px;
}
.maincontent h4 {
    color: #f1c6d8;
    text-shadow:
    0 0 5px rgba(231, 68, 90, 0.8), 0 0 10px rgba(231, 68, 90, 0.8),
  0 0 15px rgba(231, 68, 90, 0.8), 0 0 20px rgba(231, 68, 90, 0.8);
    margin-bottom:5px;
    font-size:16px;
      }
.maincontent p, .maincontent ul, .maincontent details, .mincontent p, .mincontent ul, .mincontent li{
    font-size:14px;
    margin-bottom:5px;
    line-height:1.4;
}
.maincontent li {
    font-size:14px;
    margin-bottom:5px;
    line-height:1.4;
}
ul li{
    list-style-type: "❯❯ ";
    margin-left:10px;
}
.maincontent b, strong {
    font-weight:bold;	
    color: #62d675;
}
.maincontent i, em {
    font-style:italic;	
    color: rgb(253, 150, 150);
}
.maincontent br {
    display: block;
    content: "";
    margin-top: 0;
}

.maincontent a {
    text-decoration: none;
    text-shadow: 0 0 10px rgba(247, 225, 118, 0.4);
    color: #e9e752;
}
.maincontent a:hover {
    filter: drop-shadow(0 0 5px rgba(243, 240, 171, 0.4)) brightness(1.2);
    transition: 0.3s;
}
.maincontent a:active {
    color:rgb(241, 160, 38)
}
.maincontent a:focus {
    border-bottom:1px dotted #e9e752;
}
.hiddenlink a:hover {
    filter: none;
}
.maincontent hr{
    color: rgba(45, 219, 206, 0.8) 
}
.maincontent ul {
    list-style-type: none;
    margin-left: 0;
    padding-left: 0;
}

mark {
    background-color:rgba(197, 238, 47, 0.5);
}
details summary{
    cursor: pointer;
}
details details, details p, details ul, details h3 {
    margin-left: 1rem;
    margin-top:8px;
}
.code {
    border: 2px solid rgba(168,215,101,0.8);border-radius:7px;
     box-shadow: 0 0px 10px rgba(200,224,166,0.4);
     background-color: rgba(4, 11, 12, 0.76);margin-left: auto;
     margin-right:auto;
     padding:10px;
     margin-top:20px;
     margin-bottom:20px;
     width:fit-content;
     backdrop-filter: blur(3px);
}
sup {
    font-size:10px;
}
.mincontent {
    background-image: linear-gradient(to right, rgba(157, 230, 224, 0.9),  rgba(145, 226, 212, 0.9));
    border-radius: 6px;
    border: 2px outset rgba(93, 163, 168, 0.9);
    margin:20px 10% 10px 10%;
    color:rgb(1, 26, 21);
    font-weight:500;

    box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -webkit-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -moz-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
}
.mincontent section {
    padding:15px 25px 10px 25px;
}

.mincontent h3 {
    background-image: linear-gradient(to top, rgba(37, 80, 83, 0.5) 40%,  rgba(44, 114, 116, 0.4) 90%);
    width: 100%;
    padding: 4px 7px;
    margin:0px;
    border-radius: 3px 3px 0px 0px;
    border-bottom: 2px outset rgba(91, 184, 190, 0.9);
    font-family: "Cozette";
    font-size: 20px;
    font-weight:500;
    color: white;
    text-shadow: none;
    text-align: left;
}

.mincontent a {
    text-decoration: none;
    text-shadow: 0 0 10px rgba(0, 174, 255, 0.4);
    color: #3528e6;
}
.mincontent a:hover {
    filter: brightness(1.6);
}
.mincontent a:active {
    color:rgb(86, 10, 180)
}
.mincontent a:focus {
    border-bottom:1px dotted #3528e6;
}

.mincontent i, .mincontent em {
    color: rgb(145, 27, 76);
}
.mincontent b, .mincontent strong {
    color: rgb(131, 22, 46);
}
.tab {
    margin: 10px 50px 10px 50px;
   }

   .tab input {
    position: absolute;
    z-index: -1;
   }

   .tab_content {
    max-height: 0;
    overflow: hidden;
   }

   .tab input:checked~.tab_content {
    max-height: 1200px;
   }

   .tab_label,
   .tab_close {
    display: flex;
    font-family: "Cozette";
    font-weight: 700;
    font-size: 18px;
    color: #ffffff;
    background-image: linear-gradient(to top,rgb(85, 151, 155), rgb(72, 138, 141));
    
    cursor: pointer;
   }

   .tab_label {
    justify-content: space-between;
    border-radius: 4px;
    padding: 10px 20px 10px 20px;
    border:2px solid rgba(255, 255, 0, 0);
   }

   .tab_label:hover {
    border-top:2px solid rgba(255, 153, 0, 0.8);
    background-image: linear-gradient(to top,rgb(68, 122, 124), rgb(58, 110, 112));
   }
   .tab input:checked~.tab_label {
    color: white;
    background-image: linear-gradient(to top,rgb(54, 97, 99), rgb(42, 81, 82));
    border-radius: 8px 8px 0 0;
    border-top:2px solid rgba(255, 208, 0, 0.8);
   }

   .tab input:checked~.tab_label {
    border-radius: 4px 4px 0 0;
   }

   .tab_label::after {
    content: "\2B";
    width: 10px;
    height: 10px;
    text-align: center;
   }
   .tab input:checked+.tab_label::after {
    content: "\2193";
   }

   .tab_content:hover,
   .tab input:checked~.tab_content {
    border-left: 1px dashed rgba(255, 208, 0, 0.8);
    border-bottom: 1px dashed rgba(255, 208, 0, 0.8);
    border-right: 1px dashed rgba(255, 208, 0, 0.8);
    padding: 10px 20px 10px 20px;
    overflow: hidden;
    background-color: rgba(25, 106, 116, 0.6);
    font-size: 14px;
   }
   .tab_content p, .tab_content ol {
     font-size:14px;
     margin-bottom:10px;
     line-height:1.4;
   }
   .tab_content a {
text-decoration: none;
text-shadow: 0 0 10px rgba(247, 225, 118, 0.4);
color: #e9e752;
}
.tab_content a:hover {
filter: drop-shadow(0 0 5px rgba(243, 240, 171, 0.4)) brightness(1.2);
}
.tab_content a:active {
color:rgb(241, 160, 38)
}
.tab_content a:focus {
border-bottom:1px dotted #e9e752;
}

   .tab_content input:before {
    padding: 0;
   }
.pic {
    border:2px ridge #f5e8ea;
    border-radius: 6px 6px 0 0;
    height:fit-content;
    padding: 0;
    margin-bottom:10px;

    box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -webkit-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
    -moz-box-shadow: 9px 9px 5px -7px rgba(0,0,0,0.3);
}
.pic .subheader{
    background-image: linear-gradient(0deg, rgb(243, 116, 116), rgba(221, 68, 68, 1) 60%, rgba(221, 68, 68, 1) 80%, rgba(244, 128, 128, 1) 100%);
    border-radius: 4px 4px 0 0;
    border-bottom: 2px ridge #f5e8ea;
}
figure {
    display:grid;
}
figure a {
    margin-bottom:-4px;
}
figcaption {
    border-top: 2px ridge #cfc5c6;
    padding:2px 5px 5px 5px;
    font-size:12px;
    font-weight:500;
    text-align: center;
    line-height:1.0;
    color:black;
    background-image: linear-gradient(to right, rgb(238, 229, 230),  rgba(236, 224, 224, 0.9));
}
figcaption i, figcaption em {
    color: #851430;
}
select {
    box-sizing: border-box;
    border: 1px solid #003c74;
    border-radius: 4px;
    text-align:center;
    font-size: 13px;
    background: linear-gradient( 180deg, rgba(255, 255, 255, 1) 0%, rgba(241, 220, 242, 1) 86%, rgba(151, 186, 145, 1) 100% );
    cursor: pointer;
    width: fit-content;
    font-family: inherit;
    -ms-word-break: normal;
    outline: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    word-break: normal;
    &:not(:disabled) {
        &:active, &.active {
            box-shadow: none;
            background: linear-gradient(180deg, rgba(205, 202, 195, 1) 0%, rgba(227, 227, 219, 1) 8%, rgba(229, 229, 222, 1) 94%, rgba(151, 186, 145, 1) 100% );
       }
        &:hover {
            box-shadow: inset -1px 1px #fff0cf, inset 1px 2px #f2cf5c, inset -2px 2px #fbc761, inset 2px -2px #e8a4d0;
       }
   }
    &:focus, &.focused {
        box-shadow: inset -1px 1px #c4e57e, inset 1px 2px #c4e57e, inset -2px 2px #bcd4f6, inset 1px -1px #626de0, inset 2px -2px #89ade4;
   }
    &::-moz-focus-inner {
        border: 0;
   }
}
.selectdiv {
    padding-bottom:10px;
    font-family:Fira Code;
}
button, .btn {
    font-size: 15px;
    box-sizing: border-box;
    border: 1px solid hwb(209 0% 54%);
    background: linear-gradient( 180deg, rgba(255, 255, 255, 1) 0%, rgba(241, 220, 242, 1) 86%, rgba(151, 186, 145, 1) 100% );
    box-shadow: none;
    border-radius: 4px;
    cursor: pointer;
    &:not(:disabled) {
        &:active, &.active {
            box-shadow: none;
            background: linear-gradient(180deg, rgba(205, 202, 195, 1) 0%, rgba(227, 227, 219, 1) 8%, rgba(229, 229, 222, 1) 94%, rgba(151, 186, 145, 1) 100% );
       }
       &:hover {
           box-shadow: inset -1px 1px #fff0cf, inset 1px 2px #f2cf5c, inset -2px 2px #fbc761, inset 2px -2px #e8a4d0;
           }
         }
         &:focus, &.focused {
           box-shadow: inset -1px 1px #c4e57e, inset 1px 2px #c4e57e, inset -2px 2px #bcd4f6, inset 1px -1px #626de0, inset 2px -2px #89ade4;
   }
    &::-moz-focus-inner {
        border: 0;
   }
}

#to_top {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    font-size: 16px;
    font-family: "Cozette";
    font-weight: bold;
    padding: 4px 12px 12px 12px;
    border-radius: 4px;
  
    animation: fadeIn 1s;
    -webkit-animation: fadeIn 1s;
    -moz-animation: fadeIn 1s;
    -o-animation: fadeIn 1s;
    -ms-animation: fadeIn 1s;
  }
  @keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
  @-moz-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
  @-webkit-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
  @-o-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
  @-ms-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }

.tooltip, .tooltip i {
    display: inline-block;
    text-decoration-line: underline;
    text-decoration-style: dashed;
    color: #afecd0;
    cursor: pointer;
}
.tooltiptext {
    display: none;
    visibility: visible;
    background: #691544;
    border-radius: 6px;
    max-width:fit-content;
    padding: 5px;
    left: 10px;
    right: 10px;
    border: 2px solid rgb(26, 180, 134);
    line-height:1.2;
    font-size:13px;
    font-weight: 400;
    position: absolute;
    z-index: 10;
}
.tooltip:hover + span {
    display: block;
}
footer {
    grid-area: footer;
    justify-self: right; 
    width: 100%;
    padding-top: 5px;
    padding: 3px;
    border-top: 2px ridge #f5e8ea;
    background-image: linear-gradient(0deg, rgb(243, 116, 116), rgba(221, 68, 68, 1) 60%, rgba(221, 68, 68, 1) 80%, rgba(244, 128, 128, 1) 100%);
    font-size:12px;
    text-align:right;
}
footer a:hover {
    filter: drop-shadow(0 0 7px rgba(255, 255, 255, 0.7));
}

@media only screen and (max-width: 1281px) {
    .container {
        padding: 5px;
        flex-direction: column;
    }
    .outer {
        margin-left:85%;
        margin-right:auto;
    }
    .selectdiv {
        float:right;
    }
}
@media only screen and (max-width: 700px) {
    #header {
        font-size:32px;
        height:fit-content;
    }
    body {
        margin: 0;
    }
    .container {
        padding: 0;
    }
    .outer {
        margin-top:5px;
    }
    .grid {
        display: flex;
        flex-direction: column;
    }
    #header img {
        display: none;
    }

    .side {
        position: relative;
    }
    .nav {
        padding: 0px;
        position: relative;
        transition: max-height 200ms cubic-bezier(0.23, 1, 0.32, 1);
        max-height: 300px;
        overflow: hidden;
    }
    .sidecontent > a {
        padding-top: 2px;
        padding-bottom: 2px;
    }
    .mborder {
        height:calc(100% + 10px);
        margin:-5px 0 5px -10px;
        border: none;
    }
    main {
        border-top:3px ridge #f5e8ea;
        border-right:none;
    }
    .mainbox {
        margin:0;
    }
    .flexrow {
        flex-direction: column;
    }
    .pic {
        margin-left:auto;
        margin-right:auto;
    }
}