/* Modern Blog Theme - Basic Styles */
/* This file contains the essential styles that are loaded first */

/* Critical CSS Variables */
:root {
    --modernblog--color--primary: #2563eb;
    --modernblog--color--primary-contrast: #ffffff;
    --modernblog--color--base: #ffffff;
    --modernblog--color--contrast: rgba(15, 23, 42, 0.9);
    --modernblog--color--border: rgba(226, 232, 240, 0.8);
    --modernblog--font--family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --modernblog--size--header: 4.5rem;
    --modernblog--space--md: 1rem;
    --modernblog--space--lg: 1.5rem;
    --modernblog--radius--md: 0.5rem;
    --modernblog--shadow--md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Critical Layout Styles */
*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-family: var(--modernblog--font--family);
    line-height: 1.5;
}

body {
    margin: 0;
    padding: 0;
    background: var(--modernblog--color--base);
    color: var(--modernblog--color--contrast);
    font-size: 1rem;
}

.site {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--modernblog--color--border);
}

.site-header__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: var(--modernblog--size--header);
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--modernblog--space--lg);
}

.site-header__logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--modernblog--color--contrast);
    font-weight: 700;
    font-size: 1.25rem;
    gap: var(--modernblog--space--md);
}

.site-header__logo-image {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.site-main {
    flex: 1;
    padding: 2rem 0;
}

/* Basic responsive behavior */
@media (max-width: 768px) {
    .site-header__container {
        padding: 0 var(--modernblog--space--md);
    }
}
