/*
Theme Name: Reckless Archive
Template: twentytwentyfive
Version: 1.0.0
Description: Child theme for Reckless Archive — deep wing blue, amber fire, aged cream, dark leather.
*/

:root {
	--ra-black:       #08101e;
	--ra-blue-deep:   #1a2040;
	--ra-blue-mid:    #2a3050;
	--ra-blue-iris:   #4060a0;
	--ra-leather:     #3a1810;
	--ra-leather-mid: #6a3020;
	--ra-amber:       #e87820;
	--ra-amber-hot:   #f5a028;
	--ra-cream:       #f0ead8;
	--ra-cream-dim:   #c8c0a8;
	--ra-fog:         #1a1e2e;
}

/* Base */
body {
	background-color: var(--ra-black);
	color: var(--ra-cream);
}

/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=IM+Fell+English:ital@0;1&display=swap');

body, h1, h2, h3, h4, h5, h6, p, li, td, th, blockquote, input, textarea, select, button {
	font-family: 'IM Fell English', Georgia, serif;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
	color: var(--ra-cream);
	font-weight: 400;
	letter-spacing: 0.02em;
}

p, li, td, th, blockquote {
	color: var(--ra-cream-dim);
}

a {
	color: var(--ra-amber);
	text-decoration: none;
}

a:hover {
	color: var(--ra-amber-hot);
	text-decoration: underline;
}

/* Selections */
::selection {
	background: var(--ra-amber);
	color: var(--ra-black);
}

/* Site header */
.wp-block-template-part[data-slug="header"],
header.wp-block-template-part {
	background-color: var(--ra-black);
	border-bottom: 1px solid var(--ra-blue-deep);
}

/* Site title */
.wp-block-site-title a {
	color: var(--ra-cream) !important;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 1.1rem;
}

/* Navigation */
.wp-block-navigation a {
	color: var(--ra-cream-dim) !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 0.8rem;
}

.wp-block-navigation a:hover {
	color: var(--ra-amber) !important;
}

/* Main content area */
main,
.wp-block-group,
.entry-content {
	background-color: var(--ra-black);
}

/* Cards / post items */
.wp-block-post,
.wp-block-post-template li {
	background-color: var(--ra-blue-deep);
	border: 1px solid var(--ra-blue-mid);
	border-radius: 4px;
	padding: 1.5rem;
	transition: border-color 0.2s ease;
}

.wp-block-post:hover,
.wp-block-post-template li:hover {
	border-color: var(--ra-amber);
}

/* Post titles */
.wp-block-post-title a {
	color: var(--ra-cream) !important;
}

.wp-block-post-title a:hover {
	color: var(--ra-amber) !important;
}

/* Post meta */
.wp-block-post-date,
.wp-block-post-author,
.has-text-color.has-contrast-color {
	color: var(--ra-cream-dim) !important;
}

/* Buttons */
.wp-block-button__link,
.wp-element-button {
	background-color: var(--ra-amber) !important;
	color: var(--ra-black) !important;
	border: none;
	border-radius: 2px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 0.8rem;
	font-weight: 600;
	padding: 0.7rem 1.4rem;
	transition: background-color 0.2s ease;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
	background-color: var(--ra-amber-hot) !important;
	color: var(--ra-black) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent !important;
	color: var(--ra-amber) !important;
	border: 1px solid var(--ra-amber) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--ra-amber) !important;
	color: var(--ra-black) !important;
}

/* Separators / dividers */
hr,
.wp-block-separator {
	border-color: var(--ra-blue-mid);
	opacity: 1;
}

/* Blockquote */
blockquote,
.wp-block-quote {
	border-left: 3px solid var(--ra-amber);
	padding-left: 1.2rem;
	color: var(--ra-cream-dim);
}

/* Code */
code, pre {
	background-color: var(--ra-fog);
	color: var(--ra-amber-hot);
	border: 1px solid var(--ra-blue-mid);
	border-radius: 2px;
}

/* Sidebar */
.wp-block-widget-area,
aside {
	background-color: var(--ra-blue-deep);
}

/* Footer */
.wp-block-template-part[data-slug="footer"],
footer.wp-block-template-part {
	background-color: var(--ra-leather);
	border-top: 1px solid var(--ra-leather-mid);
	color: var(--ra-cream-dim);
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
textarea,
select {
	background-color: var(--ra-fog);
	border: 1px solid var(--ra-blue-mid);
	color: var(--ra-cream);
	border-radius: 2px;
	padding: 0.5rem 0.75rem;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	border-color: var(--ra-amber);
	outline: none;
	box-shadow: 0 0 0 2px rgba(232, 120, 32, 0.2);
}

input[type="submit"],
button[type="submit"] {
	background-color: var(--ra-amber);
	color: var(--ra-black);
	border: none;
	border-radius: 2px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 0.6rem 1.2rem;
	cursor: pointer;
	font-weight: 600;
}

input[type="submit"]:hover,
button[type="submit"]:hover {
	background-color: var(--ra-amber-hot);
}

/* Tables */
table {
	border-collapse: collapse;
	width: 100%;
}

th {
	background-color: var(--ra-blue-deep);
	color: var(--ra-cream);
	border-bottom: 2px solid var(--ra-amber);
	padding: 0.6rem 0.8rem;
	text-align: left;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 0.8rem;
}

td {
	border-bottom: 1px solid var(--ra-blue-mid);
	padding: 0.6rem 0.8rem;
	color: var(--ra-cream-dim);
}

tr:hover td {
	background-color: var(--ra-fog);
}

/* WooCommerce base overrides */
.woocommerce-page body,
body.woocommerce {
	background-color: var(--ra-black);
}

.woocommerce .price,
.woocommerce-Price-amount {
	color: var(--ra-amber) !important;
}

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background-color: var(--ra-amber) !important;
	color: var(--ra-black) !important;
	border-radius: 2px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 600;
}

.woocommerce .button:hover {
	background-color: var(--ra-amber-hot) !important;
}

.woocommerce .star-rating span::before {
	color: var(--ra-amber);
}

/* LearnPress overrides */
.learnpress,
.learn-press-content {
	background-color: var(--ra-black);
	color: var(--ra-cream-dim);
}

.lp-button,
.learn-press-button {
	background-color: var(--ra-amber) !important;
	color: var(--ra-black) !important;
	border-radius: 2px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.course-progress-bar .progress-bar {
	background-color: var(--ra-amber);
}

/* Scrollbar */