/*
Theme Name:  BTR Child
Theme URI:   https://bookstoread.org
Description: GeneratePress child theme for bookstoread.org — templates for people, books, and recommendations.
Author:      bookstoread.org
Template:    generatepress
Version:     1.13.0
Text Domain: btr-child
*/

/* ---------- Dark header / navigation bar ---------- */

.site-header {
	background-color: #0c0c0e;
}

/* Header logo: black-on-white artwork inverted to read on the dark bar.
   mix-blend-mode drops the (inverted) black background into the header. */
.site-header .site-logo img,
.site-header .header-image {
	max-height: 56px;
	width: auto;
	filter: invert(1) grayscale(1);
	mix-blend-mode: screen;
}

.site-header .main-title {
	display: none;
}

.site-header .main-title a,
.site-header .site-description {
	color: #ffffff;
}

.main-navigation {
	background-color: #0c0c0e;
	border-top: 1px solid #1c1c20;
}

.main-navigation .main-nav ul li a {
	color: #d8d8dc;
	font-weight: 500;
}

.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li[class*="current-menu-"] a {
	color: #ffffff;
}

.main-navigation .menu-toggle,
.main-navigation .menu-bar-items .menu-bar-item > a {
	color: #d8d8dc;
}

.main-navigation .menu-toggle:hover,
.main-navigation .menu-bar-items .menu-bar-item > a:hover {
	color: #ffffff;
}

.main-navigation ul ul {
	background-color: #17171a;
}

.navigation-search input[type="search"] {
	background-color: #1a1a1e;
	color: #fff;
	border: 1px solid #333;
	border-radius: 8px;
}

/* ---------- Directory grids (archives + taxonomies) ---------- */

.btr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 1.75rem 1.25rem;
	margin: 2rem 0;
}

.btr-grid .btr-card__image img {
	max-width: 150px;
	margin: 0 auto;
}

.btr-card {
	text-align: center;
}

.btr-card a {
	text-decoration: none;
	color: inherit;
}

.btr-card__image img {
	width: 100%;
	height: auto;
	border-radius: 8px;
	object-fit: cover;
}

.btr-card--person .btr-card__image img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

/* Book covers: uniform 2:3 ratio regardless of source image size. */
.btr-card--book .btr-card__image img {
	aspect-ratio: 2 / 3;
	object-fit: cover;
}

.btr-card__title {
	margin: 0.75rem 0 0.25rem;
	font-size: 1.05rem;
	font-weight: 600;
}

.btr-card__meta {
	font-size: 0.85rem;
	color: #666;
}

/* ---------- Single person / book headers ---------- */

.btr-profile {
	display: flex;
	gap: 2rem;
	align-items: flex-start;
	margin-bottom: 2.5rem;
	flex-wrap: wrap;
}

.btr-profile__image {
	flex: 0 0 200px;
}

.btr-profile__image img {
	width: 100%;
	height: auto;
	border-radius: 8px;
}

.btr-profile--person .btr-profile__image img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.btr-profile__body {
	flex: 1;
	min-width: 260px;
}

.btr-profile__subtitle {
	font-size: 1.1rem;
	color: #555;
	margin: 0.25rem 0 1rem;
}

.btr-profile__links a {
	margin-right: 0.75rem;
}

/* ---------- Amazon button ---------- */

.btr-buy-button {
	display: inline-block;
	background: #ff9900;
	color: #111;
	font-weight: 600;
	padding: 0.65rem 1.5rem;
	border-radius: 6px;
	text-decoration: none;
	margin: 1rem 0;
}

.btr-buy-button:hover {
	background: #e68a00;
	color: #111;
}

.btr-buy-row {
	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
	align-items: center;
	margin: 1rem 0;
}

.btr-buy-row .btr-buy-button {
	margin: 0;
}

.btr-buy-button--shop {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	background: transparent;
	color: #333;
	border: 1.5px solid #c9ccd1;
}

.btr-buy-button--shop:hover {
	background: transparent;
	border-color: #b56a00;
	color: #111;
}

[data-theme="dark"] .btr-buy-button--shop {
	color: #d6d6da;
	border-color: #3a3a42;
}

[data-theme="dark"] .btr-buy-button--shop:hover {
	border-color: #e68a00;
	color: #ffffff;
}

.btr-disclosure {
	font-size: 0.8rem;
	color: #777;
	margin-top: 2rem;
	border-top: 1px solid #eee;
	padding-top: 1rem;
}

