/*
Theme Name:   Cast From The Past
Theme URI:    https://castfromthepast.tv
Description:  PVM/BVM-inspired child theme of Twenty Twenty-Five: studio-monitor grays, beige selections, amber and phosphor-green accents, Trinitron RGB stripe, slab-serif headlines.
Author:       John
Template:     twentytwentyfive
Version:      0.2.0
Requires at least: 6.7
Text Domain:  castfromthepast
*/

/* ---------- Trinitron RGB stripe (Separator block style "RGB Stripe") ---------- */
.wp-block-separator.is-style-rgb-stripe {
	border: 0 !important;
	height: 3px !important;
	width: 100% !important;
	max-width: none !important;
	opacity: 1;
	background: linear-gradient(
		to right,
		var(--wp--preset--color--trinitron-red) 0 33.333%,
		var(--wp--preset--color--trinitron-green) 33.333% 66.666%,
		var(--wp--preset--color--trinitron-blue) 66.666% 100%
	) !important;
}

/* ---------- "///" RGB kicker (Paragraph/Heading block style "RGB Kicker") ---------- */
.is-style-rgb-kicker::before {
	content: "/";
	color: var(--wp--preset--color--trinitron-red);
	margin-right: 0;
	text-shadow:
		0.55em 0 0 var(--wp--preset--color--trinitron-green),
		1.1em 0 0 var(--wp--preset--color--trinitron-blue);
	display: inline-block;
	width: 2.2em;
	font-family: var(--wp--preset--font-family--plex-mono);
}

/* ---------- RGB dots before the site title ---------- */
.cftp-rgb-dots {
	display: flex;
	align-items: center;
	gap: 12px;
}
.cftp-rgb-dots::before {
	content: "";
	width: 22px;
	height: 6px;
	flex: none;
	background:
		radial-gradient(circle 3px at 3px 3px, var(--wp--preset--color--trinitron-red) 98%, transparent) 0 0 / 8px 6px no-repeat,
		radial-gradient(circle 3px at 3px 3px, var(--wp--preset--color--trinitron-green) 98%, transparent) 8px 0 / 8px 6px no-repeat,
		radial-gradient(circle 3px at 3px 3px, var(--wp--preset--color--trinitron-blue) 98%, transparent) 16px 0 / 8px 6px no-repeat;
}

/* ---------- Navigation: beige "selected" hover like a monitor menu ---------- */
.wp-block-navigation .wp-block-navigation-item__content {
	padding: 6px 10px;
	border-radius: 2px;
}
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--beige);
	color: var(--wp--preset--color--base) !important;
	text-decoration: none;
}

/* ---------- Text selection = beige ---------- */
::selection {
	background: var(--wp--preset--color--beige);
	color: var(--wp--preset--color--base);
}

/* ---------- Post cards: phosphor-green title on hover ---------- */
.wp-block-post-template .wp-block-post:hover .wp-block-post-title a {
	color: var(--wp--preset--color--phosphor);
}
.wp-block-post-template .wp-block-post-featured-image img {
	border: 1px solid var(--wp--preset--color--chassis-light);
	border-radius: 4px;
}

/* ---------- Category labels: mono, uppercase, amber ---------- */
.wp-block-post-terms {
	font-family: var(--wp--preset--font-family--plex-mono);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 600;
}
.wp-block-post-terms a {
	color: var(--wp--preset--color--amber);
	text-decoration: none;
}

/* ---------- Dates & meta: mono ---------- */
.wp-block-post-date,
.wp-block-post-author-name {
	font-family: var(--wp--preset--font-family--plex-mono);
	color: var(--wp--preset--color--dim);
}

/* ---------- "Read more" style links: amber underline ---------- */
.wp-block-read-more,
.wp-block-post-excerpt__more-link {
	border-bottom: 1px solid var(--wp--preset--color--amber);
	text-decoration: none;
	padding-bottom: 2px;
	width: fit-content;
}
.wp-block-read-more:hover,
.wp-block-post-excerpt__more-link:hover {
	color: var(--wp--preset--color--amber);
}

/* ---------- Image placeholders / figures ---------- */
.wp-block-image img {
	border-radius: 4px;
}

/* ---------- Code: green phosphor on dark ---------- */
:where(pre, code, kbd) {
	font-family: var(--wp--preset--font-family--plex-mono);
}
.wp-block-code {
	background: var(--wp--preset--color--chassis);
	color: var(--wp--preset--color--phosphor);
	border: 1px solid var(--wp--preset--color--chassis-light);
	border-radius: 4px;
	padding: 1.25em 1.5em;
}

/* ---------- Homepage / archive layout (v0.2) ---------- */

/* Kicker line above titles: RGB "///" + category, mono, dim */
.cftp-kicker {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dim);
}
.cftp-kicker::before {
	content: "/";
	color: var(--wp--preset--color--trinitron-red);
	text-shadow:
		0.6em 0 0 var(--wp--preset--color--trinitron-green),
		1.2em 0 0 var(--wp--preset--color--trinitron-blue);
	display: inline-block;
	width: 2.4em;
}
.cftp-kicker a {
	color: inherit !important;
}

/* Hero title: no underline, green on hover */
.cftp-hero .wp-block-post-title a:hover {
	color: var(--wp--preset--color--phosphor);
}

/* Section heading row with a hairline under it */
.cftp-section-head {
	border-bottom: 1px solid var(--wp--preset--color--chassis-light);
	padding-bottom: 16px;
}

/* Cards */
.cftp-card .wp-block-post-featured-image {
	margin: 0;
}
.cftp-card .wp-block-post-featured-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}
.cftp-hero .wp-block-post-featured-image img {
	border: 1px solid var(--wp--preset--color--chassis-light);
	border-radius: 4px;
}

/* Pagination: mono, uppercase, beige hover */
.wp-block-query-pagination {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.wp-block-query-pagination a {
	text-decoration: none;
	padding: 6px 10px;
	border-radius: 2px;
}
.wp-block-query-pagination a:hover {
	background: var(--wp--preset--color--beige);
	color: var(--wp--preset--color--base);
}

/* Footer */
.cftp-footer {
	border-top: 1px solid var(--wp--preset--color--chassis-light);
}
.cftp-footer a {
	text-decoration: none;
}
