/* =============================================
   GAMMA TERRA - CRT GLOW + SCANLINE EDITION
   For WP-DOS Theme
   ============================================= */

/* Main container - single column focus */
.blog .site-main,
.archive .site-main,
.home .site-main {
    max-width: 780px;
    margin: 0 auto;
    padding: 0 20px;
}

/* CRT Card Container */
.post,
.hentry,
.type-post.status-publish {
    position: relative;
    background: #0a0a0a;
    border: 3px solid #223322;
    margin-bottom: 3rem;
    padding: 2rem 2.2rem 2.4rem;
    overflow: hidden;
    box-shadow: 
        0 0 20px rgba(85, 255, 119, 0.4),   /* Outer CRT glow */
        inset 0 0 40px rgba(0, 0, 0, 0.9),
        inset 0 0 80px rgba(85, 255, 119, 0.08);
    transition: box-shadow 0.4s ease;
}

/* Stronger hover glow */
.post:hover {
    border-color: #55ff77;
    box-shadow: 
        0 0 35px rgba(85, 255, 119, 0.6),
        inset 0 0 60px rgba(85, 255, 119, 0.15);
}

/* Phosphor text glow for titles */
.post .entry-title,
.entry-header h2,
.entry-title {
    font-size: 1.78rem;
    line-height: 1.25;
    margin: 0 0 1rem 0;
    color: #aaffcc;
    text-shadow: 
        0 0 8px #55ff77,
        0 0 16px #33cc66,
        0 0 24px rgba(85, 255, 119, 0.6);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.post .entry-title a:hover {
    color: #ffffff;
    text-shadow: 
        0 0 12px #88ffaa,
        0 0 25px #55ff77;
}

/* Excerpt text with subtle glow */
.post .entry-summary,
.entry-summary p {
    font-size: 1.06rem;
    line-height: 1.75;
    color: #bbddbb;
    margin-bottom: 1.8rem;
    text-shadow: 0 0 4px rgba(85, 255, 119, 0.3);
}

/* Meta - terminal style */
.entry-meta,
.post-meta {
    font-family: monospace;
    font-size: 0.95rem;
    color: #77aa77;
    margin-bottom: 1.5rem;
    border-bottom: 1px dashed #334433;
    padding-bottom: 0.9rem;
}

/* Read More - glowing button */
.read-more,
.more-link,
.post .entry-summary a.more-link {
    display: inline-block;
    background: #111111;
    color: #55ff77;
    border: 2px solid #55ff77;
    padding: 0.75rem 2rem;
    font-family: monospace;
    font-weight: bold;
    text-decoration: none;
    text-shadow: 0 0 8px #55ff77;
    box-shadow: 0 0 12px rgba(85, 255, 119, 0.5);
    transition: all 0.3s ease;
}

.read-more:hover,
.more-link:hover {
    background: #55ff77;
    color: #001100;
    text-shadow: none;
    box-shadow: 0 0 20px rgba(85, 255, 119, 0.8);
}

/* ====================== 
   CRT SCANLINES & FLICKER 
   ====================== */

/* Subtle scanlines on every card */
.post::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(
        to bottom,
        transparent 0px,
        transparent 2px,
        rgba(0, 0, 0, 0.25) 2px,
        rgba(0, 0, 0, 0.25) 4px
    );
    pointer-events: none;
    z-index: 2;
    animation: scan-flicker 8s linear infinite;
}

/* Very subtle overall flicker on cards */
.post {
    animation: crt-flicker 0.15s infinite alternate;
}

/* Keyframes */
@keyframes scan-flicker {
    0%   { background-position: 0 0; }
    100% { background-position: 0 120px; }
}

@keyframes crt-flicker {
    0%   { opacity: 0.98; }
    100% { opacity: 1; }
}

/* Global subtle page scanlines (optional but immersive) */
body::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(
        to bottom,
        transparent 0px,
        transparent 3px,
        rgba(0, 30, 0, 0.12) 3px,
        rgba(0, 30, 0, 0.12) 6px
    );
    pointer-events: none;
    z-index: 9999;
    animation: scan-flicker 12s linear infinite;
    opacity: 0.6;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .post {
        padding: 1.5rem 1.4rem;
        margin-bottom: 2.2rem;
    }
    
    .post .entry-title {
        font-size: 1.55rem;
    }
}