/* ---------- Recommendation list ---------- */

.btr-recs {
	margin-top: 2.5rem;
}

.btr-rec {
	display: flex;
	gap: 1.5rem;
	padding: 1.5rem 0;
	border-top: 1px solid #eee;
	align-items: flex-start;
}

.btr-rec__image {
	flex: 0 0 90px;
}

.btr-rec__image img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	aspect-ratio: 2 / 3;
	object-fit: cover;
}

.btr-rec--book-page .btr-rec__image img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.btr-rec__title {
	margin: 0 0 0.25rem;
	font-size: 1.1rem;
	font-weight: 600;
}

.btr-rec__quote {
	font-style: italic;
	color: #333;
	margin: 0.5rem 0;
	padding-left: 1rem;
	border-left: 3px solid #ddd;
}

.btr-rec__source {
	font-size: 0.85rem;
	color: #666;
}

/* ---------- Person profile layout (v1.1.0) ---------- */

.btr-topbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
	margin-bottom: 2rem;
}

.btr-breadcrumb {
	font-size: 0.85rem;
	color: #666;
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.btr-breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.btr-breadcrumb a:hover {
	text-decoration: underline;
}

.btr-share {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.btr-share__label {
	font-size: 0.85rem;
	color: #666;
}

.btr-icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #f2f3f5;
	color: #333;
	border: none;
	cursor: pointer;
	transition: background 0.15s ease;
}

.btr-icon-btn:hover {
	background: #e2e4e8;
	color: #111;
}

.btr-icon-btn--lg {
	width: 48px;
	height: 48px;
}

.btr-copy.is-copied {
	background: #d3f2d9;
}

.btr-hero {
	display: flex;
	gap: 2.5rem;
	align-items: flex-start;
	margin-bottom: 3rem;
	flex-wrap: wrap;
}

.btr-hero__avatar {
	flex: 0 0 180px;
}

.btr-hero__avatar img,
.btr-hero__initials {
	width: 180px;
	height: 180px;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid #eee;
}

.btr-hero__initials {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #e8eaf0;
	color: #556;
	font-size: 3rem;
	font-weight: 700;
}

.btr-hero__body {
	flex: 1;
	min-width: 280px;
}

.btr-hero__title {
	font-size: 2.4rem;
	font-weight: 800;
	line-height: 1.15;
	margin: 0 0 1rem;
}

.btr-hero__lede {
	font-size: 1.05rem;
	color: #444;
}

.btr-hero__wiki a {
	font-size: 0.9rem;
	color: #666;
}

.btr-online {
	margin: 1.5rem 0 0.5rem;
}

.btr-online__label {
	display: block;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #888;
	margin-bottom: 0.6rem;
}

.btr-online__icons {
	display: flex;
	gap: 0.6rem;
	flex-wrap: wrap;
}

.btr-recs__head h2 {
	margin-bottom: 0.5rem;
}

.btr-recs__meta {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
	font-size: 0.82rem;
	color: #777;
	border-bottom: 1px solid #eee;
	padding-bottom: 1rem;
}

.btr-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
	gap: 1.5rem;
	margin-top: 1.5rem;
}

.btr-book-card {
	display: flex;
	gap: 1.25rem;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 1.5rem;
	align-items: flex-start;
}

