/*
Theme Name: Hockey Coaching ABCs
Description: Child theme of Twenty Twenty-Five for hockeycoachingabcs.com: black and red like the original site, a rink-marked home page hero, and a sidebar for books, donations and ads.
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 8.0
Text Domain: hca
*/

/* ---------- Header ---------- */
.hca-header .wp-block-site-title a {
	text-decoration: none;
	color: #fff;
}
.hca-header .wp-block-site-title,
.hca-footer .wp-block-site-title {
	text-transform: uppercase;
	letter-spacing: 0.02em;
	line-height: 1;
}
.hca-red {
	color: var(--wp--preset--color--red);
}
.hca-stripe {
	height: 6px;
	background: linear-gradient(90deg, var(--wp--preset--color--red) 0%, var(--wp--preset--color--red) 70%, var(--wp--preset--color--red-dark) 100%);
}
.hca-header .wp-block-navigation {
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-weight: 600;
}
.hca-header .wp-block-navigation a:hover,
.hca-header .wp-block-navigation .current-menu-item > a {
	color: #fff;
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--red);
	text-decoration-thickness: 3px;
	text-underline-offset: 8px;
}
.hca-header .wp-block-loginout a {
	color: #fff;
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: 4px;
	padding: 0.35em 0.8em;
	font-size: var(--wp--preset--font-size--small);
	white-space: nowrap;
}
.hca-header .wp-block-loginout a:hover {
	border-color: #fff;
}
.hca-header .wp-block-search__button {
	background: transparent;
	color: #fff;
}
.hca-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--ink);
	color: #fff;
}

/* ---------- Home hero: rink markings ---------- */
.hca-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}
.hca-hero::before {
	/* centre red line, two blue lines, centre face-off circle */
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	opacity: 0.22;
	background:
		radial-gradient(circle at 78% 50%, transparent 0 120px, var(--wp--preset--color--blue) 121px 126px, transparent 127px),
		linear-gradient(90deg, transparent calc(78% - 4px), var(--wp--preset--color--red) calc(78% - 4px) calc(78% + 4px), transparent calc(78% + 4px)),
		linear-gradient(90deg, transparent calc(56% - 8px), var(--wp--preset--color--blue) calc(56% - 8px) calc(56% + 8px), transparent calc(56% + 8px)),
		linear-gradient(90deg, transparent calc(100% - 8px), var(--wp--preset--color--blue) calc(100% - 8px));
}
.hca-hero .hca-stat strong {
	display: block;
	font-size: var(--wp--preset--font-size--x-large);
	line-height: 1.1;
	color: #fff;
}
.hca-eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-weight: 700;
}
@media (max-width: 781px) {
	.hca-hero::before {
		opacity: 0.12;
	}
}

/* ---------- Sidebar ---------- */
.hca-sidebar > * + * {
	margin-top: var(--wp--preset--spacing--40);
}
.hca-sidebar .wp-block-search__inside-wrapper {
	width: 100%;
}
.hca-sidebar .wp-block-search__input {
	flex: 1 1 auto;
	min-width: 0;
	border-radius: 4px;
	border-color: var(--wp--preset--color--line);
	padding: 0.6em 0.8em;
}
.hca-sidebar .wp-block-search__button {
	border-radius: 4px;
	margin-left: 0.4em;
}
.hca-box {
	border: 1px solid var(--wp--preset--color--line);
	border-top: 4px solid var(--wp--preset--color--red);
	border-radius: 4px;
	padding: var(--wp--preset--spacing--30);
	background: #fff;
}
.hca-box h2 {
	margin-top: 0;
}
.hca-box img {
	max-width: 100%;
	height: auto;
}
.hca-ad-placeholder {
	display: grid;
	place-items: center;
	min-height: 250px;
	border: 1px dashed var(--wp--preset--color--line);
	color: var(--wp--preset--color--steel);
	font-size: var(--wp--preset--font-size--small);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	background: var(--wp--preset--color--ice);
}

/* ---------- Cards and lists ---------- */
.hca-card {
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 4px;
	background: #fff;
	height: 100%;
}
.hca-albums__item {
	background: #fff;
	border-top: 4px solid var(--wp--preset--color--red) !important;
}
.hca-recent-topics {
	list-style: none;
	margin: 0;
	padding: 0;
}
.hca-recent-topics li {
	padding: 0.7em 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.hca-recent-topics a {
	font-weight: 600;
	text-decoration: none;
}
.hca-recent-topics a:hover {
	text-decoration: underline;
}
.hca-recent-topics .hca-meta {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--steel);
}

/* Book list: titles at card size, not page-heading size */
.hca-book__title {
	font-size: var(--wp--preset--font-size--large);
	margin-bottom: 0.3em;
}
.hca-book__title a {
	text-decoration: none;
}
.hca-book p {
	margin-top: 0;
}

/* ---------- bbPress ---------- */
#bbpress-forums {
	font-size: 1rem;
}
#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-footer {
	background: var(--wp--preset--color--ink);
	color: #fff;
	border-color: var(--wp--preset--color--ink);
}
#bbpress-forums li.bbp-header a {
	color: #fff;
}
#bbpress-forums .bbp-pagination-links span.current {
	background: var(--wp--preset--color--red);
	color: #fff;
	border-color: var(--wp--preset--color--red);
}
#bbpress-forums div.bbp-reply-header,
#bbpress-forums div.bbp-topic-header {
	background: var(--wp--preset--color--ice);
}
#bbpress-forums .bbp-author-role {
	color: var(--wp--preset--color--red-dark);
	font-weight: 600;
}
#bbpress-forums div.bbp-reply-content iframe,
#bbpress-forums div.bbp-topic-content iframe {
	max-width: 100%;
}

/* ---------- Footer ---------- */
.hca-footer a {
	color: #fff;
	text-decoration: none;
}
.hca-footer a:hover {
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--red);
}
.hca-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.hca-footer li + li {
	margin-top: 0.4em;
}
