body {
    background-color: #000000; /* Black background */
    /* color: #00FF00; Comment out or remove old green text */
    color: #FFFFFF; /* White text for body */
    font-family: 'Roboto Mono', 'Courier New', Courier, monospace; /* Changed to Roboto Mono */
    margin: 0;
    padding: 0;
    line-height: 1.4; /* Reduced line height */
    font-size: 16px; /* Base font size */
}

.container { /* New container style */
    max-width: 960px; /* Max width for content */
    margin: 0 auto; /* Center the container */
    padding: 0 20px; /* Padding on the sides */
    position: relative; /* Needed so content appears above the fixed canvas */
    z-index: 1;
}

h1, h2 {
    color: #00FF00; /* Keep headings green */
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 0 0 3px #00FF00, 0 0 6px #00FF00; /* Slightly softer glow */
    margin-top: 0; /* Remove top margin */
}

h1 {
    font-size: 2.0em; /* Slightly Reduced heading size */
    margin-top: 0; /* Ensure no top margin */
    margin-bottom: 0px; /* Further reduced margin */
}

h2 {
    font-size: 1.8em;
    margin-bottom: 5px; /* Reduced margin */
}

h3 { /* Style for new subheadings */
    font-size: 1.3em;
    color: #00FF00;
    text-shadow: 0 0 2px #00FF00;
    margin-top: 10px; /* Reduced margin */
    margin-bottom: 8px; /* Reduced margin */
    border-bottom: 1px dashed #008000;
    padding-bottom: 4px; /* Reduced padding */
}

.tagline { /* Style for the new tagline */
    text-align: center;
    font-size: 1.0em; /* Reduced font size */
    color: #FFFFFF; /* White text for contrast */
    margin-top: 0; /* Ensure no top margin */
    margin-bottom: 3px; /* Further reduced space below tagline */
    text-shadow: 0 0 3px #00FF00; /* Subtle green glow */
}

main {
    padding-top: 0; /* Removed top padding */
}

section {
    margin-bottom: 5px; /* Minimal spacing */
    padding: 10px; /* Significantly reduced padding */
    /* border: 1px dashed #008000; Remove or comment out the border */
    background-color: rgba(0, 0, 0, 0.85); /* Increased opacity */
    border-radius: 5px; /* Optional: Add slightly rounded corners */
    padding-bottom: 4px; /* Reduced padding - might remove if redundant */
}

/* Remove separation for terminal section */
section#music {
    margin-bottom: 0; /* Remove gap below music */
}
/* Add height for iframe */
section#music iframe {
    height: 350px; /* Reduced height */
}
section#terminal {
    margin-top: 0;
    margin-bottom: 5px; /* Keep original bottom margin */
    padding: 0; /* Remove padding */
    background-color: transparent; /* Remove background */
    border-radius: 0;
}

section ul, section ol { /* Style for lists within sections */
    margin-left: 20px; /* Indent lists slightly */
    padding-left: 20px;
}

section ul li, section ol li { /* Style for list items */
    margin-bottom: 8px;
}

/* Basic Table Styling */
.info-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px; /* Reduced margin */
    margin-bottom: 10px; /* Reduced margin */
}

.info-table th, .info-table td {
    border: 1px solid #008000; /* Darker green border */
    padding: 8px 10px;
    text-align: left;
    vertical-align: top;
}

.info-table th {
    background-color: rgba(0, 50, 0, 0.6); /* Dark green background for headers */
    color: #00FF00; /* Green text for headers */
    font-weight: bold;
}

.singles-table td:first-child {
    white-space: nowrap; /* Prevent track names from wrapping unnecessarily */
}

/* Styles for the moved bio info block */
.bio-info {
    padding: 1px 0; /* Minimal padding */
    margin-bottom: 5px; /* Reduced margin */
    border-top: 1px dashed #008000; /* Dashed green top border */
    border-bottom: 1px dashed #008000; /* Dashed green bottom border */
    line-height: 1.3; /* Reduced line spacing */
    text-align: center; /* Center the bio text */
    font-size: 0.9em; /* Reduced font size */
}

.bio-info strong {
    color: #00FF00; /* Green labels */
    font-weight: normal; /* Make labels non-bold to match terminal style */
    margin-right: 5px; /* Space after label */
}

/* Removed #social styles */

/* Navbar Styles */
nav {
    background-color: rgba(0, 0, 0, 0.8); /* Slightly transparent background */
    padding: 3px 0; /* Reduced padding */
    position: sticky; /* Make navbar stick to top */
    top: 0;
    z-index: 10; /* Ensure navbar is above other content */
    border-bottom: 1px solid #008000; /* Dark green bottom border */
    margin-bottom: 0px; /* Remove space below navbar */
}

nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center; /* Center links */
    align-items: center;
    flex-wrap: wrap; /* Allow wrapping on small screens */
}

nav ul li {
    margin: 3px 12px; /* Reduced spacing around links */
}

nav ul li a {
    color: #00FF00; /* Green links */
    text-decoration: none;
    font-size: 1em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 5px 0;
    transition: color 0.3s ease, text-shadow 0.3s ease;
}

nav ul li a:hover {
    color: #ffffff; /* White on hover */
    text-shadow: 0 0 8px #ffffff;
}

footer {
    text-align: center;
    padding: 5px 0; /* Reduced padding */
    margin-top: 15px; /* Reduced spacing */
    /* border-top: 1px solid #00FF00; */ /* REMOVED */
    font-size: 0.9em; /* Adjusted font size */
}

