html, body {
  margin: 0;
  padding: 0;
}

/* video = true background */
#bg-video {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  z-index: -10;
  pointer-events: none;
}

/* site content above video */
#container {
  position: relative;
  z-index: 1;
}


            :root {

                /* colors */
                --content: #eee;
            }

.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: normal;
  font-size: 13px !important;
}
 
@font-face {
                font-family:"Poppins", sans-serif;
            }

          body {
  font-family: "Poppins", sans-serif;
  font-size: 13px;
  margin: 0;
  color: #eee;
}

* {
  box-sizing: border-box;
}

            /* below this line is CSS for the layout */

            /* the "container" is what wraps your entire website */
            /* if you want something (like the header) to be Wider than
    the other elements, you will need to move that div outside
    of the container */
            #container {
                max-width: 1000px;
                /* this is the width of your layout! */
                /* if you change the above value, scroll to the bottom
      and change the media query according to the comment! */
                margin: 0 auto;
                /* this centers the entire page */
            }

            /* the area below is for all links on your page
    EXCEPT for the navigation */
            #container a {
                color: #eee;
                text-decoration: none;
                /* if you want to remove the underline
      you can add a line below here that says:
      text-decoration:none; */
            }
          


            #header {
  background-color: rgba(30, 30, 30, 0.85);
                backdrop-filter: blur(1px);

                width: 100%;
                padding: 10px;
                border-style: solid;
                border-radius: 10px;
                border-color: #B829DD;
            }

            #flex {
                display: flex;
            }

            /* this colors BOTH sidebars
    if you want to style them separately,
    create styles for #leftSidebar and #rightSidebar */
            aside {
background-color: rgba(30, 30, 30, 0.85);
                backdrop-filter: blur(1px);
                width: 200px;
                font-size: 16px;
                border-style: solid;
                border-radius: 10px;
                border-color: #B829DD;
                /* this makes the sidebar text slightly smaller */
            }
#leftSidebar b,
#leftSidebar strong,
#leftSidebar h3 {
  letter-spacing: 0.15em;
  text-transform: uppercase;
}


            /* this is the color of the main content area,
    between the sidebars! */
            main {
                background-color: rgba(30, 30, 30, 0.85);
                backdrop-filter: blur(1px);

                flex: 1;
                padding: 30px;
                order: 2;
                border-style: solid;
                border-radius: 10px;
                border-color: #B829DD;
}
table.statusTable {
  border: 3px solid #e61e93;
  background-color: #9e9e9e;
  width: 500px;
  text-align: center;
  border-radius: 5px;
}
table.statusTable td, table.statusTable th {
  border: 1px solid #B829DD;
  padding: 7px 7px;
}
table.statusTable tbody td {
   font-family: "Poppins", sans-serif;
  font-size: 16px;
  font-weight: normal;
  color: #eee;
}
table.statusTable tr:nth-child(even) {
  background: #eee;
}
table.statusTable td:nth-child(even) {
  background: #A43152;
}
table.statusTable tfoot td {
  font-size: 16px;
}
table.statusTable tfoot .links {
  text-align: center;
}
table.statusTable tfoot .links a{
  display: inline-block;
  background: #FFFFFF;
  color: #B829DD;
  padding: 2px 8px;
  border-radius: 5px;
}

            /* what's this "order" stuff about??
    allow me to explain!
    if you're using both sidebars, the "order" value
    tells the CSS the order in which to display them.
    left sidebar is 1, content is 2, and right sidebar is 3! */

             #leftSidebar {
                order: 1;
            }

            #rightSidebar {
                order: 3;
            }

            h1,
            h2,
            h3 {
                color: #eee;
            }

            h1 {
                font-size: 25px;
            }

            strong {
                /* this styles bold text */
                color: #eee;
            }

            /* BELOW THIS POINT IS MEDIA QUERY */

            /* so you wanna change the width of your page? 
    by default, the container width is 900px.
    in order to keep things responsive, take your new height,
    and then subtrack it by 100. use this new number as the 
    "max-width" value below
    */

            @media only screen and (max-width: 900px) {
                #flex {
                    flex-wrap: wrap;
                }

                aside {
                    width: 100%;
                }

                /* the order of the items is adjusted here for responsiveness!
      since the sidebars would be too small on a mobile device.
      feel free to play around with the order!
      */
                main {
                    order: 1;
                }

                #leftSidebar {
                    order: 2;
                }

                #rightSidebar {
                    order: 3;
            }
  }
  
  /* Footer */
  #site-footer {
  margin-top: 40px;
  padding: 25px 10px;
  border: 2px solid #B829DD;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.9);
  font-family: 'Poppins', sans-serif;
}

#site-footer .footer-title {
  font-size: 14px;
  font-weight: 600;
  color: #B829DD;
  letter-spacing: 1px;
  margin-bottom: 6px;
}

