/*
Theme Name: PW247 Ultimate VHS
Theme URI: https://prowrestling247.com
Author: ProWrestling 24/7
Description: THE DEFINITIVE SIGNAL. v32.0 Final Production Build.
Version: 32.0
*/

/* --- 1. CORE PW247 COLOR PALETTE --- */
:root {
    --aged-blue: #1A417A;       /* Deep Terminal Blue */
    --mustard-yellow: #E6B800;  /* Industrial Gold */
    --gorilla-gold: #FFAA00;    /* Vault Highlight */
    --chicken-gold: #FFD700;    /* Personality Color */
    --alert-red: #FF0000;       /* Signal Alert / Gorilla Blood / MMA */
    --terminal-green: #00FF00;  /* Sports Radio Studio */
    --faded-white: #E8E4D8;     /* Paper White */
    --bunker-black: #050505;    /* CRT Black */
}

/* --- 2. CRT SCREEN ENGINE --- */
body {
    background-color: var(--bunker-black);
    color: var(--faded-white);
    margin: 0; padding: 0;
    font-family: 'Arial', sans-serif;
    overflow-x: hidden;
}

body::after {
    content: "";
    position: fixed; top: 0; left: 0;
    width: 100%; height: 100%;
    background: 
        url('images/flyer-grain.png'), 
        linear-gradient(rgba(18,16,16,0) 50%, rgba(0,0,0,0.1) 50%);
    background-size: auto, 100% 4px;
    z-index: 99999; pointer-events: none; opacity: 0.12;
}

/* --- 3. THE BROADCAST SHIELD (128px UI) --- */
#master-header, #master-footer {
    height: 128px; background: var(--bunker-black);
    position: fixed; width: 100%; z-index: 10000;
}
#master-header { top: 0; border-bottom: 2px solid var(--faded-white); }
#master-footer { 
    bottom: 0; border-top: 2px solid var(--faded-white); 
    padding: 0 40px; box-sizing: border-box;
    display: flex; align-items: center; justify-content: space-between;
}

#main-content-area { margin: 128px 0; padding: 40px; min-height: calc(100vh - 256px); }

/* --- 4. TYPOGRAPHY: 9PT ENFORCEMENT --- */
.pw247-main-menu li a, .ticker-label, .video-label, .section-header, .news-card-title, 
.vault-access-label, .vc_btn3, .play-trigger, .breaking-label {
    font-family: 'Impact', sans-serif !important;
    font-size: 9pt !important;
    text-transform: uppercase; letter-spacing: 1px;
    color: var(--mustard-yellow);
    text-decoration: none;
}

#pw247-ticker marquee, .footer-memorial, .footer-slogan, .track-item, 
.gorilla-scroller-item, .show-entry-meta {
    font-family: 'Arial', sans-serif !important;
    font-size: 9pt !important; text-transform: uppercase;
}

/* --- 5. GORILLA SCROLLER & RETRO TV --- */
#gorilla-position {
    background: #000;
    border-top: 1px solid var(--faded-white);
    border-bottom: 1px solid var(--faded-white);
    height: 32px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.breaking-label {
    background: var(--alert-red);
    color: #FFF !important;
    padding: 0 15px;
    height: 100%;
    display: flex;
    align-items: center;
}

.retro-tv-wrapper {
    position: relative;
    border: 20px solid #222;
    border-radius: 40px;
    padding: 20px;
    background: #000;
    box-shadow: inset 0 0 50px #000, 0 10px 30px rgba(0,0,0,0.5);
}

.screen-glare {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: linear-gradient(135deg, rgba(255,255,255,0.05) 0%, transparent 50%);
    pointer-events: none; border-radius: 20px;
}

/* --- 6. WPBAKERY & INTERFACE OVERRIDES --- */
.vc_btn3 {
    border: 1px solid var(--mustard-yellow) !important;
    background: transparent !important;
    border-radius: 0 !important;
    transition: all 0.2s ease;
}

.vc_btn3:hover {
    background: var(--mustard-yellow) !important;
    color: #000 !important;
    animation: vcr-jitter 0.1s infinite;
}

.play-trigger {
    background: transparent;
    border: 1px solid var(--mustard-yellow);
    color: var(--mustard-yellow);
    cursor: pointer;
    padding: 5px 15px;
}

/* --- 7. SIGNAL SYNC: DYNAMIC SEGMENT OVERRIDES --- */
.signal-vault .video-label { color: var(--gorilla-gold) !important; }
.signal-vault .segment-header { border-bottom: 3px solid var(--gorilla-gold); }

.signal-gorilla .video-label { color: var(--alert-red) !important; }
.signal-gorilla .segment-header { border-bottom: 3px solid var(--alert-red); }

.signal-legacy .video-label { color: var(--aged-blue) !important; }
.signal-legacy .segment-header { border-bottom: 3px solid var(--aged-blue); }

/* --- 8. MECHANICAL EFFECTS --- */
@keyframes vcr-jitter { 0% { transform: translate(0,0); } 25% { transform: translate(1px, -1px); } 100% { transform: translate(0,0); } }
@keyframes neon-flicker { 0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% { opacity: 1; } 20%, 22%, 24%, 55% { opacity: 0.5; } }
@keyframes hot-mic { 0% { opacity: 1; text-shadow: 0 0 5px var(--mustard-yellow); } 50% { opacity: 0.6; text-shadow: 0 0 15px var(--mustard-yellow); } 100% { opacity: 1; text-shadow: 0 0 5px var(--mustard-yellow); } }

.vhs-loading-jitter { animation: vcr-jitter 0.1s infinite; }
.footer-memorial { color: var(--mustard-yellow); animation: neon-flicker 5s infinite; }
.hot-mic-pulse { animation: hot-mic 1.5s infinite ease-in-out; }

/* --- 9. PERSONALITY TAGS --- */
.personality-tag { background: var(--mustard-yellow); color: #000; padding: 2px 6px; display: inline-block; font-family: 'Impact'; font-size: 9pt; }
.cat-block { background: #FFFFFF !important; color: #000 !important; border: 2px solid #000; box-shadow: 4px 4px 0px var(--mustard-yellow); }
.chicken-lady-tag { background: var(--chicken-gold) !important; color: #000 !important; }

/* --- 10. GRID & ARCHIVE --- */
.archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 40px; }
.show-entry { background: #111; border: 1px solid #333; padding: 20px; transition: 0.3s; }
.show-entry:hover { border-color: var(--mustard-yellow); }
.show-flyer-wrap img { width: 100%; height: auto; border: 5px solid var(--faded-white); }