.btr-book-card__cover {
	flex: 0 0 110px;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.btr-book-card__cover img {
	width: 110px;
	aspect-ratio: 2 / 3;
	object-fit: cover;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.btr-book-card__body {
	flex: 1;
	min-width: 0;
}

.btr-book-card__title {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 0 0 0.2rem;
}

.btr-book-card__title a {
	color: inherit;
	text-decoration: none;
}

.btr-book-card__title a:hover {
	text-decoration: underline;
}

.btr-book-card__subtitle {
	font-size: 0.9rem;
	color: #555;
	margin: 0 0 0.2rem;
}

.btr-book-card__author {
	font-size: 0.85rem;
	color: #777;
	margin: 0 0 0.75rem;
}

.btr-book-card__quote {
	font-size: 0.92rem;
	font-style: italic;
	color: #333;
	border-left: 3px solid #ddd;
	margin: 0;
	padding-left: 0.9rem;
}

.btr-book-card__quote footer {
	font-style: normal;
	font-size: 0.85rem;
	color: #666;
	margin-top: 0.4rem;
}

.btr-buy-button--card {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	font-size: 0.82rem;
	padding: 0.5rem 0.75rem;
	margin: 0;
	white-space: nowrap;
}

@media (max-width: 480px) {
	.btr-book-card {
		flex-direction: column;
	}
	.btr-hero__title {
		font-size: 1.8rem;
	}
}

/* ---------- Editorial person page (v1.5.0) ---------- */

:root {
	--btr-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
}

.btr-serif,
.btr-pheader__name,
.btr-bookrow__title,
.btr-prow__name,
.btr-shelf__title {
	font-family: var(--btr-serif);
}

.btr-share--text {
	font-size: 0.85rem;
}

.btr-share--text a,
.btr-share--text .btr-copy {
	color: #777;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	margin-left: 1rem;
	font-size: inherit;
	text-decoration: none;
}

.btr-share--text a:hover,
.btr-share--text .btr-copy:hover {
	color: #111;
	text-decoration: underline;
}

.btr-eyebrow {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #b56a00;
	margin: 0 0 0.3rem;
}

.btr-pheader {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
	padding-bottom: 2rem;
	border-bottom: 2px solid currentColor;
	margin-bottom: 0.75rem;
}

.btr-pheader__photo img,
.btr-pheader__initials {
	width: 96px;
	height: 96px;
	border-radius: 14px;
	object-fit: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btr-pheader__initials {
	background: #e8eaf0;
	color: #556;
	font-size: 1.9rem;
	font-weight: 700;
}

.btr-pheader__name {
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.1;
	margin: 0 0 0.3rem;
}

.btr-pheader__role {
	color: #666;
	font-size: 0.95rem;
	margin: 0 0 0.8rem;
}

.btr-pheader__bio {
	max-width: 62ch;
	font-size: 0.95rem;
}

.btr-pheader__bio p:last-child {
	margin-bottom: 0;
}

.btr-linkrow {
	margin-top: 0.9rem;
	font-size: 0.85rem;
	color: #999;
	display: flex;
	gap: 1.1rem;
	flex-wrap: wrap;
}

.btr-linkrow a {
	color: #b56a00;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.btr-linkrow a svg {
	width: 15px;
	height: 15px;
}

.btr-linkrow a:hover {
	text-decoration: underline;
}

.btr-authored-note {
	margin-top: 0.9rem;
	font-size: 0.9rem;
}

.btr-authored-note a {
	color: #b56a00;
	font-weight: 600;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.btr-authored-note a svg {
	width: 15px;
	height: 15px;
}

.btr-authored-note a:hover {
	text-decoration: underline;
}

.btr-authored {
	margin-top: 3rem;
}

.btr-authored h2 {
	font-size: 1.5rem;
	margin-bottom: 1rem;
}

.btr-icon-btn--sm {
	width: 32px;
	height: 32px;
}

.btr-icon-btn--sm svg {
	width: 15px;
	height: 15px;
}

.btr-listmeta {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0.5rem;
	font-size: 0.8rem;
	color: #999;
	margin-bottom: 1.5rem;
}

.btr-bookrow {
	display: grid;
	grid-template-columns: 2.4rem 72px 1fr auto;
	gap: 1.25rem;
	padding: 1.5rem 0;
	border-bottom: 1px solid #e6e2d8;
	align-items: start;
}

.btr-bookrow__no {
	font-family: var(--btr-serif);
	font-size: 0.95rem;
	color: #aaa;
	font-variant-numeric: tabular-nums;
	padding-top: 0.25rem;
}

.btr-bookrow__cover img {
	width: 72px;
	height: 108px;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}

.btr-bookrow__title {
	font-size: 1.2rem;
	font-weight: 600;
	margin: 0 0 0.15rem;
}

.btr-bookrow__title a {
	color: inherit;
	text-decoration: none;
}

.btr-bookrow__title a:hover {
	color: #b56a00;
}

.btr-bookrow__sub {
	color: #666;
	font-size: 0.87rem;
	margin: 0 0 0.15rem;
}

.btr-bookrow__by {
	color: #999;
	font-size: 0.82rem;
	margin: 0;
}

.btr-bookrow__quote {
	margin: 0.8rem 0 0;
	padding-left: 1rem;
	border-left: 2px solid #b56a00;
	font-size: 0.9rem;
	font-style: italic;
	color: #555;
	max-width: 55ch;
}

.btr-bookrow__cite {
	font-style: normal;
	font-size: 0.8rem;
	color: #999;
	display: block;
	margin-top: 0.3rem;
}

.btr-bookrow__cite a {
	color: #b56a00;
	text-decoration: none;
}

.btr-bookrow__links {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	align-self: start;
	margin-top: 0.25rem;
}

.btr-amz {
	font-size: 0.8rem;
	font-weight: 600;
	color: #b56a00;
	border: 1px solid #b56a00;
	border-radius: 6px;
	padding: 0.35rem 0.7rem;
	text-decoration: none;
	white-space: nowrap;
	text-align: center;
	transition: all 0.15s ease;
}

.btr-amz:hover {
	background: #b56a00;
	color: #fff;
}

@media (max-width: 560px) {
	.btr-bookrow {
		grid-template-columns: 2rem 60px 1fr;
	}
	.btr-bookrow .btr-bookrow__links {
		grid-column: 3;
		justify-self: start;
		flex-direction: row;
	}
	.btr-pheader {
		flex-direction: column;
	}
}

/* ---------- Books archive shelf ---------- */

.btr-shelf {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 1.75rem 1.25rem;
	margin: 2rem 0;
}

.btr-shelf__item {
	text-decoration: none;
	color: inherit;
	display: block;
}

.btr-shelf__cover {
	display: block;
}

.btr-shelf__cover img {
	width: 100%;
	max-width: 150px;
	aspect-ratio: 2 / 3;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}

.btr-shelf__cover--empty {
	width: 100%;
	max-width: 150px;
	aspect-ratio: 2 / 3;
	border-radius: 4px;
	background: #e8eaf0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem;
	text-align: center;
	font-family: var(--btr-serif);
	font-size: 0.85rem;
	color: #556;
}

.btr-shelf__title {
	display: block;
	font-size: 0.95rem;
	font-weight: 600;
	margin: 0.6rem 0 0.1rem;
}

.btr-shelf__item:hover .btr-shelf__title {
	color: #b56a00;
}

.btr-shelf__author {
	display: block;
	font-size: 0.78rem;
	color: #999;
}

.btr-shelf__count {
	display: block;
	font-size: 0.75rem;
	color: #b56a00;
	margin-top: 0.15rem;
}

/* ---------- Person page: two-column book list ---------- */

.btr-booklist--cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 3rem;
	align-items: start;
}

.btr-booklist--cols .btr-bookrow {
	grid-template-columns: 2rem 60px 1fr;
}

.btr-booklist--cols .btr-bookrow .btr-bookrow__links {
	grid-column: 3;
	justify-self: start;
	flex-direction: row;
}

.btr-booklist--cols .btr-bookrow__cover img {
	width: 60px;
	height: 90px;
}

.btr-booklist--cols .btr-bookrow__title {
	font-size: 1.1rem;
}

@media (max-width: 800px) {
	.btr-booklist--cols {
		grid-template-columns: 1fr;
	}
}

/* ---------- Books archive: view toggle + list mode ---------- */

.btr-books-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.btr-view-toggle {
	display: inline-flex;
	border: 1px solid #d5d7db;
	border-radius: 8px;
	overflow: hidden;
}

.btr-view-toggle button {
	background: none;
	border: none;
	cursor: pointer;
	padding: 0.45rem 0.7rem;
	color: #999;
	display: inline-flex;
	align-items: center;
}

.btr-view-toggle button.is-active {
	background: #b56a00;
	color: #fff;
}

/* Grid (icons) view — row-major flow: left to right, then next row. */
.btr-shelf {
	grid-auto-flow: row;
}

.btr-shelf__text {
	display: block;
}

.btr-shelf__desc {
	display: none;
}

/* List view — two columns, collapsing to one on narrow screens */
.btr-shelf--list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 3rem;
	align-items: start;
	border-top: 1px solid #e6e2d8;
}

@media (max-width: 800px) {
	.btr-shelf--list {
		grid-template-columns: 1fr;
	}
}

.btr-shelf--list .btr-shelf__item {
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: 1.1rem;
	align-items: center;
	padding: 0.9rem 0;
	border-bottom: 1px solid #e6e2d8;
}

.btr-shelf--list .btr-shelf__cover img,
.btr-shelf--list .btr-shelf__cover--empty {
	width: 60px;
	height: 90px;
	max-width: none;
	font-size: 0.6rem;
	padding: 0.3rem;
}

.btr-shelf--list .btr-shelf__title {
	margin-top: 0;
	font-size: 1.05rem;
}

.btr-shelf--list .btr-shelf__desc {
	display: block;
	font-size: 0.85rem;
	color: #777;
	max-width: 70ch;
	margin-top: 0.15rem;
}

/* ---------- People archive: tabs + subtitle ---------- */

.btr-people-sub {
	font-size: 0.9rem;
	color: #777;
	margin: 0.25rem 0 0;
}

.btr-tabs {
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	max-width: 780px;
	margin: 1.5rem auto 0;
	border-bottom: 1px solid #e6e2d8;
}

.btr-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	padding: 0.6rem 1.1rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: #777;
	margin-bottom: -1px;
}

.btr-tab svg {
	width: 16px;
	height: 16px;
}

.btr-tab__count {
	font-weight: 400;
	font-size: 0.8rem;
	color: #999;
}

.btr-tab:hover {
	color: #111;
}

.btr-tab.is-active {
	color: #b56a00;
	border-bottom-color: #b56a00;
}

[data-theme="dark"] .btr-people-sub,
[data-theme="dark"] .btr-tab {
	color: #8f8f96;
}

[data-theme="dark"] .btr-tabs {
	border-color: #26262a;
}

[data-theme="dark"] .btr-tab:hover {
	color: #ffffff;
}

[data-theme="dark"] .btr-tab.is-active {
	color: #e68a00;
	border-bottom-color: #e68a00;
}

/* ---------- People archive rows ---------- */

.btr-people-rows {
	border-top: 1px solid #e6e2d8;
	max-width: 780px;
	margin: 2rem auto;
}

/* Keep the People page header aligned with the centered rows. */
.post-type-archive-person .btr-books-head {
	max-width: 780px;
	margin-left: auto;
	margin-right: auto;
}

.btr-prow {
	display: grid;
	grid-template-columns: 56px 1fr auto;
	gap: 1.1rem;
	align-items: center;
	padding: 0.9rem 0;
	border-bottom: 1px solid #e6e2d8;
	text-decoration: none;
	color: inherit;
}

.btr-prow__photo img,
.btr-prow__initials {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btr-prow__initials {
	background: #e8eaf0;
	color: #556;
	font-size: 1.1rem;
	font-weight: 700;
}

.btr-prow__name {
	display: block;
	font-weight: 600;
	font-size: 1.05rem;
}

.btr-prow:hover .btr-prow__name {
	color: #b56a00;
}

.btr-prow__desc {
	display: block;
	font-size: 0.82rem;
	color: #777;
}

.btr-prow__count {
	font-size: 0.82rem;
	color: #999;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.btr-prow__count b {
	color: #b56a00;
	font-weight: 700;
}

/* People archive — icons (grid) view */
.btr-people-rows--grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
	gap: 2rem 1.25rem;
	border-top: none;
}

.btr-people-rows--grid .btr-prow {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.6rem;
	border-bottom: none;
	padding: 0;
}

.btr-people-rows--grid .btr-prow__photo img,
.btr-people-rows--grid .btr-prow__initials {
	width: 110px;
	height: 110px;
	font-size: 1.9rem;
}

.btr-people-rows--grid .btr-prow__name {
	font-size: 1.1rem;
}

/* ---------- Buttons ---------- */

.btr-btn {
	display: inline-block;
	padding: 0.7rem 1.6rem;
	border-radius: 999px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.15s ease;
}

.btr-btn--solid {
	background: #e68a00;
	color: #111;
}

.btr-btn--solid:hover {
	background: #cc7a00;
	color: #111;
}

.btr-btn--outline {
	border: 1.5px solid currentColor;
	color: inherit;
}

/* ---------- Homepage ---------- */

.btr-home-hero {
	text-align: center;
	padding: 3.5rem 0 3rem;
}

.btr-home-hero__logo {
	width: 210px;
	height: auto;
	margin: 0 auto 1.5rem;
	display: block;
}

.btr-home-hero h1 {
	font-size: 2.6rem;
	font-weight: 800;
	max-width: 780px;
	margin: 0 auto 1.25rem;
	line-height: 1.15;
}

.btr-home-hero__lede {
	max-width: 640px;
	margin: 0 auto 1.75rem;
	font-size: 1.08rem;
	color: #555;
}

.btr-home-hero__cta {
	display: flex;
	gap: 0.9rem;
	justify-content: center;
	flex-wrap: wrap;
}

.btr-home-hero__stats {
	margin-top: 1.75rem;
	font-size: 0.9rem;
	color: #888;
}

/* Discovery ledger — index rows with live counts.
   Block is width-capped and centered so the page keeps its
   symmetric feel; text inside rows stays left-aligned. */
.btr-ledger {
	border-top: 2px solid currentColor;
	max-width: 780px;
	margin: 2.5rem auto 3.5rem;
	text-align: left;
}

.btr-ledger__row {
	display: grid;
	grid-template-columns: auto 1fr auto auto;
	gap: 1.25rem;
	align-items: center;
	padding: 1.1rem 0.25rem;
	border-bottom: 1px solid #e6e2d8;
	text-decoration: none;
	color: inherit;
}

.btr-ledger__icon {
	color: #b56a00;
	display: inline-flex;
}

.btr-ledger__title {
	display: block;
	font-family: var(--btr-serif);
	font-size: 1.25rem;
	font-weight: 600;
}

.btr-ledger__row:hover .btr-ledger__title {
	color: #b56a00;
}

.btr-ledger__blurb {
	display: block;
	font-size: 0.85rem;
	color: #777;
	margin-top: 0.1rem;
}

.btr-ledger__count {
	font-size: 0.85rem;
	color: #999;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.btr-ledger__arrow {
	color: #999;
	font-size: 1.2rem;
}

.btr-ledger__row:hover .btr-ledger__arrow {
	color: #b56a00;
}

@media (max-width: 560px) {
	.btr-ledger__count {
		display: none;
	}
}

.btr-home-section {
	margin: 3.5rem 0;
	text-align: center;
}

.btr-home-section h2 {
	font-size: 1.9rem;
	font-weight: 800;
	margin-bottom: 0.35rem;
}

.btr-home-section__second {
	margin-top: 2.5rem;
}

.btr-home-section__sub {
	color: #777;
	margin-bottom: 2rem;
}

.btr-home-section__more {
	margin-top: 2rem;
}

.btr-people-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1.25rem;
}