#site-footer .footer-text {
  font-size: 12px;
  color: #e761ad;
  margin: 4px 0;
}
@keyframes rainbowText {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

#site-footer .footer-title,
#site-footer .footer-text {
  background: linear-gradient(
    90deg,
    #ff004c,
    #ff7a00,
    #ffdd40,
    #00ff9c,
    #00c3ff,
    #a855ff,
    #ff2fdc
  );
  background-size: 400% 400%;
  animation: rainbowText 8s ease infinite;

  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Blog Post Layout */
/* BLOG HERO SECTION */
.blog-hero {
  position: relative;
  background: rgba(0, 0, 0, 0.6);
  border: 3px double #B829DD;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  text-align: center;
  overflow: hidden;
}

.hero-stamp-left, .hero-stamp-right {
  position: absolute;
  top: 10px;
  width: 80px;
  opacity: 0.7;
  image-rendering: pixelated;
}

.hero-stamp-left { left: 10px; transform: rotate(-5deg); }
.hero-stamp-right { right: 10px; transform: rotate(5deg); }

.hero-marquee {
  background: rgba(255, 221, 64, 0.1);
  border: 1px solid #B829DD;
  color: #ffdd40;
  font-family: "Courier New", monospace;
  font-size: 11px;
  letter-spacing: 2px;
  padding: 3px;
  margin-bottom: 15px;
  border-radius: 3px;
}

.glitter-title {
  display: inline-block;
  filter: drop-shadow(0 0 5px rgba(255, 221, 64, 0.5));
}

/* BLOG META TABLE EXTENSION */
.blog-meta {
  margin: 15px auto;
  width: 80% !important;
  background: rgba(30, 30, 30, 0.9) !important;
}

/* ARTICLE STYLING */
.blog-article {
  line-height: 1.8;
  font-size: 13px;
  text-align: justify;
  padding: 0 10px;
}

.section-header {
  text-align: center;
  margin: 25px 0 15px 0;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 3px;
}

.header-icon {
  vertical-align: middle;
  margin: 0 8px;
}

/* Y2K HIGHLIGHT BOX */
.y2k-highlight-box {
  background: linear-gradient(135deg, rgba(255, 47, 111, 0.2), rgba(231, 97, 173, 0.2));
  border: 2px dashed #ff2f6f;
  border-radius: 8px;
  padding: 12px;
  margin: 15px 0;
  font-family: "Courier New", monospace;
  box-shadow: 0 0 10px rgba(255, 47, 111, 0.3);
}

/* CODE WINDOW (Retro Terminal Look) */
.code-window {
  background: #000 !important;
  border: 2px solid #e761ad;
  border-radius: 8px;
  margin: 20px 0;
  box-shadow: 4px 4px 0 rgba(231, 97, 173, 0.3);
  overflow: hidden;
}

.code-header {
  background: linear-gradient(90deg, #333, #555);
  padding: 5px 10px;
  border-bottom: 1px solid #e761ad;
  font-size: 12px;
}

.code-content {
  margin: 0;
  padding: 15px;
  color: #00ff00;
  font-family: "Courier New", monospace;
  font-size: 12px;
  line-height: 1.4;
  overflow-x: auto;
  text-shadow: 0 0 2px rgba(0, 255, 0, 0.5);
}

/* CUSTOM LIST */
.y2k-list {
  list-style: none;
  padding-left: 0;
}

.y2k-list li {
  margin: 8px 0;
  padding-left: 25px;
  position: relative;
}

.y2k-list li img {
  position: absolute;
  left: 0;
  top: 3px;
}

/* TAG PILLS */
.blog-tags {
  margin: 25px 0;
  padding: 15px;
  background: rgba(255, 221, 64, 0.05);
  border: 1px solid rgba(255, 221, 64, 0.3);
  border-radius: 8px;
}

.tag-pill {
  display: inline-block;
  background: rgba(231, 97, 173, 0.3);
  border: 1px solid #e761ad;
  color: #eee;
  padding: 2px 8px;
  margin: 2px;
  border-radius: 12px;
  font-size: 11px;
  letter-spacing: 1px;
}

/* NAVIGATION */
.blog-footer-nav {
  margin-top: 30px;
  padding: 20px;
  background: rgba(30, 30, 30, 0.6);
  border: 1px solid #B829DD;
  border-radius: 10px;
}

.nav-link {
  color: #00c3ff !important;
  font-size: 12px;
  text-decoration: none !important;
  transition: all 0.3s;
}

.nav-link:hover {
  color: #ff2f6f !important;
  text-shadow: 0 0 5px rgba(255, 47, 111, 0.7);
}

/* HIT COUNTER */
.hit-counter {
  margin-top: 15px;
  font-family: "Courier New", monospace;
}

.counter-digits {
  background: #000;
  color: #00D4AA;
  padding: 3px 8px;
  border: 2px inset #555;
  font-family: "Courier New", monospace;
  font-size: 14px;
  letter-spacing: 3px;
  text-shadow: 0 0 5px rgba(0, 255, 0, 0.5);
}

/* FLOAT FIX */
.blog-article::after {
  content: "";
  display: table;
  clear: both;
}

/* ADD SCANLINE EFFECT TO HERO (Optional retro touch) */
.blog-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.1),
    rgba(0, 0, 0, 0.1) 1px,
    transparent 1px,
    transparent 2px
  );
  pointer-events: none;
  border-radius: 8px;
}

/* left sidebar accordion */
/* Obsidian Accordion – Icon Based (Stable) */

details.hw-acc {
  border: 1px solid var(--background-modifier-border);
  border-radius: 8px;
  margin: 0.75em 0;
  padding: 0.25em 0.75em;
  background: var(--background-secondary);
}

details.hw-acc > summary {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
  font-weight: 600;
  list-style: none;
}

/* Remove native disclosure markers */
details.hw-acc > summary::-webkit-details-marker {
  display: none;
}
details.hw-acc > summary::marker {
  content: "";
}

/* Icon */
details.hw-acc .acc-icon {
  display: inline-block;
  width: 1em;
  transition: transform 120ms ease-in-out;
  opacity: 0.85;
}

/* Rotate when open */
details.hw-acc[open] .acc-icon {
  transform: rotate(90deg);
}

/* Content spacing */
details.hw-acc > *:not(summary) {
  padding: 0.4em 0 0.6em 1.7em;
}
