/** * Global Styles - Scaffold Theme * * Minimal styles for demonstration. Replace with your theme's design tokens. */ /* Reset */ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } /* Variables - replace with your theme's tokens */ :root { --color-text: #1a1a1a; --color-text-muted: #666; --color-bg: #fff; --color-border: #e5e5e5; --color-accent: #0066cc; --font-body: system-ui, -apple-system, sans-serif; --font-mono: ui-monospace, monospace; --space-sm: 0.5rem; --space-md: 1rem; --space-lg: 2rem; --space-xl: 4rem; --content-width: 40rem; --container-width: 60rem; } /* Base */ html { font-family: var(--font-body); font-size: 16px; line-height: 1.6; color: var(--color-text); background: var(--color-bg); } body { min-height: 100vh; display: flex; flex-direction: column; } main { flex: 1; padding: var(--space-xl) var(--space-md); } /* Layout */ .container { max-width: var(--container-width); margin: 0 auto; padding: 0 var(--space-md); } .content-width { max-width: var(--content-width); } /* Header */ .site-header { padding: var(--space-md) 0; border-bottom: 1px solid var(--color-border); } .site-header .container { display: flex; align-items: center; justify-content: space-between; gap: var(--space-md); } .site-title { font-size: 1.25rem; font-weight: 600; text-decoration: none; color: inherit; } .site-nav { display: flex; gap: var(--space-md); } .site-nav a { color: var(--color-text-muted); text-decoration: none; } .site-nav a:hover { color: var(--color-text); } /* Footer */ .site-footer { padding: var(--space-lg) 0; border-top: 1px solid var(--color-border); color: var(--color-text-muted); font-size: 0.875rem; } .footer-nav { display: flex; gap: var(--space-md); margin-bottom: var(--space-sm); } .footer-nav a { color: inherit; } /* Typography */ h1, h2, h3, h4, h5, h6 { line-height: 1.3; margin-bottom: var(--space-sm); } h1 { font-size: 2rem; } h2 { font-size: 1.5rem; } h3 { font-size: 1.25rem; } p { margin-bottom: var(--space-md); } a { color: var(--color-accent); } code { font-family: var(--font-mono); font-size: 0.9em; background: var(--color-border); padding: 0.1em 0.3em; border-radius: 3px; } /* Images */ img { max-width: 100%; height: auto; display: block; } /* Post Card */ .post-card { margin-bottom: var(--space-lg); padding-bottom: var(--space-lg); border-bottom: 1px solid var(--color-border); } .post-card:last-child { border-bottom: none; } .post-card-image { margin-bottom: var(--space-md); } .post-card-image img { border-radius: 4px; } .post-card-title { font-size: 1.25rem; margin-bottom: var(--space-sm); } .post-card-title a { color: inherit; text-decoration: none; } .post-card-title a:hover { color: var(--color-accent); } .post-card-meta { font-size: 0.875rem; color: var(--color-text-muted); margin-bottom: var(--space-sm); } .post-card-excerpt { color: var(--color-text-muted); } /* Single Post/Page */ .post-header, .page-header { margin-bottom: var(--space-lg); } .post-meta { font-size: 0.875rem; color: var(--color-text-muted); display: flex; gap: var(--space-md); flex-wrap: wrap; } .post-featured-image { margin-bottom: var(--space-lg); } .post-featured-image img { border-radius: 4px; } /* Taxonomy terms */ .post-categories a, .post-tags a { color: var(--color-text-muted); } .post-tags { margin-top: var(--space-lg); display: flex; gap: var(--space-sm); flex-wrap: wrap; } .tag { font-size: 0.875rem; padding: var(--space-sm) var(--space-md); background: var(--color-border); border-radius: 4px; text-decoration: none; color: var(--color-text-muted); } .tag:hover { background: var(--color-text); color: var(--color-bg); } /* Prose (PortableText content) */ .prose > * + * { margin-top: var(--space-md); } .prose h2, .prose h3, .prose h4 { margin-top: var(--space-lg); } /* Archive header */ .archive-header { margin-bottom: var(--space-lg); } /* Utility */ .text-muted { color: var(--color-text-muted); }