.btr-person-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.9rem;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 1.75rem 1.25rem;
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s ease, transform 0.15s ease;
}

.btr-person-card:hover {
	border-color: #e68a00;
	transform: translateY(-2px);
}

.btr-person-card__name {
	font-weight: 700;
	font-size: 1.05rem;
}

.btr-person-card__photo img,
.btr-person-card__initials {
	width: 110px;
	height: 110px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #e68a00;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btr-person-card__initials {
	background: #e8eaf0;
	color: #556;
	font-size: 2rem;
	font-weight: 700;
}

.btr-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	background: #b0245a;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 600;
	padding: 0.3rem 0.75rem;
	border-radius: 999px;
}

.btr-badge svg {
	width: 14px;
	height: 14px;
}

.btr-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	justify-content: center;
	max-width: 820px;
	margin: 0 auto;
}

.btr-pill {
	border: 1px solid #d5d7db;
	border-radius: 999px;
	padding: 0.4rem 1rem;
	font-size: 0.9rem;
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s ease;
}

.btr-pill:hover {
	border-color: #e68a00;
}

.btr-pill span {
	color: #999;
	font-size: 0.8rem;
	margin-left: 0.2rem;
}

/* ---------- Footer columns (always dark, like the header) ---------- */

.btr-footer {
	background: #0c0c0e;
	color: #9a9aa2;
	padding: 3rem 0 2rem;
	margin-top: 3rem;
}

