/* layout.css — Page layout, header, main content */

.site-header {
    background-color: var(--color-surface);
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
}

.nav-bar {
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--space-md) var(--space-lg);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nav-logo {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-text);
}

.nav-logo:hover {
    text-decoration: none;
    color: var(--color-accent);
}

.nav-links {
    display: flex;
    align-items: center;
    gap: var(--space-md);
}

.nav-links a {
    color: var(--color-text-muted);
    font-size: 0.9rem;
    font-weight: 500;
}

.nav-links a:hover {
    color: var(--color-accent);
    text-decoration: none;
}

.main-content {
    flex: 1;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: var(--space-lg);
}

/* Standard page heading (sessions, uploads, admin, ...) */
.page-title {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

/* Search home layout */
.search-home {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: var(--space-xl) var(--space-md);
}

.search-container {
    width: 100%;
    max-width: 640px;
    text-align: center;
}

.search-heading {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: var(--space-sm);
}

.search-subtitle {
    color: var(--color-text-muted);
    font-size: 1.1rem;
    margin-bottom: var(--space-xl);
}

/* Responsive */
@media (max-width: 768px) {
    .nav-bar {
        padding: var(--space-sm) var(--space-md);
    }

    .main-content {
        padding: var(--space-md);
    }

    .search-heading {
        font-size: 2rem;
    }
}
