Add Books + editable Recommended Resources sections; improve content block links; v1.1.38

- CustomBlock: add linkUrl/linkLabel fields for a styled button below the body
- Body text auto-linkifies raw URLs into gold anchor tags
- New 'books' placement: Reading List grid on Downloads page (cover, desc, Amazon btn)
- New 'recommended' placement: editable Recommended Resources section on Downloads
  page; falls back to Truth For Life widget when empty
- Admin: Books and Recommended Resources panels added to Content nav

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmert
2026-08-26 08:16:36 -04:00
parent a35e04320a
commit eb1d3ddd9c
5 changed files with 348 additions and 5 deletions
+142
View File
@@ -4407,6 +4407,140 @@
padding: 0;
}
.custom-block-inline-link {
color: var(--brand-gold);
text-decoration: underline;
word-break: break-all;
}
.custom-block-link-btn {
display: inline-block;
margin-top: 1.5rem;
}
/* ── Books section ── */
.section-books {
background: #0d0d0d;
border-top: 1px solid rgba(201, 168, 76, 0.12);
padding: 4rem 0;
}
.books-list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 2rem;
margin-top: 2rem;
}
.book-card {
display: flex;
gap: 1.25rem;
background: rgba(255,255,255,0.03);
border: 1px solid rgba(201, 168, 76, 0.1);
border-radius: 8px;
padding: 1.25rem;
}
.book-card-cover {
width: 80px;
height: 110px;
object-fit: cover;
border-radius: 4px;
flex-shrink: 0;
}
.book-card-meta {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.book-card-title {
font-family: var(--brand-font-heading);
font-size: 1rem;
font-weight: 700;
color: var(--brand-warm-white);
line-height: 1.3;
}
.book-card-description {
font-family: var(--brand-font-body);
font-size: 0.875rem;
font-weight: 300;
color: var(--brand-muted);
line-height: 1.6;
margin: 0;
}
.book-card-btn {
align-self: flex-start;
font-size: 0.8rem;
padding: 0.4rem 0.9rem;
}
/* ── Recommended Resources section ── */
.recommended-resources-list {
display: flex;
flex-direction: column;
gap: 1.5rem;
margin-top: 1rem;
max-width: 600px;
margin-left: auto;
margin-right: auto;
}
.recommended-resource-card {
display: flex;
gap: 1.25rem;
align-items: flex-start;
text-decoration: none;
background: rgba(255,255,255,0.03);
border: 1px solid rgba(201, 168, 76, 0.1);
border-radius: 8px;
padding: 1.25rem;
transition: border-color 0.2s;
}
.recommended-resource-card:hover {
border-color: rgba(201, 168, 76, 0.35);
}
.recommended-resource-image {
width: 80px;
height: 80px;
object-fit: cover;
border-radius: 6px;
flex-shrink: 0;
}
.recommended-resource-meta {
display: flex;
flex-direction: column;
gap: 0.4rem;
}
.recommended-resource-title {
font-family: var(--brand-font-heading);
font-size: 1rem;
font-weight: 700;
color: var(--brand-warm-white);
}
.recommended-resource-description {
font-family: var(--brand-font-body);
font-size: 0.875rem;
font-weight: 300;
color: var(--brand-muted);
line-height: 1.6;
margin: 0;
}
.recommended-resource-action {
font-size: 0.85rem;
color: var(--brand-gold);
font-weight: 600;
}
/* ── Study Guide section ── */
.section-guide {
background: #0d0d0d;
@@ -5414,6 +5548,14 @@
opacity: 0.85;
}
.admin-field-optional {
font-weight: 400;
letter-spacing: 0;
text-transform: none;
opacity: 0.6;
font-size: 0.75rem;
}
.admin-field input,
.admin-field textarea {
background: #111;