.btr-footer__inner {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 2rem;
}

.btr-footer__logo {
	display: block;
	font-size: 1.25rem;
	font-weight: 800;
	color: #fff;
	margin-bottom: 0.5rem;
}

.btr-footer__brand p {
	font-size: 0.88rem;
}

.btr-footer__col h2 {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6f6f78;
	margin: 0 0 0.9rem;
}

.btr-footer__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.btr-footer__col li {
	margin-bottom: 0.55rem;
}

.btr-footer__col a {
	color: #c5c5cc;
	text-decoration: none;
	font-size: 0.92rem;
}

.btr-footer__col a:hover {
	color: #ffffff;
}

.site-footer,
.site-info {
	background-color: #0c0c0e;
	color: #8f8f96;
}

.site-info a {
	color: #c5c5cc;
}

@media (max-width: 700px) {
	.btr-footer__inner {
		grid-template-columns: 1fr 1fr;
	}
	.btr-footer__brand {
		grid-column: 1 / -1;
	}
	.btr-home-hero h1 {
		font-size: 1.9rem;
	}
}

/* ---------- Text pages: modest section headers ----------
   Privacy Policy (3), Terms of Use (3212), About (59), Contact (60):
   headers sit one step above body text, not display-sized. */

.page-id-3 .entry-content h2,
.page-id-3212 .entry-content h2,
.page-id-59 .entry-content h2,
.page-id-60 .entry-content h2 {
	font-size: 1.2em;
	font-weight: 700;
	margin-top: 2rem;
	margin-bottom: 0.5rem;
}