/* Matrix Rain Canvas Styling */
#matrix-canvas {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; /* Place canvas behind other content */
    display: block; /* Prevent potential spacing issues */
}

/* Responsive Design */
@media (max-width: 768px) { /* Tablet and smaller */
    body {
        font-size: 15px; /* Slightly smaller base font on smaller screens */
    }

    .container {
        padding: 0 15px; /* Less padding on smaller screens */
    }

    h1 {
        font-size: 2em;
    }

    h2 {
        font-size: 1.5em;
    }

    nav ul {
        justify-content: center; /* Center links */
    }

    nav ul li {
        margin: 5px 10px; /* Reduce spacing between social links */
    }
}

@media (max-width: 480px) { /* Mobile phones */
    body {
        font-size: 14px;
    }

    h1 {
        font-size: 1.8em;
    }

    h2 {
        font-size: 1.3em;
    }

    section {
        padding: 15px;
    }

    nav ul {
        justify-content: space-around; /* Better spacing on small screens */
    }

    nav ul li {
        margin: 5px 8px; /* Less horizontal margin */
    }
}

/* Terminal Styles */
#terminal-window {
    background-color: rgba(0, 10, 0, 0.85); /* Darker, slightly transparent green-black */
    /* border: 1px solid #00FF00; */ /* Remove border */
    height: 300px; /* Increased height */
    overflow-y: auto; /* Add scrollbar if content overflows */
    padding: 5px; /* Further reduced padding */
    font-size: 0.9em;
    position: relative; /* For positioning input */
    display: flex;
    flex-direction: column;
}

#terminal-output {
    flex-grow: 1; /* Output takes available space */
    white-space: pre-wrap; /* Preserve whitespace and line breaks */
    word-wrap: break-word; /* Break long words */
    color: #00FF00; /* Keep terminal output green */
}

/* Terminal Text Color Classes */
.terminal-text-default {
    color: #00FF00; /* Default Green */
}
/* .terminal-text-system { */
/*     color: #00AA00; */ /* Dimmer Green for boot/system messages - REMOVED */
/* } */
.terminal-text-white {
    color: #FFFFFF; /* Bright White for info */
}
.terminal-text-red {
    color: #FF4136; /* Softer Red for errors */
    text-shadow: 0 0 2px #FF4136; /* Subtle glow */
}
/* Optional Yellow - not currently used by default - REMOVED */
/* .terminal-text-yellow { */
/*     color: #FFDA63; */
/* } */

.terminal-input-line {
    display: flex;
    align-items: center;
}

.prompt {
    margin-right: 8px;
    user-select: none; /* Prevent selecting the prompt */
    color: #00FF00; /* Keep prompt green */
}

#terminal-input {
    background: none;
    border: none;
    color: #00FF00;
    font-family: inherit; /* Use the same monospaced font */
    font-size: inherit;
    flex-grow: 1;
    outline: none; /* Remove default outline */
    padding: 2px 0; /* Minimal padding */
    caret-color: transparent; /* Hide the default text input cursor */
}

/* Simple blinking cursor effect */
#terminal-input:focus {
    /* animation: blink-caret 1s step-end infinite; */ /* Remove old animation */
    /* border-left: 2px solid transparent; */ /* Remove old border */
    /* animation: blink-border-caret 1s step-end infinite; */ /* Remove old animation */
}

/* Removed @keyframes blink-border-caret */
/* @keyframes blink-border-caret { */
/*    from, to { border-left-color: transparent; } */
/*    50% { border-left-color: #00FF00; } */
/* } */

/* New Span Cursor Styles */
#terminal-cursor {
    display: none; /* Hide by default, JS will show it */
    background-color: #00FF00;
    width: 8px; /* Width of the cursor block */
    height: 1.2em; /* Height relative to font size */
    margin-right: 3px; /* Space BEFORE input */
    vertical-align: text-bottom; /* Align with text baseline */
    animation: blink-cursor 1s step-end infinite; /* Keep animation */
}

@keyframes blink-cursor {
    from, to { opacity: 0; }
    50% { opacity: 1; }
}

/* --- Scrollbar Styling --- */

/* Webkit Browsers (Chrome, Safari, Edge, etc.) - Target BODY Element */
body::-webkit-scrollbar {
    width: 8px; /* Thinner scrollbar */
    height: 8px;
}

body::-webkit-scrollbar-track {
    background: #001a00; /* Very dark green background */
    border-radius: 0; /* Blocky edges */
}

body::-webkit-scrollbar-thumb {
    background-color: #00FF00; /* Bright green thumb */
    border-radius: 0; /* Blocky edges */
    border: 1px solid #000000; /* Black border for definition */
}

body::-webkit-scrollbar-thumb:hover {
    background-color: #33FF33; /* Slightly lighter green on hover */
}

/* Apply specifically to terminal window */
#terminal-window::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

#terminal-window::-webkit-scrollbar-track {
    background: #001000; /* Slightly different dark for terminal */
}

#terminal-window::-webkit-scrollbar-thumb {
    background-color: #00FF00;
    border: 1px solid #000000;
    border-radius: 0;
}

#terminal-window::-webkit-scrollbar-thumb:hover {
    background-color: #33FF33;
}

/* Firefox Fallback */
body, #terminal-window {
    scrollbar-width: thin; /* Make scrollbar thin */
    scrollbar-color: #00FF00 #001a00; /* Thumb color Track color */
} 