/* ABCS Eyewitness News: 1980s network-news skin over Source (MIT). Loaded after built/screen.css. */
@font-face { font-family: "ABCS Oswald"; src: url("../fonts/abcs/Oswald.ttf") format("truetype"); font-weight: 200 700; font-display: swap; }
@font-face { font-family: "ABCS CRT"; src: url("../fonts/abcs/VT323.ttf") format("truetype"); font-display: swap; }

:root {
    --abcs-navy: #071a3d; --abcs-blue: #0e3a84; --abcs-sky: #3d7fd9; --abcs-red: #d7261e; --abcs-gold: #f2c230;
    --abcs-ink: #eef3ff; --abcs-dim: #a9bbdd; --abcs-chrome: linear-gradient(180deg, #ffffff 0%, #dfe7f5 45%, #8b9bb8 52%, #f3f6fb 100%);
    --abcs-head: "ABCS Oswald", "Helvetica Neue Condensed", "Arial Narrow", sans-serif;
    --abcs-crt: "ABCS CRT", ui-monospace, monospace;
    --background-color: var(--abcs-navy); --color-darker-gray: var(--abcs-ink); --color-secondary-text: var(--abcs-dim);
    --color-border: rgba(160, 190, 240, .22); --ghost-accent-color: var(--abcs-red);
}
html, body { background: radial-gradient(120% 80% at 50% 0%, #123b80 0%, var(--abcs-navy) 60%, #030b1c 100%) fixed; color: var(--abcs-ink); }
/* CRT scanlines, very light, never over text contrast */
body::after { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 9999;
    background: repeating-linear-gradient(0deg, rgba(0,0,0,.10) 0 1px, transparent 1px 3px); mix-blend-mode: multiply; }
.is-title, h1, h2, h3, .gh-card-title, .gh-article-title { font-family: var(--abcs-head); text-transform: uppercase; letter-spacing: .02em; }
a { color: inherit; }

/* Masthead: chrome station logo */
.gh-navigation { background: linear-gradient(180deg, #0b2a5e, #061633); border-bottom: 3px solid var(--abcs-red); color: var(--abcs-ink); }
.gh-navigation-logo { font-family: var(--abcs-head); font-weight: 700; font-size: clamp(2.2rem, 4.6vw, 3.4rem); text-transform: none; /* keeps the lowercase "ii" in "ii Witness News at 11" */
    letter-spacing: .04em; background: var(--abcs-chrome); -webkit-background-clip: text; background-clip: text; color: transparent;
    filter: drop-shadow(0 2px 0 #02102a) drop-shadow(0 0 10px rgba(61,127,217,.55)); }
.gh-navigation-menu a, .gh-navigation-members a, .gh-navigation .gh-icon-button { color: var(--abcs-ink); font-family: var(--abcs-head); text-transform: uppercase; letter-spacing: .06em; }
.gh-button { background: var(--abcs-red); color: #fff; font-family: var(--abcs-head); text-transform: uppercase; border-radius: 3px; }

/* Station bar */
.abcs-station { background: #020a1a; border-bottom: 1px solid rgba(160,190,240,.25); }
.abcs-station-inner { display: flex; align-items: center; gap: 1rem; min-height: 38px; font-family: var(--abcs-head); font-size: 1.4rem; }
.abcs-live, .abcs-channel { text-transform: uppercase; }
.abcs-live { background: var(--abcs-red); color: #fff; padding: .15em .6em; border-radius: 2px; font-weight: 700; letter-spacing: .1em; }
.abcs-channel { border: 2px solid var(--abcs-gold); color: var(--abcs-gold); border-radius: 50%; padding: .1em .45em; font-weight: 700; }
.abcs-callsign { color: var(--abcs-dim); letter-spacing: .14em; flex: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.abcs-clock { font-family: var(--abcs-crt); font-size: 2.2rem; color: #7cff9b; text-shadow: 0 0 6px rgba(124,255,155,.7); letter-spacing: .05em; }

/* News crawl */
.abcs-crawl { background: var(--abcs-gold); color: #1a1200; overflow: hidden; white-space: nowrap; border-bottom: 3px solid var(--abcs-blue);
    font-family: var(--abcs-head); font-size: 1.5rem; font-weight: 600; letter-spacing: .03em; }
.abcs-crawl-track { display: inline-flex; gap: 2.5rem; padding: .35em 0; animation: abcs-crawl 38s linear infinite; }
@keyframes abcs-crawl { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .abcs-crawl-track { animation: none; } }

/* Story cards = TV segments with a lower-third chyron */
.gh-card { background: linear-gradient(180deg, rgba(14,58,132,.35), rgba(3,11,28,.6)); border: 1px solid var(--color-border); border-radius: 6px; overflow: hidden; }
.gh-card-image { border-radius: 14px / 10px; box-shadow: inset 0 0 40px rgba(0,0,0,.6), 0 0 0 4px #0a1630; filter: saturate(1.15) contrast(1.05); }
.gh-card-wrapper { padding: 0 1.2rem 1.2rem; }
.gh-card-title { display: inline; background: linear-gradient(90deg, var(--abcs-blue), #1556b8); color: #fff; padding: .1em .4em;
    box-decoration-break: clone; -webkit-box-decoration-break: clone; border-left: 6px solid var(--abcs-red); line-height: 1.5; }
.gh-card-tag, .gh-article-tag { color: var(--abcs-gold); font-family: var(--abcs-head); text-transform: uppercase; letter-spacing: .12em; }
.gh-card-excerpt { color: var(--abcs-dim); margin-top: .6em; }
.gh-card-meta, .gh-article-meta-date, time { font-family: var(--abcs-crt); font-size: 1.15em; color: #7cff9b; }

/* Article: headline as a full chyron */
.gh-article-title { background: linear-gradient(90deg, var(--abcs-blue), #1556b8 70%, transparent); color: #fff; padding: .2em .5em;
    border-left: 10px solid var(--abcs-red); box-shadow: 0 6px 0 -3px var(--abcs-gold); }
.gh-article-excerpt { color: var(--abcs-dim); }
.gh-content { color: var(--abcs-ink); }
.gh-content a { color: var(--abcs-gold); text-decoration: underline; }
.gh-content figure img, .gh-content video, .kg-video-container { border-radius: 14px / 10px; box-shadow: 0 0 0 6px #0a1630, 0 0 0 8px #3a4f78, 0 18px 40px rgba(0,0,0,.6); }
.gh-content blockquote { border-left: 6px solid var(--abcs-gold); font-family: var(--abcs-head); text-transform: uppercase; }
.gh-footer { background: #020a1a; color: var(--abcs-dim); border-top: 3px solid var(--abcs-red); }
.gh-footer a { color: var(--abcs-ink); }
/* Members-only notice reads like a "technical difficulties" card */
.gh-post-upgrade-cta, .gh-cta { background: repeating-linear-gradient(90deg, #c0c0c0 0 12%, #c0c000 12% 24%, #00c0c0 24% 36%, #00c000 36% 48%, #c000c0 48% 60%, #c00000 60% 72%, #0000c0 72% 84%, #111 84% 100%);
    color: #fff; text-shadow: 0 2px 4px #000; border-radius: 6px; }