/* ---------- Dark mode toggle button ---------- */

.btr-theme-toggle {
	background: none;
	border: none;
	cursor: pointer;
	padding: 0 14px;
	color: #d8d8dc;
	display: inline-flex;
	align-items: center;
	align-self: stretch;
}

.btr-theme-toggle:hover {
	color: #ffffff;
}

.btr-theme-toggle__sun {
	display: none;
}

[data-theme="dark"] .btr-theme-toggle__sun {
	display: inline-flex;
}

[data-theme="dark"] .btr-theme-toggle__moon {
	display: none;
}

/* ---------- Dark theme ---------- */

[data-theme="dark"] body {
	background-color: #0e0e10;
	color: #d6d6da;
}

/* GeneratePress paints its content containers white independently of
   the body — flatten them so the dark body shows through. */
[data-theme="dark"] .site-content,
[data-theme="dark"] .content-area,
[data-theme="dark"] .site-main,
[data-theme="dark"] .inside-article,
[data-theme="dark"] .separate-containers .inside-article,
[data-theme="dark"] .separate-containers .comments-area,
[data-theme="dark"] .separate-containers .page-header,
[data-theme="dark"] .separate-containers .paging-navigation,
[data-theme="dark"] .one-container .container,
[data-theme="dark"] .inside-page-header {
	background-color: transparent;
}

