/* General Styles - 2008 Blogspot Aesthetic */
body {
    /* Changed font to a more retro one */
    font-family: 'VT323', monospace; /* Pixelated font, fallback to monospace */
    font-size: 16px; /* Increased base size for pixel font legibility */
    line-height: 1.5;
    color: #00ff00; /* Classic green screen text */
    background-color: #111; /* Darker background */
    margin: 0;
    padding: 0;
    position: relative; /* Needed for the background animation */
    overflow-x: hidden; /* Prevent horizontal scrollbar from animation */
    image-rendering: pixelated; /* Force pixelated rendering */
}

.container {
    width: 960px; /* Common fixed width layout */
    margin: 20px auto;
    background-color: #222; /* Dark container background */
    border: 3px solid #00ff00; /* Green border */
    /* Removed box-shadow for flatter look */
    position: relative; /* Keep content above background */
    z-index: 2; /* Above background and crt overlay */
    padding: 15px;
    overflow: hidden; /* Contain floats */
    box-shadow: 0 0 15px rgba(0, 255, 0, 0.3); /* Green glow */
}

/* Header & Navigation */
header {
    background-color: #1a1a1a; /* Very dark grey header */
    color: #ffff00; /* Yellow header text */
    padding: 10px 15px;
    border-bottom: 3px solid #ffff00; /* Yellow accent */
    margin: -15px -15px 15px -15px; /* Stretch header */
    text-align: center;
}

header h1 {
    margin: 0;
    font-size: 48px; /* Larger pixel font size */
    font-family: 'VT323', monospace; /* Ensure header uses the font */
    text-shadow: 3px 3px 0px #ff00ff; /* Magenta shadow */
    letter-spacing: 2px; /* Add some spacing */
}

nav {
    background-color: #333; /* Darker grey for nav */
    border-top: 2px solid #00ff00;
    border-bottom: 2px solid #00ff00;
    margin-top: 10px;
    padding: 0;
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center; /* Center nav items */
}

nav ul li {
    display: inline-block; /* Horizontal layout */
    margin: 0;
}

nav ul li a {
    display: block;
    padding: 10px 18px; /* Slightly larger padding */
    color: #00ff00; /* Green links */
    text-decoration: none;
    font-weight: normal; /* VT323 is already bold-ish */
    border-right: 2px solid #555;
    /* Removed transition for instant hover */
    font-size: 18px; /* Larger nav links */
}

nav ul li:first-child a {
    border-left: 2px solid #555;
}

nav ul li a:hover {
    background-color: #ffff00; /* Yellow hover */
    color: #111; /* Dark text on hover */
}

/* Main Content Area */
main {
    padding-right: 220px; /* Space for the sidebar */
    color: #00ff00; /* Ensure main text is green */
}

.blog-post {
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 2px dashed #555; /* Dashed separator */
}

/* Style for the new article list */
#article-list {
    /* Add specific styles if needed, inherits .blog-post */
}

#article-list h2 {
    color: #ffff00; /* Yellow for article list title */
}

.blog-post:last-child {
    border-bottom: none;
}

.blog-post h2 {
    font-size: 28px; /* Larger headings */
    color: #00ffff; /* Cyan heading */
    margin-bottom: 8px;
    font-family: 'VT323', monospace; /* Ensure heading uses the font */
}

.post-meta {
    font-size: 14px; /* Slightly larger meta */
    color: #aaa; /* Lighter grey meta */
    margin-bottom: 10px;
    /* Removed italic */
}

.blog-post p {
    margin-bottom: 10px;
    font-size: 16px; /* Ensure paragraph text size */
}

.blog-post ol, .blog-post ul {
    margin-left: 25px; /* Adjust indent */
    margin-bottom: 10px;
}

.read-more, .comments-link {
    font-size: 14px; /* Slightly larger links */
    font-weight: normal;
    text-decoration: none;
    color: #00ffff; /* Cyan links */
    background-color: #333; /* Dark background for links */
    padding: 2px 5px;
    border: 1px solid #00ffff;
}

.read-more:hover, .comments-link:hover {
    background-color: #00ffff;
    color: #111;
    text-decoration: none; /* Remove underline */
}

/* Sidebar */
.sidebar {
    float: right;
    width: 200px;
    margin-left: 15px; /* Consistent spacing */
    border: 2px solid #00ff00; /* Green border */
    padding: 10px;
    background-color: #1a1a1a; /* Dark sidebar background */
}

.sidebar h3 {
    font-size: 18px; /* Larger sidebar titles */
    color: #111; /* Dark text */
    background-color: #00ff00; /* Green title background */
    padding: 5px 8px;
    margin: -10px -10px 10px -10px; /* Adjust margin to fit padding */
    border-bottom: 2px solid #ffff00; /* Yellow accent */
    text-align: center;
}

.sidebar ul {
    list-style: none;
    margin: 0 0 15px 0;
    padding: 0; /* Remove padding */
    border: none; /* Remove border */
    background-color: transparent; /* No background for list */
}

.sidebar ul li {
    margin-bottom: 8px; /* Increased spacing */
}

.sidebar ul li a {
    color: #ffff00; /* Yellow sidebar links */
    text-decoration: none;
    font-size: 16px;
}

.sidebar ul li a:hover {
    text-decoration: underline;
    background-color: #ffff00; /* Add background on hover */
    color: #111;
}


/* Footer */
footer {
    clear: both; /* Clear floats */
    text-align: center;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 2px solid #555; /* Darker border */
    color: #aaa; /* Lighter grey footer text */
    font-size: 14px;
}

footer p {
    margin: 0;
}

/* Retro Background Animation - Keep as is */
.background-animation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0; /* Behind content */
    background: linear-gradient(45deg, #ff00ff, #00ffff, #ffff00, #ff00ff); /* Magenta, Cyan, Yellow */
    background-size: 400% 400%;
    animation: gradientBG 15s ease infinite;
    opacity: 0.1; /* Make it subtle */
}

@keyframes gradientBG {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* CRT Overlay Effect */
.crt-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none; /* Allows clicking through */
    z-index: 1; /* Above background, below content */
    opacity: 0.4; /* Adjust opacity */
    background: repeating-linear-gradient(
        0deg,
        rgba(0, 0, 0, 0) 0px,
        rgba(0, 0, 0, 0) 1px,
        rgba(0, 20, 0, 0.2) 2px, /* Dark green subtle scanline */
        rgba(0, 20, 0, 0.2) 3px
    );
    /* Optional: Add subtle noise */
    /* background-image: url(noise.png); */ /* Requires noise image */

    /* Add subtle flicker animation */
    animation: crt-flicker 0.1s infinite alternate;
}

@keyframes crt-flicker {
    0% { opacity: 0.38; }
    100% { opacity: 0.42; }
}


/* Remove original body::after scanlines */
body::after {
   content: none;
}