/* Optional light 2-column on very large screens */
@media (min-width: 1280px) {
    .blog .site-main,
    .archive .site-main {
        max-width: 1100px;
        grid-template-columns: 1fr 1fr;
        display: grid;
        gap: 2.8rem;
    }
}
/* =============================================
   GAMMA TERRA - SINGLE POST PAGE (Enhanced)
   Bigger text, optimal spacing for long stories,
   Clean excerpt removal + Subtle Vertical Refresh Line
   ============================================= */

.single-post .site-main,
.single .site-main {
    max-width: 820px;
    margin: 0 auto;
    padding: 20px 25px 50px;
}

/* Single post container with CRT styling */
.single .post,
.single .hentry,
.single-post .type-post {
    background: #0a0a0a;
    border: 3px solid #223322;
    padding: 2.8rem 3rem 3.2rem;
    position: relative;
    overflow: hidden;
    box-shadow: 
        0 0 30px rgba(85, 255, 119, 0.35),
        inset 0 0 60px rgba(0, 0, 0, 0.9);
}

/* Scanlines on single post */
.single .post::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: repeating-linear-gradient(
        to bottom,
        transparent 0px,
        transparent 2px,
        rgba(0, 0, 0, 0.22) 2px,
        rgba(0, 0, 0, 0.22) 4px
    );
    pointer-events: none;
    z-index: 2;
}

/* Clean removal of any repeated excerpt/teaser on single posts */
.single .entry-summary,
.single-post .entry-summary {
    display: none !important;
}

/* Large glowing title */
.single .entry-title {
    font-size: 2.35rem;
    line-height: 1.25;
    margin: 0 0 1.3rem 0;
    color: #aaffcc;
    text-shadow: 
        0 0 12px #55ff77,
        0 0 25px #33cc66;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

/* Meta (date, series links, etc.) */
.single .entry-meta {
    font-family: monospace;
    font-size: 1.02rem;
    color: #77aa77;
    margin-bottom: 2.2rem;
    padding-bottom: 1.1rem;
    border-bottom: 1px dashed #334433;
}

/* Main story content – optimized for long-form reading */
.single .entry-content,
.single-post .entry-content {
    font-size: 1.195rem;      /* Bigger comfortable size */
    line-height: 1.85;        /* Excellent spacing for long stories */
    color: #d4e8d4;
    max-width: 100%;
}

/* Paragraph spacing for narrative flow */
.single .entry-content p {
    margin-bottom: 1.75rem;
}

/* Headings inside the story */
.single .entry-content h1,
.single .entry-content h2,
.single .entry-content h3 {
    color: #88ffaa;
    margin: 2.8rem 0 1.3rem 0;
    text-shadow: 0 0 10px #55ff77;
    font-weight: 700;
}

/* Links inside posts */
.single .entry-content a {
    color: #55ff77;
    text-decoration: underline;
    text-shadow: 0 0 6px rgba(85, 255, 119, 0.5);
}

.single .entry-content a:hover {
    color: #ffffff;
}

/* Blockquotes / special sections */
.single .entry-content blockquote {
    border-left: 5px solid #55ff77;
    padding-left: 1.8rem;
    color: #bbddbb;
    font-style: italic;
    margin: 2.2rem 0;
}
/* =============================================
   GAMMA TERRA - SMALL FEATURED IMAGES ON CARDS
   CRT-compatible styling
   ============================================= */

.post-thumbnail {
    margin-bottom: 1.6rem;
    width: 100%;
}

.post-thumbnail img.featured-thumb {
    width: 100%;
    height: 180px;                  /* Fixed small height for consistency */
    object-fit: cover;              /* Crops nicely without distortion */
    border: 2px solid #334433;
    border-radius: 2px;
    image-rendering: crisp-edges;   /* Keeps retro pixel feel */
    box-shadow: 0 0 12px rgba(85, 255, 119, 0.25);
    transition: all 0.3s ease;
}

.post:hover .post-thumbnail img.featured-thumb {
    border-color: #55ff77;
    box-shadow: 0 0 20px rgba(85, 255, 119, 0.45);
}

/* Make sure it works well with scanlines */
.post-thumbnail {
    position: relative;
}

.post-thumbnail::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(
        to bottom,
        transparent 0px,
        transparent 2px,
        rgba(0, 0, 0, 0.18) 2px,
        rgba(0, 0, 0, 0.18) 4px
    );
    pointer-events: none;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .post-thumbnail img.featured-thumb {
        height: 160px;              /* Slightly shorter on mobile */
    }
}