/* Responsive Design */
@media (max-width: 1024px) {
    .search-box input {
        width: 160px;
    }
    .search-box input:focus {
        width: 200px;
    }
}

@media (max-width: 768px) {
    .menu-toggle {
        display: block;
    }

    .sidebar {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        box-shadow: 4px 0 12px rgba(0,0,0,0.1);
    }

    .sidebar.open {
        transform: translateX(0);
    }

    .main-content {
        margin-left: 0;
        padding: 24px 16px;
    }

    .doc-header h1 {
        font-size: 2rem;
    }

    .search-box {
        display: none; /* Hide search on mobile to save space, can be added to a menu */
    }

    .meta-info {
        flex-direction: column;
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .header {
        padding: 0 16px;
    }
    
    .logo span {
        display: none;
    }
}