[data-theme="dark"] .wp-block-button__link {
	background-color: #2b2b31;
	color: #ffffff;
}

[data-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border-color: #d6d6da;
	color: #d6d6da;
}

[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] .entry-title,
[data-theme="dark"] .entry-title a,
[data-theme="dark"] .btr-book-card__title a,
[data-theme="dark"] .btr-card__title,
[data-theme="dark"] .btr-rec__title a {
	color: #f2f2f4;
}

[data-theme="dark"] .entry-content a:not(.btr-buy-button):not(.wp-block-button__link),
[data-theme="dark"] .btr-hero__wiki a,
[data-theme="dark"] .btr-book-card__quote footer a,
[data-theme="dark"] .btr-rec__source a {
	color: #9db9f0;
}

[data-theme="dark"] .btr-book-card {
	background-color: #141418;
	border-color: #26262a;
}

[data-theme="dark"] .btr-icon-btn {
	background-color: #1e1e22;
	color: #cfcfd4;
}

[data-theme="dark"] .btr-icon-btn:hover {
	background-color: #2b2b31;
	color: #ffffff;
}

[data-theme="dark"] .btr-copy.is-copied {
	background-color: #1e3a26;
}

[data-theme="dark"] .btr-breadcrumb,
[data-theme="dark"] .btr-share__label,
[data-theme="dark"] .btr-online__label,
[data-theme="dark"] .btr-card__meta,
[data-theme="dark"] .btr-book-card__author,
[data-theme="dark"] .btr-rec__source,
[data-theme="dark"] .btr-recs__meta,
[data-theme="dark"] .btr-disclosure {
	color: #8f8f96;
}

[data-theme="dark"] .btr-hero__lede,
[data-theme="dark"] .btr-book-card__subtitle,
[data-theme="dark"] .btr-profile__subtitle {
	color: #b8b8c0;
}

[data-theme="dark"] .btr-hero__avatar img,
[data-theme="dark"] .btr-hero__initials {
	border-color: #26262a;
}

[data-theme="dark"] .btr-hero__initials {
	background-color: #232329;
	color: #a8a8b4;
}

[data-theme="dark"] .btr-book-card__quote,
[data-theme="dark"] .btr-rec__quote {
	color: #c8c8ce;
	border-left-color: #3a3a42;
}

[data-theme="dark"] .btr-book-card__quote footer {
	color: #8f8f96;
}

[data-theme="dark"] .btr-rec,
[data-theme="dark"] .btr-recs__meta,
[data-theme="dark"] .btr-disclosure {
	border-color: #26262a;
}

[data-theme="dark"] .site-footer,
[data-theme="dark"] .site-info {
	background-color: #0c0c0e;
	color: #8f8f96;
}

