/* Mobile responsive styles */
@media (max-width: 768px) {
    body {
        padding: 0 1em;
        padding-top: 60px;
    }

    body:has(.reference-container) {
        max-width: 100%;
        padding-left: 1em;
    }

    .logo-container img {
        max-width: 300px;
    }

    .nav-menu {
        padding: 0.8em 1em;
        flex-wrap: wrap;
        gap: 0.8em;
    }

    .nav-menu a {
        font-size: 0.95em;
        padding: 0.4em 0.8em;
    }

    .reference-container {
        flex-direction: column;
        gap: 1em;
    }

    .reference-sidebar {
        position: static;
        width: 100%;
        height: auto;
        max-height: 300px;
        margin-bottom: 1em;
        left: 0;
    }

    .reference-content {
        margin-left: 0;
        padding: 1.5em;
    }

    h1 {
        font-size: 2em;
    }

    h2 {
        font-size: 1.5em;
    }

    h3 {
        font-size: 1.2em;
    }

    pre {
        padding: 0.8em;
        font-size: 0.85em;
        overflow-x: auto;
    }

    code {
        font-size: 0.85em;
    }

    table {
        font-size: 0.9em;
    }

    table th,
    table td {
        padding: 0.6em;
    }

    .blog-entry {
        padding: 1.2em;
    }

    .blog-entry h2 {
        font-size: 1.5em;
    }

    .blog-date {
        font-size: 0.85em;
    }
}