/*
Theme Name: Trilobite Recovered
Description: A maintainable restoration of the 2005 Trilobite presentation.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Author: Floating Eye Software
Text Domain: trilobite-recovered
*/

:root { --page-blue: #d8e4f3; --sidebar-grey: #eee; --rule-grey: #c7ced6; --text-grey: #777; --link-blue: #00c; --paper: #fff; }
* { box-sizing: border-box; }
html, body { background: var(--page-blue); }
body { color: #000; font: 16px/1.25 Arial, Helvetica, sans-serif; margin: 0; padding: 2rem 1.25rem; }
a { color: var(--link-blue); }
a:hover, a:focus { text-decoration-thickness: 2px; }
img { height: auto; max-width: 100%; }
.site-shell { background: var(--paper); border: 1px solid #222; display: grid; grid-template-columns: minmax(0, 1fr) 180px; margin: 0 auto; max-width: 1220px; }
.site-header { align-items: flex-start; display: flex; gap: .75rem; grid-column: 1; min-height: 150px; padding: .75rem 1rem 1rem; }
.site-logo { flex: 0 0 80px; width: 80px; }
.site-branding { padding-top: .1rem; }
.site-title { font-size: clamp(2rem, 4vw, 3rem); font-weight: 400; line-height: 1; margin: 0; }
.site-title a { color: #000; text-decoration: none; }
.site-description { font-size: clamp(1.15rem, 2.5vw, 1.7rem); margin: 1rem 0 0; }
.site-main { grid-column: 1; min-width: 0; padding: 0 1rem 1.5rem; }
.date-heading, .archive-title, .comments-title { border-bottom: 1px solid var(--rule-grey); color: var(--text-grey); font-size: 1.15rem; line-height: 1.2; margin: 1.4rem 0 1rem; max-width: 300px; padding-bottom: .1rem; }
.post { margin: 0 0 1.7rem; }
.entry-title { font-size: 1rem; font-weight: 400; margin: 0 0 .5rem; }
.entry-title a { color: #000; text-decoration: none; }
.entry-content > :first-child { margin-top: 0; }
.entry-content > :last-child { margin-bottom: 0; }
.entry-content p { margin: 0 0 1rem; }
.entry-meta { color: var(--text-grey); font-size: .65rem; margin-top: .2rem; }
.entry-meta a { text-decoration: none; }
.sidebar { background: var(--sidebar-grey); border-left: 1px solid #222; font-size: .75rem; grid-column: 2; grid-row: 1 / span 3; line-height: 1.2; padding: 1.5rem .6rem; }
.sidebar p { margin: 0 0 2rem; }
.sidebar h2 { font-size: .75rem; margin: 2rem 0 0; }
.sidebar ul { list-style: none; margin: 0; padding: 0; }
.sidebar a { text-decoration: none; }
.site-footer { border-top: 1px solid var(--rule-grey); font-size: .7rem; grid-column: 1; padding: .5rem 1rem; }
.navigation.pagination, .post-navigation { margin: 2rem 0; }
.comment-list { padding-left: 1.5rem; }
.comment-body { margin-bottom: 1.5rem; }
label { display: block; }
input[type="text"], input[type="email"], input[type="url"], textarea { max-width: 100%; width: 36rem; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; width: 1px; }

@media (max-width: 700px) {
	body { padding: 0; }
	.site-shell { border-left: 0; border-right: 0; display: block; }
	.site-header { min-height: 135px; }
	.sidebar { border-left: 0; border-top: 1px solid #222; padding: 1rem; }
	.sidebar p { margin-bottom: 1rem; }
	.sidebar h2 { margin-top: 1rem; }
}