[data-theme="dark"] .btr-buy-button {
	color: #111;
}

[data-theme="dark"] .btr-home-hero__lede {
	color: #b8b8c0;
}

[data-theme="dark"] .btr-home-hero__stats,
[data-theme="dark"] .btr-home-section__sub,
[data-theme="dark"] .btr-ledger__blurb,
[data-theme="dark"] .btr-ledger__count,
[data-theme="dark"] .btr-ledger__arrow {
	color: #8f8f96;
}

[data-theme="dark"] .btr-ledger__row {
	border-color: #26262a;
}

[data-theme="dark"] .btr-ledger__icon,
[data-theme="dark"] .btr-ledger__row:hover .btr-ledger__title,
[data-theme="dark"] .btr-ledger__row:hover .btr-ledger__arrow {
	color: #e68a00;
}

[data-theme="dark"] .btr-person-card {
	background-color: #141418;
	border-color: #26262a;
}

[data-theme="dark"] .btr-person-card:hover,
[data-theme="dark"] .btr-pill:hover {
	border-color: #e68a00;
}

[data-theme="dark"] .btr-person-card__initials {
	background: #232329;
	color: #a8a8b4;
}

[data-theme="dark"] .btr-pill {
	border-color: #33333a;
	color: #c5c5cc;
}

[data-theme="dark"] .btr-btn--solid {
	color: #111;
}

/* Editorial person page — dark */

[data-theme="dark"] .btr-eyebrow,
[data-theme="dark"] .btr-linkrow a,
[data-theme="dark"] .btr-bookrow__cite a,
[data-theme="dark"] .btr-shelf__count,
[data-theme="dark"] .btr-prow__count b {
	color: #e68a00;
}

[data-theme="dark"] .btr-bookrow__quote {
	border-left-color: #e68a00;
	color: #b8b8c0;
}

[data-theme="dark"] .btr-amz {
	color: #e68a00;
	border-color: #e68a00;
}

[data-theme="dark"] .btr-amz:hover {
	background: #e68a00;
	color: #111;
}

[data-theme="dark"] .btr-bookrow,
[data-theme="dark"] .btr-people-rows,
[data-theme="dark"] .btr-prow {
	border-color: #26262a;
}

[data-theme="dark"] .btr-pheader__role,
[data-theme="dark"] .btr-bookrow__sub {
	color: #b8b8c0;
}

[data-theme="dark"] .btr-bookrow__no,
[data-theme="dark"] .btr-bookrow__by,
[data-theme="dark"] .btr-bookrow__cite,
[data-theme="dark"] .btr-linkrow,
[data-theme="dark"] .btr-listmeta,
[data-theme="dark"] .btr-shelf__author,
[data-theme="dark"] .btr-prow__desc,
[data-theme="dark"] .btr-prow__count {
	color: #8f8f96;
}

[data-theme="dark"] .btr-pheader__initials,
[data-theme="dark"] .btr-prow__initials,
[data-theme="dark"] .btr-shelf__cover--empty {
	background: #232329;
	color: #a8a8b4;
}

[data-theme="dark"] .btr-bookrow__title a:hover,
[data-theme="dark"] .btr-shelf__item:hover .btr-shelf__title,
[data-theme="dark"] .btr-prow:hover .btr-prow__name {
	color: #e68a00;
}

[data-theme="dark"] .btr-share--text a,
[data-theme="dark"] .btr-share--text .btr-copy {
	color: #8f8f96;
}

[data-theme="dark"] .btr-share--text a:hover,
[data-theme="dark"] .btr-share--text .btr-copy:hover {
	color: #ffffff;
}

[data-theme="dark"] .btr-authored-note a {
	color: #e68a00;
}

/* Logo is black-on-white artwork — invert it for the dark ground. */
[data-theme="dark"] .btr-home-hero__logo {
	filter: invert(1) grayscale(1);
	mix-blend-mode: screen;
}

[data-theme="dark"] .btr-view-toggle {
	border-color: #33333a;
}

[data-theme="dark"] .btr-view-toggle button {
	color: #8f8f96;
}

[data-theme="dark"] .btr-view-toggle button.is-active {
	background: #e68a00;
	color: #111;
}

[data-theme="dark"] .btr-shelf--list,
[data-theme="dark"] .btr-shelf--list .btr-shelf__item {
	border-color: #26262a;
}

[data-theme="dark"] .btr-shelf--list .btr-shelf__desc {
	color: #8f8f96;
}
