/* GLOBAL VARIABLES */
:root {
    --bg-deep: #050505;
    --osrs-brown: #494132;
    --osrs-border: #72644b;
    --gw-cyan: #55FFFF;
    --gw-white: #FFFFFF;
    --jester-red: #8b0000;
    --winter-steel: #465362;
}

/* BASE BODY STYLES */
body {
    background-color: var(--bg-deep);
    background-image: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), 
                      linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
    background-size: 100% 4px, 3px 100%;
    color: var(--gw-white);
    font-family: "Lucida Console", Monaco, monospace;
    margin: 0;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-x: hidden;
}

/* SHARED FRAME STYLES */
#main-frame {
    width: 765px;
    background-color: var(--osrs-brown);
    border: 4px double var(--osrs-border);
    box-shadow: 10px 10px 0px #000;
    position: relative;
}

footer {
    background: #000;
    text-align: center;
    padding: 20px;
    border-top: 3px ridge var(--osrs-border);
    font-size: 11px;
    color: var(--osrs-border);
}

.hit-counter {
    margin-top: 10px;
    filter: grayscale(1) brightness(1.5);
    display: inline-block;
}

/* ERROR STYLES */
.error-text {
    color: var(--jester-red);
    font-weight: bold;
    text-transform: uppercase;
}

.pixel-img {
    border: 4px double var(--osrs-border);
    background: #000;
    filter: grayscale(1) contrast(120%);
    image-rendering: pixelated;
    max-width: 100%;
}

.btn-retro {
    display: inline-block;
    padding: 10px 20px;
    background: var(--osrs-brown);
    border: 2px outset var(--osrs-border);
    color: var(--gw-white);
    text-decoration: none;
    font-size: 12px;
}

.btn-retro:hover {
    background: var(--winter-steel);
    color: var(--gw-cyan);
}

/* --- MIGRATED CONTENT STYLES --- */

.content-area {
    background: #111;
    margin: 15px; 
    border: 2px inset var(--osrs-border);
    padding: 30px;
    min-height: 350px;
    position: relative;
}

/* Diamond aligned with H2 text */
.content-area h2::after {
    content: "◆"; 
    position: absolute; 
    right: 30px; 
    top: 30px;
    color: var(--jester-red); 
    font-size: 24px;
    line-height: 1;
}

h2 { 
    color: var(--gw-cyan); 
    border-bottom: 1px dashed var(--osrs-border); 
    padding-bottom: 10px; 
    margin-top: 0;
}

h3 { 
    color: var(--osrs-border); 
    margin-top: 25px; 
}

p { 
    line-height: 1.6; 
    color: #ccc; 
}

@keyframes blinker { 50% { opacity: 0; } }
.blink { 
    animation: blinker 1s step-start infinite; 
    color: var(--gw-cyan); 
}

.profile-img-container { 
    border: 4px double var(--osrs-border); 
    background: #000; 
    padding: 2px; 
    box-shadow: 5px 5px 0px #000; 
}

.img-caption { 
    color: var(--osrs-border); 
    font-size: 12px; 
    margin-top: 8px; 
    text-align: center; 
    font-style: italic; 
}

/* GUESTBOOK SPECIFIC */
.guestbook-page {
    padding: 15px;
    min-height: 80vh;
    display: flex;
    flex-direction: column;
}

.guestbook-wrapper {
    flex-grow: 1;
    width: 100%;
}

iframe {
    width: 100%;
    height: 150vh;
    border: none;
    background: transparent;
}

.md-content img {
        display: block;
        max-width: 300px; /* Limits size so it doesn't eat the page */
        height: auto;
        border: 3px double var(--osrs-border);
        margin: 20px 0;
        filter: grayscale(0) !important; /* Force Color */
        image-rendering: auto; /* Keeps photo smooth */
        background: #000;
}

/* BASE BODY STYLES */
body {
    background-color: var(--bg-deep);
    /* ... your existing gradients ... */
    
    position: relative; 
    z-index: 0; /* Creates the floor */
}

/* SHARED FRAME STYLES */
#main-frame {
    width: 765px;
    background-color: var(--osrs-brown);
    border: 4px double var(--osrs-border);
    box-shadow: 10px 10px 0px #000;
    
    position: relative;
    z-index: 10; /* Lifts the content ABOVE the ship */
}

/* Ensure the component itself isn't being squashed */
starship-background {
    display: block;
    position: fixed;
    z-index: 1; 
}

/* Visual separator for the intro line */
.section-divider {
    border-bottom: 1px dashed var(--osrs-border); 
    padding-bottom: 15px;
    margin-bottom: 30px;
    font-style: italic;
    color: var(--osrs-border);
}
.guitar-hr {
border: none;
    border-bottom: 1px dashed var(--osrs-border);
    margin: 20px 0 30px 0;
    width: 100%;
}